Родовая проблема 1С в том, что в отбор по списку нельзя загрузить готовый список.
Поэтому приходится дописывать, если это нужно.
Привожу пример, как я доработал универсальный подбор и обработку объектов.
Я добавил кнопку «Установить значение отбора», которая добавляет в текущую строку отбора список наименований:
После загрузки список выглядит так:
Код кнопки:
Процедура КоманднаяПанельПостроительОтчетаУстановитьЗначение(Кнопка)
М = ВосстановитьЗначение("Список");
С = Новый СписокЗначений();
С.ЗагрузитьЗначения(М);
ЭлементыФОрмы.ПостроительОтчетаОтбор.ТекущаяСтрока.Значение = С;
КонецПроцедуры
Массив наименований обработка подгружает из сохраненного значения Список. Также хорошо работает, если это массив ссылок, для преобразования в строку она берет наименование ссылки.
Сам список я формирую с помощью другой своей обработки – превращение таблицы в ссылки:
Также я добавил кнопку «Ввести список документов», если хочу обработать список документов разного типа:
Например, у меня есть такой список документов:
Я копирую его в виде текста в буфер обмена, нажимаю кнопку «Ввести список документов» и копирую туда этот список:
Нажимаю «ОК» и документы добавляются в список. При этом о не найденных документах будет выдано сообщение:
Чтобы обработать документы, нужно в поле «Объект поиска» выбрать любой вид документа и дальше выполнять обработку произвольного алгоритма, например, такую:
Код кнопки:
Процедура КоманднаяПанельПостроительОтчетаВвеситСписокДокументов(Кнопка)
ТекстСписок = "";
Если НЕ ВвестиЗначение(ТекстСписок, "Введите список документов - каждый документ с новой строки") Тогда
Возврат;
КонецЕсли;
ТекстСписок = СтрЗаменить(ТекстСписок, Символ(182), Символы.ПС);
НайденныеОбъекты = Новый ТаблицаЗначений();
НайденныеОбъекты.Колонки.Добавить("Объект");
Т = Новый ТекстовыйДокумент();
Т.УстановитьТекст(ТекстСписок);
Для Инд = 1 По Т.КоличествоСтрок() Цикл
ПредставлениеДокумента = СокрЛП(Т.ПолучитьСтроку(Инд));
Если ПредставлениеДокумента = "" Тогда
Продолжить;
КонецЕсли;
ТекСсылка = ВернутьСсылкуДокумента(ПредставлениеДокумента);
Если НЕ ЗначениеЗаполнено(ТекСсылка) Тогда
Сообщить("Не найдена ссылка" + ПредставлениеДокумента);
Продолжить;
КонецЕсли;
НСтр = НайденныеОбъекты.Добавить();
НСтр.Объект = ТекСсылка;
КонецЦикла;
ЭлементыФормы.НайденныеОбъекты.СоздатьКолонки();
ЭлементыФормы.Панель.ТекущаяСтраница = ЭлементыФормы.Панель.Страницы.Получить(1);
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("Булево"));
НайденныеОбъекты.Колонки.Добавить("Пометка", Новый ОписаниеТипов(МассивТипов));
ЭлементыФормы.НайденныеОбъекты.Колонки["Объект"].ДанныеФлажка = "Пометка";
ЭлементыФормы.НайденныеОбъекты.Колонки["Объект"].РежимРедактирования = РежимРедактированияКолонки.Непосредственно;
Для каждого Строка из НайденныеОбъекты Цикл
Строка.Пометка = Истина;
КонецЦикла;
ЭлементыФормы.Панель.Страницы.Обработки.Доступность = истина;
КонецПроцедуры
В пакет для скачивания выкладываю модифицированную типовую обработку подбора и обработки объектов и обработку по превращению таблицы в ссылки.
Также можно доработать и обработку «Консоль запросов», чтобы добавлять во временную таблицу выбранные объекты, затем соединять их с нужными и выполнять любой программный код. Оставляю это на вашу реализацию.