Здравствуйте! У меня из онлайн-кассы выходит чек ПКО с позициями товаров, но он у меня не выводит позиции из ТЧ ВОзвратнаяТара...скажите кто сталкивался? как реализовать?

Нашел запрос...вроде в нем формируются данные но мозгов не хватает как подправить...

```1c
    ТекстЗапроса = "ВЫБРАТЬ
    | ПлатежныйДокументРасшифровкаПлатежа.Ссылка КАК Ссылка,
    | ВЫБОР
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.ДокументРасчетовСКонтрагентом <> НЕОПРЕДЕЛЕНО
    | ТОГДА ПлатежныйДокументРасшифровкаПлатежа.ДокументРасчетовСКонтрагентом
    | ИНАЧЕ ПлатежныйДокументРасшифровкаПлатежа.Сделка
    | КОНЕЦ КАК Сделка,
    | ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС КАК СтавкаНДС,
    | СУММА(ПлатежныйДокументРасшифровкаПлатежа.СуммаПлатежа) КАК СуммаПлатежа,
    | СУММА(ПлатежныйДокументРасшифровкаПлатежа.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
    | СУММА(ПлатежныйДокументРасшифровкаПлатежа.СуммаНДС) КАК СуммаНДС,
    | ВЫБОР
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18)
    | ТОГДА 18
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10)
    | ТОГДА 10
    | ИНАЧЕ 0
    | КОНЕЦ КАК ПроцентНДС
    |ПОМЕСТИТЬ ТаблицаПлатежей
    |ИЗ
    | Документ."+ИмяДокумента+".РасшифровкаПлатежа КАК ПлатежныйДокументРасшифровкаПлатежа
    |ГДЕ
    | ПлатежныйДокументРасшифровкаПлатежа.Ссылка = &Ссылка
    |
    |СГРУППИРОВАТЬ ПО
    | ПлатежныйДокументРасшифровкаПлатежа.Ссылка,
    | ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС,
    | ВЫБОР
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.ДокументРасчетовСКонтрагентом <> НЕОПРЕДЕЛЕНО
    | ТОГДА ПлатежныйДокументРасшифровкаПлатежа.ДокументРасчетовСКонтрагентом
    | ИНАЧЕ ПлатежныйДокументРасшифровкаПлатежа.Сделка
    | КОНЕЦ
    |;
    |"+
    ТекстаЗапросаТЧпоВидуДокументов("СчетНаОплатуПокупателю", "Товары", "НоменклатураСделок")+
    ТекстаЗапросаТЧпоВидуДокументов("ЗаказПокупателя", "Товары")+
    ТекстаЗапросаТЧпоВидуДокументов("РеализацияТоваровУслуг", "Товары")+
    //ТекстаЗапросаТЧпоВидуДокументов("РеализацияТоваровУслуг", "ВозвратнаяТара")+
    ТекстаЗапросаТЧпоВидуДокументов("СчетНаОплатуПокупателю", "Услуги")+
    ТекстаЗапросаТЧпоВидуДокументов("ЗаказПокупателя", "Услуги")+
    ТекстаЗапросаТЧпоВидуДокументов("РеализацияТоваровУслуг", "Услуги")+"
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ТаблицаПлатежей.Сделка КАК Сделка,
    | ТаблицаПлатежей.СтавкаНДС КАК СтавкаНДС,
    | ЕСТЬNULL(НоменклатураСделок.ВалютаСделки, &ВалютаРеглУчета) КАК ВалютаСделки,
    | НоменклатураСделок.Номенклатура КАК Номенклатура,
    | НоменклатураСделок.Услуга КАК Услуга,
    | НоменклатураСделок.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    | НоменклатураСделок.Характеристика КАК Характеристика,
    | НоменклатураСделок.Серия КАК Серия,
    | ВЫБОР
    | КОГДА НоменклатураСделок.Количество = 0
    | И ЕСТЬNULL(НоменклатураСделок.Номенклатура.Услуга, ИСТИНА)
    | ТОГДА 1
    | ИНАЧЕ НоменклатураСделок.Количество
    | КОНЕЦ КАК Количество,
    | ВЫРАЗИТЬ(ВЫБОР
    | КОГДА НоменклатураСделок.СуммаВключаетНДС
    | ТОГДА НоменклатураСделок.Цена
    | ИНАЧЕ НоменклатураСделок.Цена + НоменклатураСделок.Цена * НоменклатураСделок.ПроцентНДС / 100
    | КОНЕЦ КАК ЧИСЛО(15, 2)) КАК Цена,
    | ВЫБОР
    | КОГДА НоменклатураСделок.СуммаВключаетНДС
    | ТОГДА НоменклатураСделок.Сумма
    | ИНАЧЕ НоменклатураСделок.Сумма + НоменклатураСделок.СуммаНДС
    | КОНЕЦ КАК Сумма,
    | ЕСТЬNULL(НоменклатураСделок.СуммаНДС, ТаблицаПлатежей.СуммаНДС) КАК СуммаНДС,
    | ТаблицаПлатежей.СуммаПлатежа КАК СуммаПлатежа,
    | ТаблицаПлатежей.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
    | &СтрокаВыборкиПоляСодержания КАК Наименование
    |ИЗ
    | ТаблицаПлатежей КАК ТаблицаПлатежей
    | ЛЕВОЕ СОЕДИНЕНИЕ НоменклатураСделок КАК НоменклатураСделок
    | ПО ТаблицаПлатежей.Сделка = НоменклатураСделок.Сделка
    | И ТаблицаПлатежей.СтавкаНДС = НоменклатураСделок.СтавкаНДС
    |ИТОГИ
    | СУММА(Сумма),
    | СУММА(СуммаНДС),
    | МАКСИМУМ(СуммаПлатежа),
    | МАКСИМУМ(СуммаВзаиморасчетов),
    | МАКСИМУМ(ВалютаСделки)
    |ПО
    | Сделка,
    | СтавкаНДС";
```
---
1. вариант - в существующей функции - возвращающей объединяемый запрос вывести запрос по условию для возвратной тары
2. вариант - отдельная функция по возврату объединяемого запроса для возвратной тары (там таблица небольшая, поэтому при объединении нужно будет на часть полей возвращать пустышки)
---
Заменить вот это

