Выгрузка значений типа "set" из запроса напрямую невозможна, поэтому формирование данных этого типа необходимо реализовывать "вручную".
Обработка используется для выгрузки подборов (set-ов) значение типа "СписокЗначений".
Элементы списка значений заполняются по следующим правилам:
Свойство элемента | Назначение |
---|---|
Значение | Ссылка элемента подбора |
Представление | Тип ссылки элемента подбора |
Пример формирования списка:
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Т.Номеклатура КАК Ссылка |ИЗ | РегистрСведений.СкидкиНоменклатуры КАК Т |ГДЕ | Т.Скидка = &Скидка | И Т.Контрагент = &Контрагент"; Запрос.УстановитьПараметр("Скидка", Скидка); Запрос.УстановитьПараметр("Контрагент", Контрагент); ПодборТоваров = Новый СписокЗначений; Выборка = Запрос.Выполнить.Выбрать(); Пока Выборка.Следующий() Цикл ПодборТоваров.Добавить(Выборка.Ссылка, "ref_skus"); КонецЦикла;
Пример добавления списка в данные выгрузки:
КолонкаПодборТоваров = ДанныеВыгрузки.Колонки.Найти("ПодборТоваров"); ДанныеВыгрузки.Колонки.Удалить(КолонкаПодборТоваров); ДанныеВыгрузки.Колонки.Добавить("ПодборТоваров", Новый ОписаниеТипов("СписокЗначений")); Для Каждого СтрокаДанных Из ДанныеВыгрузки.Строки Цикл СтрокаДанных.ПодборТоваров = ПолучитьПодборТоваров(СтрокаДанных.Скидка, СтрокаДанных.Контрагент); КонецЦикла;
В запросе для формирования данных выгрузки нужно определить колонку "ПодборТоваров".
Тип колонки не имеет значения.