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