```1c
    ТекстЗапроса = ТекстОбъединения + "
    |ВЫБРАТЬ
    | ТаблицаПлатежей.Сделка,
    | ТаблицаНоменклатуры.Номенклатура КАК Номенклатура,
    | ТаблицаНоменклатуры.Номенклатура.Услуга КАК Услуга,
    | ТаблицаНоменклатуры.Количество КАК Количество,
    | ТаблицаНоменклатуры.Цена КАК Цена,
    | ТаблицаНоменклатуры.Сумма КАК Сумма,
    | ТаблицаПлатежей.СтавкаНДС КАК СтавкаНДС,
    | ТаблицаНоменклатуры.Ссылка.ВалютаДокумента КАК ВалютаСделки,
    | ТаблицаНоменклатуры.СуммаНДС КАК СуммаНДС,
    | "+ПолеЕдиницаИзмерения+" КАК ЕдиницаИзмерения,
    | ТаблицаНоменклатуры.Ссылка.СуммаВключаетНДС КАК СуммаВключаетНДС,
    | ТаблицаПлатежей.СуммаПлатежа КАК СуммаПлатежа,
    | ТаблицаПлатежей.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
    | "+ПолеХарактеристика+" КАК Характеристика,
    | "+ПолеСерия+" КАК Серия,
    | "+ПолеСодержание+" КАК Содержание,
    | ТаблицаПлатежей.ПроцентНДС КАК ПроцентНДС"+
    ТекстВТ+"
    |ИЗ
    | ТаблицаПлатежей КАК ТаблицаПлатежей
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ."+ИмяДокумента+"."+ИмяТЧ+" КАК ТаблицаНоменклатуры
    | ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка
    | И ТаблицаПлатежей.СтавкаНДС = ТаблицаНоменклатуры.СтавкаНДС
    |";
```

