Имя: Пароль:
1C
1С v8
Отбор в табличной части
0 Flempy
 
11.03.22
08:33
Во внешней обработке заполнения хочу на форме сделать отбор ТЧ по запросу

&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт
    ОбъектФормы = ВладелецФормы.Объект;
    ОтобранныеПараметры = ПолучитьДанныеДокумента(ОбъектФормы);
    ОбъектФормы.Элементы.ПараметрыНоменклатуры.ОтборСтрок = Новый ФиксированнаяСтруктура("Параметр", ОтобранныеПараметры); // вот тут ошибка
        
КонецПроцедуры    

Функция ПолучитьДанныеДокумента(СсылкаНаОбъект)
    Ссылка = СсылкаНаОбъект.Ссылка.ПолучитьОбъект();
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ТМЦВЭксплуатацииОбороты.Номенклатура КАК Номенклатура,
    |    ТМЦВЭксплуатацииОбороты.КоличествоОборот КАК Количество,
    |    ТМЦВЭксплуатацииОбороты.Номенклатура.ЕдиницаИзмерения КАК НоменклатураЕдиницаИзмерения
    |ИЗ
    |    РегистрНакопления.ТМЦВЭксплуатации.Обороты(, &Дата, , ФизическоеЛицо = &ФизЛицо) КАК ТМЦВЭксплуатацииОбороты";
    
    Запрос.УстановитьПараметр("Дата",СсылкаНаОбъект.Дата);
    Запрос.УстановитьПараметр("ФизЛицо", УправлениеСвойствами.ЗначениеСвойства(СсылкаНаОбъект.Ссылка, ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "ФизическоеЛицо")));    
    РезультатЗапроса = Запрос.Выполнить();    
    ОтобранныеПараметры = РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Номенклатура");    
    Возврат ОтобранныеПараметры;
КонецФункции


Как можно обратиться к элементам формы из внешней обработки или мб есть какой-то другой способ установить отбор?
1 Ёпрст
 
гуру
11.03.22
11:29
(0) нужно добавить новый ЭлементОтбораКомпоновкиДанных, определить левое и правое значение этого отбора, уставноить вид сравнения в списке и установить значение этого списка
2 Ёпрст
 
гуру
11.03.22
11:30
а фиксированная структура, только для единственного значения