Имя: Пароль:
1C
1С v8
В подборе надо добавить фильтр по номенклатуре.
0 SkillUp
 
14.11.18
14:52
Как более правильно? Передаю список номенклатуры, с которым должна открываться форма. Делаю так:

Процедура ДействиеПодбор(ТабличнаяЧасть)
...

    СтруктураПараметровПодбора.Вставить("УсловиеПродаж"        , УсловиеПродаж);
    СтруктураПараметровПодбора.Вставить("ЕстьСкладВТабличнойЧасти", ЕстьСкладВТабличнойЧасти);
    СтруктураПараметровПодбора.Вставить("ВременныеТаблицы",ОбработкаТабличныхЧастей.СтруктураДляРасчетаРезерваПриПодбореНоменклатуры(ЭтаФорма, Истина, "Сделка"));
    //ТУТ!!!!
    Если ДоговорКонтрагента.Спецификация.Количество() > 0 Тогда
        Список = Новый СписокЗначений;
        Для Каждого Стр ИЗ ДоговорКонтрагента.Спецификация Цикл
            Список.Добавить (Стр.Номенклатура);
        КонецЦикла;
        СтруктураПараметровПодбора.Вставить("номенклатура",Список);
    КонецЕсли;
    
    РаботаСДиалогами.ОткрытьПодборНоменклатуры(ЭтаФорма, СтруктураПараметровПодбора, Метаданные());

КонецПроцедуры // ДействиеПодбор()
1 ДенисЧ
 
14.11.18
14:53
Работает?
2 SkillUp
 
14.11.18
14:55
(1) нет.
3 Михаил Козлов
 
14.11.18
14:58
А процедура ОткрытьПодборНоменклатуры что-нибудь знает про список в СтруктуреПараметров.номенклатура?
4 SkillUp
 
14.11.18
15:06
(3) В СтруктуреПараметров.номенклатура список есть, но вот как этот список, в фильтр по номенклатуре сделать?
5 Михаил Козлов
 
14.11.18
15:39
(4) Попробовать наложить фильтр на таблицы подбора. Если это обычные формы, то в соответствующей форме несколько таблиц.
Либо модифицировать запросы, которые получают данные для подбора.
6 SkillUp
 
14.11.18
15:51
(5) О! отлично. СП!
7 AlvlSpb
 
14.11.18
16:02
ЗначениеОтбора = Новый Структура("номенклатура",Список);
ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);
ОткрытьФорму("НужнаяФорма", ПараметрыВыбора);
8 SkillUp
 
14.11.18
18:36
(7) "Биг" СП! )
9 SkillUp
 
14.11.18
18:40
СПАСИБО! )) --- А не СП)))) САМ СМЕЮСЬ ОТ ТОГО, ЧТО НАПИСАЛ ))))))