На свой запрос по условию, если имя ТЧ = возвратная тара. Свой к запрос к ТЧ с нужными полями составить не трудно, надеюсь. УПП нет под рукой.
---
попробую. спасибо....правда не знаю как быть с текстом объединения.
---
Думаю можно оставить, главное чтобы состав выбираемых полей был одинаков
---
спасибо) завтра попробую)
---
а вот извините что вы подразумевали когда писали состав выбираемых полей должен быть одинаков?
---
Он имел ввиду состав при объединении - но в данном случае вы это сразу поймете при отладке - это не проблема
---
```1c
    Функция ТекстаЗапросаТЧпоВидуДокументов(ИмяДокумента, ИмяТЧ, ИмяВТ = ")

    // Рассматриваем только два варианта: "Товары" и "Услуги"
    Если ИмяТЧ = "Товары" Тогда
    ПолеЕдиницаИзмерения = "ТаблицаНоменклатуры.ЕдиницаИзмерения";
    ПолеХарактеристика = "ТаблицаНоменклатуры.ХарактеристикаНоменклатуры";
    Если Метаданные.Документы[ИмяДокумента].ТабличныеЧасти[ИмяТЧ].Реквизиты.Найти("СерияНоменклатуры") <> Неопределено Тогда
    ПолеСерия = "ТаблицаНоменклатуры.СерияНоменклатуры";
    Иначе
    ПолеСерия = "ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)";
    КонецЕсли;
    ПолеСодержание = """;
    Иначе
    ПолеЕдиницаИзмерения = "ЗНАЧЕНИЕ(Справочник.ЕдиницыИзмерения.ПустаяСсылка)";
    ПолеХарактеристика = "ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)";
    ПолеСерия = "ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)";
    ПолеСодержание = "ТаблицаНоменклатуры.Содержание";
    КонецЕсли;
    Если Не ПустаяСтрока(ИмяВТ) Тогда
    ТекстВТ = Символы.ПС + " ПОМЕСТИТЬ " + ИмяВТ;
    ТекстОбъединения = ";
    Иначе
    ТекстВТ = ";
    ТекстОбъединения = "
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |";

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

    Возврат ТекстЗапроса;

    КонецФункции
```
---
ТекстаЗапросаТЧпоВидуДокументов("РеализацияТоваровУслуг", "Товары")+
  //ТекстаЗапросаТЧпоВидуДокументов("РеализацияТоваровУслуг", "ВозвратнаяТара")+
                   ТекстаЗапросаТЧпоВидуДокументов("СчетНаОплатуПокупателю", "Услуги")+

в запросе закомментировано ///\\\
---
это я добавил и закоментил) не работает этот вариант)
---
Верните в запрос

```1c
    //ТекстаЗапросаТЧпоВидуДокументов("РеализацияТоваровУслуг", "ВозвратнаяТара")+
```

измените функцию

```1c
    ТекстаЗапросаТЧпоВидуДокументов(ИмяДокумента, ИмяТЧ, ИмяВТ = ")
```

- допишите в ней код под "ВозвратнаяТара"
---
я элементарно сделал выборку просто номенклатуры и у меня все крашится...тот кусок кода я осталвил добавил условие если и прописал но результата как-то нет)

