Имя: Пароль:
1C
 
Неверные параметры таблицы
0 sergqwert
 
10.09.21
17:47
При выполнении возникает ошибка Тз = Запрос.Выполнить().Выгрузить();
по причине:
{(5, 2)}: Неверные параметры "ТабТовары"
<<?>>&ТабТовары КАК ТабТовары
Что это может быть?              
                ПараметрыОтбора = Новый Структура;
        ПараметрыОтбора.Вставить("Отметка", Истина);
        НайденныеСтроки = СписокТоваров.НайтиСтроки(ПараметрыОтбора);
        
        ДокументТЗ = Элемент.ТекущиеДанные.Документ;        
        
        Запрос = Новый Запрос;
        Запрос.УстановитьПараметр("ДокументТЗ", ДокументТЗ);
        Запрос.УстановитьПараметр("ТабТовары", НайденныеСтроки);
        Запрос.Текст = "ВЫБРАТЬ
                       |    ТабТовары.Номенклатура
                       |ПОМЕСТИТЬ ВТ_ИсключаемаяНоменклатура
                       |ИЗ
                       |    &ТабТовары КАК ТабТовары
                       |;
                       |
                       |////////////////////////////////////////////////////////////////////////////////
                       |ВЫБРАТЬ
                       |    ПоступлениеТоваровУслугТовары.НомерСтроки,
                       |    ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура,
                       |    ПоступлениеТоваровУслугТовары.ЕдиницаИзмерения,
                       |    ПоступлениеТоваровУслугТовары.Количество,
                       |    ПоступлениеТоваровУслугТовары.Цена,
                       |    ПоступлениеТоваровУслугТовары.Сумма,
                       |    ПоступлениеТоваровУслугТовары.ХарактеристикаНоменклатуры,
                       |    ЛОЖЬ КАК Отметка,
                       |    ПоступлениеТоваровУслугТовары.СерияНоменклатуры,
                       |    ПоступлениеТоваровУслугТовары.Ссылка КАК СсылкаНаДокумент
                       |ИЗ
                       |    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
                       |ГДЕ
                       |    ПоступлениеТоваровУслугТовары.Ссылка = &ДокументТЗ
                       |    И НЕ ПоступлениеТоваровУслугТовары.Номенклатура В
                       |                (ВЫБРАТЬ
                       |                    ВТ_ИсключаемаяНоменклатура.Номенклатура
                       |                ИЗ
                       |                    ВТ_ИсключаемаяНоменклатура КАК ВТ_ИсключаемаяНоменклатура)";      
        
        Тз = Новый ТаблицаЗначений;
        Тз = Запрос.Выполнить().Выгрузить();
1 1Сергей
 
10.09.21
17:49
Что возвращает НайтиСтроки? И что надо подсовывать в запрос? Читаем, думаем
2 RomanYS
 
10.09.21
17:49
НайденныеСтроки это массив строк, а нужно ТЗ
3 Kassern
 
10.09.21
18:02
(0) если список не большой с пометкой то можно просто:
                       |ГДЕ
                       |    ПоступлениеТоваровУслугТовары.Ссылка = &ДокументТЗ
                       |    И НЕ ПоступлениеТоваровУслугТовары.Номенклатура В (&МассивИсключенныхТоваров)
Так же можно всю ТЗ залить во временную таблицу вместе с пометкой. Далее эту таблицу срезать по пометке(либо в соединении, либо отдельным пакетом) и левым соединением прикрутить к основной таблице с условием типа ЕстьNull(ВТ_ИсключаемаяНоменклатура.Номенклатура,"")=""
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой