O
Olgir
Здравствуйте, я, можно сказать, новичок в программировании на 1С. Не так давно столкнулся с такой штукой, как КЛАДР. Вобщем, суть такова - я создал форму с полями для ввода адреса (регион, район, город и т.п.). Данные для этой формы берутся с помощью запроса из регистра сведений (который был скопирован из другой конфигурации). Так вот, при выборе города из списка загружается список улиц в соответствующий СписокВыбора текстового поля на форме, и в случае с некоторыми городами (например, Москва), количество улиц весьма велико. В итоге, загрузка списка улиц по Москве занимает 16 секунд, что неприемлимо.
Процесс происходит так: сначала функция возвращает мне с сервера массив структур, в которых содержится все что мне необходимо, включая названия улиц, после этого циклом загружаются названия из массива в СписокВыбора. Выглядит это вот так:
Запрос выполняется очень быстро, но вот цикл с загрузкой данных в список занимает очень много времени.
Я пробовал формировать СписокЗначений на сервере, потом передавать его на клиент, время загрузки осталось прежним, выходит метод ЗагрузитьЗначения так же использует цикл. Убирание СокрЛП из кода тоже не дает никакого результата, значит, дело не в ней.
Как можно оптимизировать загрузку данных в СписокВыбора? Что я делаю не так?
Процесс происходит так: сначала функция возвращает мне с сервера массив структур, в которых содержится все что мне необходимо, включая названия улиц, после этого циклом загружаются названия из массива в СписокВыбора. Выглядит это вот так:
Код:
гМассивУлиц = ВыбратьУлицыНаСервере(КодРегиона,0,0,0);
КоличествоУлиц = гМассивУлиц.Количество();
Для Счетчик=0 По КоличествоУлиц-1 Цикл
Элементы.Улица.СписокВыбора.Добавить(СокрЛП(гМассивУлиц[Счетчик].Наименование+" "+гМассивУлиц[Счетчик].Сокращение));
КонецЦикла;
Запрос выполняется очень быстро, но вот цикл с загрузкой данных в список занимает очень много времени.
Я пробовал формировать СписокЗначений на сервере, потом передавать его на клиент, время загрузки осталось прежним, выходит метод ЗагрузитьЗначения так же использует цикл. Убирание СокрЛП из кода тоже не дает никакого результата, значит, дело не в ней.
Как можно оптимизировать загрузку данных в СписокВыбора? Что я делаю не так?