```1c
    Если ИмяТЧ = "ВозвратнаяТара" Тогда

    ТекстЗапроса = ТекстОбъединения + "
    |ВЫБРАТЬ
    | ТаблицаПлатежей.Сделка,
    | ТаблицаНоменклатуры.Номенклатура КАК Номенклатура,"+
    ТекстВТ+"
    |ИЗ
    | ТаблицаПлатежей КАК ТаблицаПлатежей
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ."+ИмяДокумента+"."+ИмяТЧ+" КАК ТаблицаНоменклатуры
    | ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка
    |";

    Возврат ТекстЗапроса;
```
---
так делать нельзя! (в вашем случае)
---
нельзя добавлять условие? или у меня неадекватный запрос?
---
1. вариант - в существующей функции - возвращающей объединяемый запрос вывести запрос по условию для возвратной тары
2. вариант - отдельная функция по возврату объединяемого запроса для возвратной тары (там таблица небольшая, поэтому при объединении нужно будет на часть полей возвращать пустышки)
---
отсюда можно увидеть что я сделал не так? просто хочуд ля начала вывести просто наименование тары
---
посмотрите на полный запрос - например при отладке - по таблице товары, и подумайте как должна встать возвратная тара относительно таблицы "Возвратная тара"
---
кажется понял...надеюсь правильно...например в ТЧ товары у меня есть реквизит в табличной части СтавкаНДС...в таре его нет...то есть я не имею право его убрать а должен присвоить пустышку так?
---
Да, это ограничение для работы с объединением, даже если каких то реквизитов нет, в качестве выбираемых полей их нужно оставить, и сделать пустыми.
---
сделать что-то вроде ПустаяСсылка...так?
---
Для ссылочных да, для примитивных просто пустое значение
---
Для табчасти Товары и Услуги как вы видите - ВТ не используется
---
```1c
    ТекстЗапроса = ТекстОбъединения + "
    |ВЫБРАТЬ
    | ТаблицаПлатежей.Сделка,
    | ТаблицаНоменклатуры.Номенклатура КАК Номенклатура,
    | ТаблицаНоменклатуры.Номенклатура.Услуга КАК Услуга,
    | ТаблицаНоменклатуры.Количество КАК Количество,
    | ТаблицаНоменклатуры.Цена КАК Цена,
    | ТаблицаНоменклатуры.Сумма КАК Сумма,
    | NULL КАК СтавкаНДС,
    | ТаблицаНоменклатуры.Ссылка.ВалютаДокумента КАК ВалютаСделки,
    | NULL КАК СуммаНДС,
    | "+ПолеЕдиницаИзмерения+" КАК ЕдиницаИзмерения,
    | ТаблицаНоменклатуры.Ссылка.СуммаВключаетНДС КАК СуммаВключаетНДС,
    | ТаблицаПлатежей.СуммаПлатежа КАК СуммаПлатежа,
    | ТаблицаПлатежей.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
    | "+ПолеХарактеристика+" КАК Характеристика,
    | "+ПолеСерия+" КАК Серия,
    | "+ПолеСодержание+" КАК Содержание,
    | ТаблицаПлатежей.ПроцентНДС КАК ПроцентНДС"+
    ТекстВТ+"
    |ИЗ
    | ТаблицаПлатежей КАК ТаблицаПлатежей
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ."+ИмяДокумента+"."+ИмяТЧ+" КАК ТаблицаНоменклатуры
    | ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка

    Это убирается....
    | И ТаблицаПлатежей.СтавкаНДС = ТаблицаНоменклатуры.СтавкаНДС
    |";
```
---
Можно и пустой ссылкой если тип один
---
для числовых - 0
---
т.е. - того чего нет - ставьте - NULL, пустая ссылка, 0, "" и т.д.
---
сейчас попробую.
---
посмотрите сформированный запрос в отладчике - откройте его - перенесите его в к примеру конструктор запроса - попробуйте сохранить - увидете сразу все баги - поправьте баги - посмотрите результат выполнения запрос - проведите отладку багов по результату запроса - исправьте эти баги - все - пользуйтесь :)
---
вот у меня проблема, что данный запрос я не могу в консоль засунуть...у меня сразу ссылается на ТаблицуПлатежей....я глобальный поиск по всей конфе пустил так и не понял откуда её вообще взяли. а так у меня первая мысль в консоли все прогнать.
---
Можете вы его в консоль засунуть, можете -

"Нашел запрос...вроде в нем формируются данные но мозгов не хватает как подправить... "

дальше идет переменная которой текст запроса подается

в отладчике и ловите текст запроса - и вставляйте его в конструкторе - и смотрите...
---
то что вы в коде видите - это не запрос - это формирование запроса по частям - запрос будет потом - в процессе - вот там и ловите его... для анализа...
---
спасибо за наводку, сейчас буду копать.
---
нет желания выдавать готовую функцию - иначе вы ничего не поймете, а не понимать переделанную функцию принесет еще больше проблем...
---
для полного понимания - при отладке - просмотрите какой текст части запроса возвращается через функцию, и полный текст запроса - в остальном - там особо и думать нечего. Останется только посмотреть влияние результата на дальнейший код...
---
в ходе отладки в табличной части для документа реализации и тч товары у меня вышел такой запрос:

