Особенности использования метода ИспользоватьСписокЭлементов
Прежде всего, заметим, что данный метод не устанавливает условие отбора элементов, а задает форме
списка справочника непосредственно список элементов, которые нужно показывать в форме. Этим
собственно и достигается максимальная гибкость отбора, так как список элементов может быть
сформирован с использованием любых средств 1С:Предприятия. Эта возможность позволяет оптимизировать формирование необходимого списка, выбирая наиболее производительный способ отбора данных. Прежде всего, это позволяет при работе с данными в формате MS SQL Server максимально задействовать возможности SQL-сервера.
Важной особенностью применения метода " ИспользоватьСписокЭлементов" является необходимость формирования списка элементов отвечающих текущим значениям Родителя и Владельца в форме списка справочника. Типичной ошибкой при использовании данного метода является формирование полного списка элементов, удовлетворяющих требуемому условию. В случае если методу "ИспользоватьСписокЭлементов" переданы элементы не соответствующие текущему Владельцу и Родителю, то такие элементы будут отображаться в списке пустой строкой, и будут отмечаться специальной пиктограммой с символом "?". При этом не будет выдаваться сообщение об ошибке. Фактически, появление такой пиктограммы означает, что метод
" ИспользоватьСписокЭлементов" используется не правильно. Такой способ диагностирования ошибки применяется системой в данном случае потому, что проверка переданного списка на корректность в процессе вызова метода потребует фактически обращения к каждому элементу в информационной базе, что существенно замедлит работу данного механизма. Таким образом, после разработки алгоритма модуля формы списка справочника следует проверить его работу на реальных данных и убедиться, что все элементы в списке отображаются правильно.
Другой особенностью применения метода " ИспользоватьСписокЭлементов" является необходимость
формирования списка элементов при изменениях текущих значений Родителя и Владельца. Для этого необходимо
обрабатывать соответсвующие предопределенные процедуры и выполнять формирование списка с учетом новых значений.
При работе с формой списка справочника с установленным списком элементов следует учитывать, что содержимое списка не будет автоматически обновляться при изменении данных справочника. Фактически просмотр списка будет отображать состояние справочника на момент формирования списка. По этой же причине в данном режиме запрещен ввод новых данных. Если возможность динамического обновления необходима, то можно рекомендовать включить в форму кнопку для принудительного обновления списка.
При разработке алгоритма формирования списка следует обеспечить приемлемую производительность его выполнения на реальных данных. При работе с базами данных в формате MS SQL Server целесообразно воспользоваться рекомендациями по оптимизации выполнения запросов в версии 1С:Предприятия для SQL. Если формирование списка с выбранным критерием не удается выполнить с приемлемой производительностью, то целесообразно изменить критерий отбора или отказаться от отбора элементов в справочнике.
Таким образом, метод "ИспользоватьСписокЭлементов" следует рассматривать как весьма специализированный способ представления списка справочника, который с одной стороны предоставляет максимальную гибкость с точки зрения отбора элементов, а с другой стороны требует достаточно аккуратного применения.
<по материалам Информационно-Технологического Сопровождения фирмы 1С>
Информация взята с сайта А.Кайгородова
http://www.sinor.ru/~my1c/knowhow.html