При разработке собственных обработок в 1С:Предприятие часто возникает задача, когда пользователю необходимо выбрать не один, а сразу несколько документов одного типа для дальнейшей обработки. Стандартный реквизит формы, ссылающийся на документ, позволяет выбрать только одну запись. Давайте разберем, как грамотно реализовать возможность множественного выбора, чтобы сделать интерфейс удобным и интуитивно понятным.
Самым быстрым и эффективным способом реализации множественного выбора является использование на форме элемента управления, связанного с СписокЗначений. Важно помнить, что мы создаем именно реквизит формы, а не реквизит самой обработки, чтобы корректно отобразить данные в интерфейсе.
СписокЗначений.ДокументСсылка.ЗаказПоставщику), необходимо программно или через настройки формы указать тип значения для списка.Этот подход позволяет пользователю видеть список выбранных документов прямо на форме. Пользователь может добавлять элементы, удалять их или очищать список целиком, не совершая лишних кликов.
Если документов одного типа в системе очень много, список значений может быть неудобен для поиска. В таком случае правильнее будет воспользоваться стандартной формой выбора документа с активированным режимом множественного выбора. Это позволяет открывать типовой интерфейс выбора, к которому привык пользователь.
Для реализации этого метода необходимо в событии НачалоВыбора (или в процедуре по нажатию кнопки) вызвать форму выбора с соответствующим параметром:
&НаКлиенте
Процедура СписокДокументовНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ПараметрыВыбора = Новый Структура(\"МножественныйВыбор\", Истина);
ОткрытьФорму(\"Документ.ЗаказПоставщику.ФормаВыбора\", ПараметрыВыбора, Элемент);
КонецПроцедуры
После того как пользователь выберет несколько документов в открывшемся окне, система вернет массив выбранных ссылок. Этот массив необходимо обработать и программно добавить в ваш СписокЗначений на форме.
Для создания более профессионального интерфейса можно использовать элемент формы Таблица. Вместо простого списка значений вы можете создать реквизит формы с типом ТаблицаЗначений. Это дает ряд преимуществ:
При использовании ТаблицаЗначений помните, что для ее отображения на управляемой форме нужно создать колонку с типом, соответствующим вашему документу. Заполнение таблицы можно реализовать через стандартную команду подбора, где при закрытии формы выбора вы будете добавлять выбранные данные в коллекцию строк вашей таблицы.
Подводя итог, выбор способа зависит от ваших задач:
СписокЗначений.МножественныйВыбор.ТаблицаЗначений на форме.Комбинируя эти методы, вы сможете создать функциональную и эргономичную обработку, которая будет отвечать всем требованиям современного интерфейса 1С:Предприятие.