```1c
    ВЫБРАТЬ
    ТаблицаПлатежей.Сделка,
    ТаблицаНоменклатуры.Номенклатура КАК Номенклатура,
    ТаблицаНоменклатуры.Номенклатура.Услуга КАК Услуга,
    ТаблицаНоменклатуры.Количество КАК Количество,
    ТаблицаНоменклатуры.Цена КАК Цена,
    ТаблицаНоменклатуры.Сумма КАК Сумма,
    ТаблицаПлатежей.СтавкаНДС КАК СтавкаНДС,
    ТаблицаНоменклатуры.Ссылка.ВалютаДокумента КАК ВалютаСделки,
    ТаблицаНоменклатуры.СуммаНДС КАК СуммаНДС,
    ТаблицаНоменклатуры.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    ТаблицаНоменклатуры.Ссылка.СуммаВключаетНДС КАК СуммаВключаетНДС,
    ТаблицаПлатежей.СуммаПлатежа КАК СуммаПлатежа,
    ТаблицаПлатежей.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
    ТаблицаНоменклатуры.ХарактеристикаНоменклатуры КАК Характеристика,
    ТаблицаНоменклатуры.СерияНоменклатуры КАК Серия,
    " КАК Содержание,
    ТаблицаПлатежей.ПроцентНДС КАК ПроцентНДС
    ИЗ
    ТаблицаПлатежей КАК ТаблицаПлатежей
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя.Товары КАК ТаблицаНоменклатуры
    ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка
    И ТаблицаПлатежей.СтавкаНДС = ТаблицаНоменклатуры.СтавкаНДС
```

это мне его прогнать в консоли?
---
Просто так не заработает, нужно Таблицу платежей сначала выбрать, я так понимаю это таблица из ПКО
---
воооот как её взять то? я не знаю где она....в ПКО в табличной части её нет...
---
Ну по факту можно и без нее, главное переделать этот запрос под возвратную тару и все
---
я же могу здесь использовать Документ.РеализацияТоваровУслуг.ВозвратнаяТара а не ТаблицаПлатежей.ВозвтратнаяТара?
---
В таблице платежей нет возвратной тары, там судя по всему ссылки на документы, по которым идет оплата. Так что можете
---
а прости за наглость вы как узнали что в таблице платежей нет информации по Таре?))) я конечно тоже догадываюсь но просто хотелось бы на практике проверить и понять.
---
Исходя из названия, только и всего
---
Да, и заменить на 0, пусто и т.д. возвращаемые поля (перечитайте весь пост внимательно - все ответы уже даны :)
-----------------------------------------------------------------------------
ИЗ
 ТаблицаПлатежей КАК ТаблицаПлатежей
  ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.ВозвратнаяТара КАК ТаблицаНоменклатуры
  ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка
-----------------------------------------------------------------------------

- убрать эту часть условия для возвратной тары
   И ТаблицаПлатежей.СтавкаНДС = ТаблицаНоменклатуры.СтавкаНДС
---
Главное чтобы вот это "ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка" - отработало :) - тогда проблем не возникнет...
---
в случае товаров ТаблицаПлатежей.Сделка = РТУ и в случае возвратной тары, также ТаблицаПлатежей.Сделка = РТУ...
документ то один в сделке - просто таблицы разные :)
---
Хотя стоп:
Вот же таблица платежей, это ТЧ расшифровка платежа из документа ПКО

```1c
    ВЫБРАТЬ
    | ПлатежныйДокументРасшифровкаПлатежа.Ссылка КАК Ссылка,
    | ВЫБОР
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.ДокументРасчетовСКонтрагентом <> НЕОПРЕДЕЛЕНО
    | ТОГДА ПлатежныйДокументРасшифровкаПлатежа.ДокументРасчетовСКонтрагентом
    | ИНАЧЕ ПлатежныйДокументРасшифровкаПлатежа.Сделка
    | КОНЕЦ КАК Сделка,
    | ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС КАК СтавкаНДС,
    | СУММА(ПлатежныйДокументРасшифровкаПлатежа.СуммаПлатежа) КАК СуммаПлатежа,
    | СУММА(ПлатежныйДокументРасшифровкаПлатежа.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
    | СУММА(ПлатежныйДокументРасшифровкаПлатежа.СуммаНДС) КАК СуммаНДС,
    | ВЫБОР
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18)
    | ТОГДА 18
    | КОГДА ПлатежныйДокументРасшифровкаПлатежа.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10)
    | ТОГДА 10
    | ИНАЧЕ 0
    | КОНЕЦ КАК ПроцентНДС
    |ПОМЕСТИТЬ ТаблицаПлатежей
```
---
а вот как...ну тут нет возвратной тары все таки...
---
Но есть ссылка на документ РТиУ, где есть возвратная тара
---
причем здесь это?
тут и таблицы товаров нет...

Таблицы
Товары, Услуги, Возвратная тара и т.д. - это таблицы документа РТУ
А сделка сравнивается по ссылке на документ РТУ, а не на табличную часть...
---
уф... я полетел на кипр... всем пока...
---
спасибо) удачного вам отдыха)
---
все супер) разобрался) правда теперь чеки аннулируются))) когда на печать выводится тара...
---
и цена проставляется у номенклатуры из тч товар в случае если есть тара некорректно....

<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
 <Parameters PaymentType="1" TaxVariant="0" SenderEmail="" CustomerEmail="" CustomerPhone=""/>
 <Positions>
  <FiscalString Name="Кобура шт" Quantity="5" Price="-299.87" Amount="-1499.35" Department="0" Tax="10"/>
  <FiscalString Name="Услуги хранения зерна" Quantity="2" Price="100" Amount="200" Department="0" Tax="10"/>
  <FiscalString Name="Стропы" Quantity="2" Price="800" Amount="1600" Department="0" Tax="0"/>
 </Positions>
 <Payments Cash="300.65" CashLessType1="0" CashLessType2="0" CashLessType3="0"/>
</CheckPackage>
---
в случае если есть тара некорректно....
Что?
---
протестировал, если у меня есть есть тара то у меня подставляется странная цена...и по умолчанию в первую строку чека (как видите отрицательная)....не могу отловить момент почему. пробовал через отладчик все цены корректные и адекватные. откуда она берется не понятно, стоит мне убрать тару из ТЧ все становится нормально..и чек в порядке и суммы.
---
Покажи запрос по таре
---
```1c
    Если ИмяТЧ = "ВозвратнаяТара" Тогда

    ТекстЗапроса = ТекстОбъединения + "
    |;
    |ВЫБРАТЬ
    | ТаблицаПлатежей.Сделка,
    | ТаблицаНоменклатуры.Номенклатура КАК Номенклатура,
    | ТаблицаНоменклатуры.Номенклатура КАК Услуга,
    | ТаблицаНоменклатуры.Количество КАК Количество,
    | ТаблицаНоменклатуры.Цена КАК Цена,
    | ТаблицаНоменклатуры.Сумма КАК Сумма,
    | NULL КАК СтавкаНДС,
    | ТаблицаНоменклатуры.Ссылка.ВалютаДокумента КАК ВалютаСделки,
    | NULL КАК СуммаНДС,
    | "+ПолеЕдиницаИзмерения+" КАК ЕдиницаИзмерения,
    | NULL КАК СуммаВключаетНДС,
    | ТаблицаПлатежей.СуммаПлатежа КАК СуммаПлатежа,
    | ТаблицаПлатежей.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
    | "" КАК Характеристика,
    | "" КАК Серия,
    | "" КАК Содержание,
    | "" КАК ПроцентНДС
    |ИЗ
    | ТаблицаПлатежей КАК ТаблицаПлатежей
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ."+ИмяДокумента+"."+ИмяТЧ+" КАК ТаблицаНоменклатуры
    | ПО ТаблицаПлатежей.Сделка = ТаблицаНоменклатуры.Ссылка";

    Возврат ТекстЗапроса;
```
---
еще пришлось подредактировать процедуру ЗаполнитьТоварныеПозицииВПараметрахЧека(Ссылка, ОбщиеПараметры, ЭтоОплатаПокупателя, ПринятоОт, Основание) Экспорт ибо тара не выводилась туда я добавил

[1C-CODE][///++
    Для Каждого СтрокаПозиции Из ВозвратнаяТара Цикл
     СтрокаЧека = МенеджерОборудованияКлиентСервер.ПараметрыФискальнойСтрокиЧека();

     ЗаполнитьСтрокуЧека(ОбщиеПараметры, СтрокаЧека, СтрокаПозиции, КурсОплаты, ИндексСтрокиСоСкидкой, СуммаПлатежаПоСтавке);

     ОбщиеПараметры.ПозицииЧека.Добавить(СтрокаЧека);
    КонецЦикла;
    //--
CODE]
---
Ну только отладкой смотреть, либо после того как запрос выполнится, либо в тот момент когда формируется xml
---
ну запрос вроде в порядке же?
---
А в возвратной таре цена и сумма есть?
---
да есть, все заработало...я вам скинул окончательную версию запроса...до этого там было немного по другому, ТаблицаПлатежей.СуммаПлатежа была у меня как NULL....в связи с этим не шло