Обмен УТ11/БП3 Выгрузка документа Корректировка поступления задваивает строки
Добрый день.
После какого то обновления, предположительно месяца 2-4 назад, из УТ в БП документы Корректировка поступления начали выгружаться странным образом.
К примеру есть поступление на 10 строк на 1 млн руб. Корректируем 1 строку на 10 тыс. В БП Уходит документ и в нем уже 20 строк. 10 старых не скорректированных и 10 новых скорректированных(хотя корректировалась одна строка на 10 тыс). Итоговая сумма сумма верная, но при этом идут обороты на миллион из за того что товар исписывается и приходуется весь по этому документу.
Кто нибудь сталкивался с такой печалью? как это лечится? наивно полагал что обновления/патчи помогут, но увы, стоят последнее обновление и все патчи, но толку ни какого.
Обмен через универсальный обмен данными.
После какого то обновления, предположительно месяца 2-4 назад, из УТ в БП документы Корректировка поступления начали выгружаться странным образом.
К примеру есть поступление на 10 строк на 1 млн руб. Корректируем 1 строку на 10 тыс. В БП Уходит документ и в нем уже 20 строк. 10 старых не скорректированных и 10 новых скорректированных(хотя корректировалась одна строка на 10 тыс). Итоговая сумма сумма верная, но при этом идут обороты на миллион из за того что товар исписывается и приходуется весь по этому документу.
Кто нибудь сталкивался с такой печалью? как это лечится? наивно полагал что обновления/патчи помогут, но увы, стоят последнее обновление и все патчи, но толку ни какого.
Обмен через универсальный обмен данными.
Найденные решения
(1) Нашел причину. Исправил патчем (расширением).
Модуль МенеджерОбменаЧерезУниверсальныйФормат
Процедура ЗаполнитьДанныеКорректировкиПоступленияТоваров
Запрос из пакета, формирующий временную таблицу ПОМЕСТИТЬ РезультатСопоставленияТоваровВрем
Сравнил релизы УТ 11.5.19.74 и 11.5.18.59. В 11.5.18.59 ошибки не было.
В последних релизах в запрос добавили поле Идентификатор строки. Запрос большой, суть его работы я опущу. В одной из временных таблиц группируются данные документа корректировки и данные документа-основания по полям, включая идентификатор строки. В документе корректировки в табличной части Товары этого поля нет. В запросе этому полю присваивается пустая строка. В итоге результат группировки дублирует строки. В одной есть идентификатор (из ПТиУ - основания), в другой - пустая строка. Ну а дальше формируется XML в двумя строками, который летит в 1С БУХ.
На скриншотах я указал, что поправил с помощью расширения. Прогнал на тестовом контуре, потом на боевом. Данные в БУХ базу прилетели корректно одной строкой.
Модуль МенеджерОбменаЧерезУниверсальныйФормат
Процедура ЗаполнитьДанныеКорректировкиПоступленияТоваров
Запрос из пакета, формирующий временную таблицу ПОМЕСТИТЬ РезультатСопоставленияТоваровВрем
Сравнил релизы УТ 11.5.19.74 и 11.5.18.59. В 11.5.18.59 ошибки не было.
В последних релизах в запрос добавили поле Идентификатор строки. Запрос большой, суть его работы я опущу. В одной из временных таблиц группируются данные документа корректировки и данные документа-основания по полям, включая идентификатор строки. В документе корректировки в табличной части Товары этого поля нет. В запросе этому полю присваивается пустая строка. В итоге результат группировки дублирует строки. В одной есть идентификатор (из ПТиУ - основания), в другой - пустая строка. Ну а дальше формируется XML в двумя строками, который летит в 1С БУХ.
На скриншотах я указал, что поправил с помощью расширения. Прогнал на тестовом контуре, потом на боевом. Данные в БУХ базу прилетели корректно одной строкой.
Прикрепленные файлы:



Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Буду премного благодарен.
Был бы обмен по правилам, то в лёт решился бы вопрос, КД2 и ни каких проблем. А с универсальным обменом я не дружу, а 1Сники мало того что правила обмена убрали, так теперь еще и правила регистрации тоже спрятали в недрах кода конфигураций :(
Был бы обмен по правилам, то в лёт решился бы вопрос, КД2 и ни каких проблем. А с универсальным обменом я не дружу, а 1Сники мало того что правила обмена убрали, так теперь еще и правила регистрации тоже спрятали в недрах кода конфигураций :(
(1) Нашел причину. Исправил патчем (расширением).
Модуль МенеджерОбменаЧерезУниверсальныйФормат
Процедура ЗаполнитьДанныеКорректировкиПоступленияТоваров
Запрос из пакета, формирующий временную таблицу ПОМЕСТИТЬ РезультатСопоставленияТоваровВрем
Сравнил релизы УТ 11.5.19.74 и 11.5.18.59. В 11.5.18.59 ошибки не было.
В последних релизах в запрос добавили поле Идентификатор строки. Запрос большой, суть его работы я опущу. В одной из временных таблиц группируются данные документа корректировки и данные документа-основания по полям, включая идентификатор строки. В документе корректировки в табличной части Товары этого поля нет. В запросе этому полю присваивается пустая строка. В итоге результат группировки дублирует строки. В одной есть идентификатор (из ПТиУ - основания), в другой - пустая строка. Ну а дальше формируется XML в двумя строками, который летит в 1С БУХ.
На скриншотах я указал, что поправил с помощью расширения. Прогнал на тестовом контуре, потом на боевом. Данные в БУХ базу прилетели корректно одной строкой.
Модуль МенеджерОбменаЧерезУниверсальныйФормат
Процедура ЗаполнитьДанныеКорректировкиПоступленияТоваров
Запрос из пакета, формирующий временную таблицу ПОМЕСТИТЬ РезультатСопоставленияТоваровВрем
Сравнил релизы УТ 11.5.19.74 и 11.5.18.59. В 11.5.18.59 ошибки не было.
В последних релизах в запрос добавили поле Идентификатор строки. Запрос большой, суть его работы я опущу. В одной из временных таблиц группируются данные документа корректировки и данные документа-основания по полям, включая идентификатор строки. В документе корректировки в табличной части Товары этого поля нет. В запросе этому полю присваивается пустая строка. В итоге результат группировки дублирует строки. В одной есть идентификатор (из ПТиУ - основания), в другой - пустая строка. Ну а дальше формируется XML в двумя строками, который летит в 1С БУХ.
На скриншотах я указал, что поправил с помощью расширения. Прогнал на тестовом контуре, потом на боевом. Данные в БУХ базу прилетели корректно одной строкой.
Прикрепленные файлы:



Еще нюанс, кто будет использовать данный метод исправления, если в поступлении несколько строк с одинаковыми сериями, обратите внимание на запрос, там выборка "максимум" из дока поступления.
Если у вас в поступлении 3 строки с серией 00001 и с количеством 5,25,10, то в БП вам прилетит до изменения 25, после 40
Если у вас в поступлении 3 строки с серией 00001 и с количеством 5,25,10, то в БП вам прилетит до изменения 25, после 40
// Данные исходного документа поступления.
// Ссылка на исправляемый документ.
ТекстЗапроса =
"ВЫБРАТЬ
| Док.ЗаказПоставщику КАК ЗаказПоставщику,
| Док.Грузоотправитель КАК Грузоотправитель,
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Док.Ссылка) = ТИП(Документ.ПервичныйДокумент)
| И Док.НалогообложениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяЕНВД)
| ТОГДА ИСТИНА
| КОГДА Док.ЗакупкаПодДеятельность = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяЕНВД)
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ КАК ЭтоЕНВД,
| Док.ВернутьМногооборотнуюТару КАК ВернутьМногооборотнуюТару
|ПОМЕСТИТЬ ДанныеДокументаПоступления
|ИЗ
| Документ.ПриобретениеТоваровУслуг КАК Док
|ГДЕ
| Док.Ссылка = &ДокументОснование
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Док.ЗаказПоставщику КАК ЗаказПоставщику,
| Док.Грузоотправитель КАК Грузоотправитель,
| Док.ЭтоЕНВД КАК ЭтоЕНВД,
| Док.ВернутьМногооборотнуюТару КАК ВернутьМногооборотнуюТару
|ИЗ
| ДанныеДокументаПоступления КАК Док";
Показать// Ссылка на исправляемый документ.
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() +
"ВЫБРАТЬ
| Док.Ссылка,
| Док.МоментВремени,
| ЛОЖЬ КАК ЭтоДокументОснование
|ПОМЕСТИТЬ ПоследовательностьДокументов
|ИЗ
| Документ.КорректировкаПриобретения КАК Док
|ГДЕ
| Док.ДокументОснование = &ДокументОснование
| И Док.МоментВремени <= &МоментВремени
| И Док.Проведен
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| Док.ДокументОснование,
| Док.ДокументОснование.МоментВремени,
| ИСТИНА
|ИЗ
| Документ.КорректировкаПриобретения КАК Док
|ГДЕ
| Док.Ссылка = &Ссылка
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ПоследовательностьДокументов.Ссылка,
| ПоследовательностьДокументов.МоментВремени,
| ПоследовательностьДокументов.ЭтоДокументОснование,
| МАКСИМУМ(ВЫБОР
| КОГДА &МеждународнаяВерсия
| ТОГДА ЛОЖЬ
//++ Локализация
| КОГДА СчетФактураПолученный.Ссылка ЕСТЬ NULL
| ТОГДА ЛОЖЬ
//-- Локализация
| ИНАЧЕ ИСТИНА
| КОНЕЦ) КАК Корректировочный
|ПОМЕСТИТЬ ПараметрыДокументовПоследовательности
|ИЗ
| ПоследовательностьДокументов КАК ПоследовательностьДокументов
//++ Локализация
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетФактураПолученный.ДокументыОснования КАК СчетФактураПолученный
| ПО ПоследовательностьДокументов.Ссылка = СчетФактураПолученный.ДокументОснование
| И (СчетФактураПолученный.Ссылка.Корректировочный)
| И (СчетФактураПолученный.Ссылка.Проведен)
//-- Локализация
|
|СГРУППИРОВАТЬ ПО
| ПоследовательностьДокументов.Ссылка,
| ПоследовательностьДокументов.МоментВремени,
| ПоследовательностьДокументов.ЭтоДокументОснование
|
|ИНДЕКСИРОВАТЬ ПО
| ПоследовательностьДокументов.Ссылка
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Параметры1.Ссылка,
| Параметры1.Корректировочный,
| МИНИМУМ(ВЫБОР
| КОГДА Параметры1.Корректировочный
| И НЕ Параметры2.Корректировочный
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ) КАК ИсходныйКорректировочный
|ПОМЕСТИТЬ ПараметрыОтбора
|ИЗ
| ПараметрыДокументовПоследовательности КАК Параметры1
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПараметрыДокументовПоследовательности КАК Параметры2
| ПО (Параметры1.Ссылка = &Ссылка)
| И (Параметры2.Ссылка <> &Ссылка)
|
|СГРУППИРОВАТЬ ПО
| Параметры1.Ссылка,
| Параметры1.Корректировочный
|
|ИНДЕКСИРОВАТЬ ПО
| Параметры1.Ссылка
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ ПЕРВЫЕ 1
| ИсправляемыеДокументы.Ссылка
|ПОМЕСТИТЬ ИсправляемыйДокумент
|ИЗ
| ПараметрыДокументовПоследовательности КАК ИсправляемыеДокументы
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПараметрыОтбора КАК ПараметрыОтбора
| ПО (ИсправляемыеДокументы.Корректировочный = ПараметрыОтбора.Корректировочный
| ИЛИ ПараметрыОтбора.ИсходныйКорректировочный
| ИЛИ ИсправляемыеДокументы.ЭтоДокументОснование)
| И ИсправляемыеДокументы.Ссылка <> ПараметрыОтбора.Ссылка
|
|УПОРЯДОЧИТЬ ПО
| ИсправляемыеДокументы.МоментВремени УБЫВ
|;
|
// Собственно исправляемый документ
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ИсправляемыйДокумент.Ссылка КАК Ссылка,
| ИсправляемыйДокумент.Ссылка.Дата КАК Дата,
| ИсправляемыйДокумент.Ссылка.Номер КАК Номер
|ИЗ
| ИсправляемыйДокумент КАК ИсправляемыйДокумент";
// Ссылка на основание исправления (корректировки) и документ до корректировки.
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() +
"ВЫБРАТЬ ПЕРВЫЕ 1
| ИсправляемыеДокументы.Ссылка КАК Ссылка,
| ИсправляемыеДокументы.Ссылка.Дата КАК Дата,
| ИсправляемыеДокументы.Ссылка.Номер КАК Номер
|ИЗ
| ПараметрыДокументовПоследовательности КАК ИсправляемыеДокументы
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПараметрыОтбора КАК ПараметрыОтбора
| ПО (ИсправляемыеДокументы.Корректировочный = ПараметрыОтбора.Корректировочный
| ИЛИ ИсправляемыеДокументы.ЭтоДокументОснование)
| И ИсправляемыеДокументы.Ссылка <> ПараметрыОтбора.Ссылка
|
|УПОРЯДОЧИТЬ ПО
| ИсправляемыеДокументы.ЭтоДокументОснование,
| ИсправляемыеДокументы.МоментВремени
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ ПЕРВЫЕ 1
| ИсправляемыеДокументы.Ссылка
|ПОМЕСТИТЬ ДокументДоКорректировки
|ИЗ
| ПараметрыДокументовПоследовательности КАК ИсправляемыеДокументы
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПараметрыОтбора КАК ПараметрыОтбора
| ПО ПараметрыОтбора.Корректировочный И Не ПараметрыОтбора.ИсходныйКорректировочный
| И ИсправляемыеДокументы.Корректировочный = Ложь
| И ИсправляемыеДокументы.Ссылка <> ПараметрыОтбора.Ссылка
|
|УПОРЯДОЧИТЬ ПО
| ИсправляемыеДокументы.ЭтоДокументОснование,
| ИсправляемыеДокументы.МоментВремени УБЫВ";
// Табличные части Товары и Услуги исправляемого документа.
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() +
"ВЫБРАТЬ
| Товары.Номенклатура КАК Номенклатура,
| Товары.Характеристика КАК Характеристика,
| Товары.Упаковка КАК Упаковка,
| """" КАК Содержание,
| Товары.СтавкаНДС КАК СтавкаНДС,
| Товары.НомерГТД КАК НомерГТД,
| Товары.Количество КАК Количество,
| Товары.КоличествоУпаковок КАК КоличествоУпаковок,
| Товары.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
| Товары.Сумма КАК Сумма,
| Товары.СуммаНДС КАК СуммаНДС,
| Товары.СуммаСНДС КАК СуммаСНДС,
| Товары.СтатьяРасходов КАК СтатьяРасходов,
| Товары.НомерСтроки КАК НомерСтроки,
| Товары.ИдентификаторСтроки КАК ИдентификаторСтроки,
| Товары.Серия КАК Серия
|ПОМЕСТИТЬ ТоварыУслугиИсправляемогоДокументаРазвернутые
|ИЗ
| Документ.ПриобретениеТоваровУслуг.Товары КАК Товары
|ГДЕ
| Товары.Ссылка В
| (ВЫБРАТЬ
| ИсправляемыйДокумент.Ссылка
| ИЗ
| ИсправляемыйДокумент КАК ИсправляемыйДокумент)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка),
| ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка),
| ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка),
| Расходы.Содержание,
| Расходы.СтавкаНДС КАК СтавкаНДС,
| ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка),
| Расходы.Количество,
| 0,
| 0,
| Расходы.Сумма,
| Расходы.СуммаНДС,
| Расходы.СуммаСНДС,
| Расходы.СтатьяРасходов,
| Расходы.НомерСтроки,
| """",
| ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
|ИЗ
| Документ.ПриобретениеУслугПрочихАктивов.Расходы КАК Расходы
|ГДЕ
| Расходы.Ссылка В
| (ВЫБРАТЬ
| ИсправляемыйДокумент.Ссылка
| ИЗ
| ИсправляемыйДокумент КАК ИсправляемыйДокумент)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Упаковка,
| Товары.Содержание,
| Товары.СтавкаНДС,
| Товары.НомерГТД,
| Товары.Количество,
| Товары.КоличествоУпаковок,
| Товары.КоличествоПоРНПТ,
| Товары.Сумма,
| Товары.СуммаНДС,
| Товары.СуммаСНДС,
| Товары.СтатьяРасходов,
| Товары.НомерСтроки,
| """",
| Товары.Серия
|ИЗ
| Документ.КорректировкаПриобретения.Товары КАК Товары
|ГДЕ
| Товары.Ссылка В
| (ВЫБРАТЬ
| ИсправляемыйДокумент.Ссылка
| ИЗ
| ИсправляемыйДокумент КАК ИсправляемыйДокумент)
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| КорректировкаПриобретенияТовары.Номенклатура,
| КорректировкаПриобретенияТовары.Характеристика,
| КорректировкаПриобретенияТовары.Упаковка,
| КорректировкаПриобретенияТовары.Номенклатура.Наименование,
| КорректировкаПриобретенияТовары.СтавкаНДС,
| КорректировкаПриобретенияТовары.НомерГТД,
| КорректировкаПриобретенияТовары.Количество - КорректировкаПриобретенияРасхождения.Количество,
| КорректировкаПриобретенияТовары.КоличествоУпаковок,
| КорректировкаПриобретенияТовары.КоличествоПоРНПТ,
| КорректировкаПриобретенияТовары.Сумма,
| КорректировкаПриобретенияТовары.СуммаНДС,
| КорректировкаПриобретенияТовары.СуммаСНДС,
| КорректировкаПриобретенияТовары.СтатьяРасходов,
| КорректировкаПриобретенияТовары.НомерСтроки,
| """",
| КорректировкаПриобретенияТовары.Серия
|ИЗ
| Документ.КорректировкаПриобретения.Товары КАК КорректировкаПриобретенияТовары
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения.Расхождения КАК КорректировкаПриобретенияРасхождения
| ПО (КорректировкаПриобретенияРасхождения.Ссылка = КорректировкаПриобретенияТовары.Ссылка)
| И (КорректировкаПриобретенияТовары.Номенклатура = КорректировкаПриобретенияРасхождения.Номенклатура)
| И (КорректировкаПриобретенияТовары.Характеристика = КорректировкаПриобретенияРасхождения.Характеристика)
| И (КорректировкаПриобретенияТовары.Серия = КорректировкаПриобретенияРасхождения.Серия)
|ГДЕ
| КорректировкаПриобретенияРасхождения.Ссылка = &Ссылка
| И КорректировкаПриобретенияТовары.Ссылка.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
| И КорректировкаПриобретенияТовары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар)";
// Табличные части Товары и Услуги документа до корректировки.
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() +
"ВЫБРАТЬ
| Товары.Номенклатура КАК Номенклатура,
| Товары.Характеристика КАК Характеристика,
| Товары.Упаковка КАК Упаковка,
| """" КАК Содержание,
| Товары.СтавкаНДС КАК СтавкаНДС,
| Товары.НомерГТД КАК НомерГТД,
| Товары.Количество КАК Количество,
| Товары.КоличествоУпаковок КАК КоличествоУпаковок,
| Товары.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
| Товары.Сумма КАК Сумма,
| Товары.СуммаНДС КАК СуммаНДС,
| Товары.СуммаСНДС КАК СуммаСНДС,
| Товары.СтатьяРасходов КАК СтатьяРасходов,
| Товары.НомерСтроки КАК НомерСтроки,
| Товары.ИдентификаторСтроки КАК ИдентификаторСтроки,
| Товары.Серия КАК Серия
|ПОМЕСТИТЬ ТоварыУслугиДокументаДоКорректировкиРазвернутые
|ИЗ
| Документ.ПриобретениеТоваровУслуг.Товары КАК Товары
|ГДЕ
| Товары.Ссылка В
| (ВЫБРАТЬ
| ДокументДоКорректировки.Ссылка
| ИЗ
| ДокументДоКорректировки КАК ДокументДоКорректировки)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка),
| ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка),
| ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка),
| Расходы.Содержание,
| Расходы.СтавкаНДС,
| ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка),
| Расходы.Количество,
| 0,
| 0,
| Расходы.Сумма,
| Расходы.СуммаНДС,
| Расходы.СуммаСНДС,
| Расходы.СтатьяРасходов,
| Расходы.НомерСтроки,
| Расходы.ИдентификаторСтроки,
| ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
|ИЗ
| Документ.ПриобретениеУслугПрочихАктивов.Расходы КАК Расходы
|ГДЕ
| Расходы.Ссылка В
| (ВЫБРАТЬ
| ДокументДоКорректировки.Ссылка
| ИЗ
| ДокументДоКорректировки КАК ДокументДоКорректировки)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Упаковка,
| Товары.Содержание,
| Товары.СтавкаНДС,
| Товары.НомерГТД,
| Товары.Количество,
| Товары.КоличествоУпаковок,
| Товары.КоличествоПоРНПТ,
| Товары.Сумма,
| Товары.СуммаНДС,
| Товары.СуммаСНДС,
| Товары.СтатьяРасходов,
| Товары.НомерСтроки,
| """",
| Товары.Серия
|ИЗ
| Документ.КорректировкаПриобретения.Товары КАК Товары
|ГДЕ
| Товары.Ссылка В
| (ВЫБРАТЬ
| ДокументДоКорректировки.Ссылка
| ИЗ
| ДокументДоКорректировки КАК ДокументДоКорректировки)";
// Результирующие табличные части Товары и Услуги.
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() +
"ВЫБРАТЬ
| Товары.Номенклатура КАК Номенклатура,
| Товары.Характеристика КАК Характеристика,
| Товары.Упаковка КАК Упаковка,
| Товары.СтавкаНДС КАК СтавкаНДС,
| Товары.НомерГТД КАК НомерГТД,
| СУММА(Товары.Количество) КАК Количество,
| СУММА(Товары.КоличествоУпаковок) КАК КоличествоУпаковок,
| СУММА(Товары.КоличествоПоРНПТ) КАК КоличествоПоРНПТ,
| СУММА(Товары.Сумма) КАК Сумма,
| СУММА(Товары.СуммаНДС) КАК СуммаНДС,
#Удаление
| Товары.ИдентификаторСтроки КАК ИдентификаторСтроки,
#КонецУдаления
| Товары.Серия КАК Серия
|ПОМЕСТИТЬ ТоварыИсправляемогоДокумента
|ИЗ
| ТоварыУслугиИсправляемогоДокументаРазвернутые КАК Товары
| ЛЕВОЕ СОЕДИНЕНИЕ ДанныеДокументаПоступления КАК ДанныеДокументаПоступления
| ПО (ИСТИНА)
|ГДЕ
| (Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар)
| ИЛИ Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
| И НЕ ДанныеДокументаПоступления.ВернутьМногооборотнуюТару)
|
|СГРУППИРОВАТЬ ПО
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Упаковка,
| Товары.СтавкаНДС,
| Товары.НомерГТД,
#Удаление
| Товары.ИдентификаторСтроки,
#КонецУдаления
| Товары.Серия
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Товары.Номенклатура КАК Номенклатура,
| Товары.Характеристика КАК Характеристика,
| Товары.Упаковка КАК Упаковка,
| Товары.СтавкаНДС КАК СтавкаНДС,
| Товары.НомерГТД КАК НомерГТД,
| СУММА(Товары.Количество) КАК Количество,
| СУММА(Товары.КоличествоУпаковок) КАК КоличествоУпаковок,
| СУММА(Товары.КоличествоПоРНПТ) КАК КоличествоПоРНПТ,
| СУММА(Товары.Сумма) КАК Сумма,
| СУММА(Товары.СуммаНДС) КАК СуммаНДС,
| Товары.ИдентификаторСтроки КАК ИдентификаторСтроки,
| Товары.Серия КАК Серия
|ПОМЕСТИТЬ ТоварыДокументаДоКорректировки
|ИЗ
| ТоварыУслугиДокументаДоКорректировкиРазвернутые КАК Товары,
| ДанныеДокументаПоступления КАК ДанныеДокументаПоступления
|ГДЕ
| (Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар)
| ИЛИ Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
| И НЕ ДанныеДокументаПоступления.ВернутьМногооборотнуюТару)
|
|СГРУППИРОВАТЬ ПО
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Упаковка,
| Товары.СтавкаНДС,
| Товары.НомерГТД,
| Товары.ИдентификаторСтроки,
| Товары.Серия
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Товары.Номенклатура КАК Номенклатура,
| Товары.Характеристика КАК Характеристика,
| Товары.Упаковка КАК Упаковка,
| Товары.СтавкаНДС КАК СтавкаНДС,
| Товары.НомерГТД КАК НомерГТД,
| СУММА(Товары.Количество) КАК Количество,
| СУММА(Товары.КоличествоУпаковок) КАК КоличествоУпаковок,
| СУММА(Товары.КоличествоПоРНПТ) КАК КоличествоПоРНПТ,
| СУММА(Товары.Сумма) КАК Сумма,
| СУММА(Товары.СуммаНДС) КАК СуммаНДС,
| СУММА(Товары.СуммаСНДС) КАК СуммаСНДС,
| Товары.Серия КАК Серия
|ПОМЕСТИТЬ ТоварыИсправительногоДокумента
|ИЗ
| Документ.КорректировкаПриобретения.Товары КАК Товары,
| ДанныеДокументаПоступления КАК ДанныеДокументаПоступления
|ГДЕ
| Товары.Ссылка = &Ссылка
| И (Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар)
| ИЛИ Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
| И НЕ ДанныеДокументаПоступления.ВернутьМногооборотнуюТару)
|
|СГРУППИРОВАТЬ ПО
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Упаковка,
| Товары.СтавкаНДС,
| Товары.НомерГТД,
| Товары.Серия
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Т.Номенклатура КАК Номенклатура,
| Т.Характеристика КАК Характеристика,
| Т.СтавкаНДС КАК СтавкаНДС,
| Т.НомерГТД КАК НомерГТД,
| МАКСИМУМ(Т.Упаковка) КАК Упаковка,
| МАКСИМУМ(Т.ТоварыИсправляемогоДокумента_Количество) КАК ТоварыИсправляемогоДокумента_Количество,
| МАКСИМУМ(Т.ТоварыИсправляемогоДокумента_КоличествоУпаковок) КАК ТоварыИсправляемогоДокумента_КоличествоУпаковок,
| МАКСИМУМ(Т.ТоварыИсправляемогоДокумента_КоличествоПоРНПТ) КАК ТоварыИсправляемогоДокумента_КоличествоПоРНПТ,
| МАКСИМУМ(Т.ТоварыИсправляемогоДокумента_Сумма) КАК ТоварыИсправляемогоДокумента_Сумма,
| МАКСИМУМ(Т.ТоварыИсправляемогоДокумента_СуммаНДС) КАК ТоварыИсправляемогоДокумента_СуммаНДС,
| МАКСИМУМ(Т.ТоварыИсправительногоДокумента_Количество) КАК ТоварыИсправительногоДокумента_Количество,
| МАКСИМУМ(Т.ТоварыИсправительногоДокумента_КоличествоУпаковок) КАК ТоварыИсправительногоДокумента_КоличествоУпаковок,
| МАКСИМУМ(Т.ТоварыИсправительногоДокумента_КоличествоПоРНПТ) КАК ТоварыИсправительногоДокумента_КоличествоПоРНПТ,
| МАКСИМУМ(Т.ТоварыИсправительногоДокумента_Сумма) КАК ТоварыИсправительногоДокумента_Сумма,
| МАКСИМУМ(Т.ТоварыИсправительногоДокумента_СуммаНДС) КАК ТоварыИсправительногоДокумента_СуммаНДС,
| МАКСИМУМ(Т.ТоварыИсправительногоДокумента_СуммаСНДС) КАК ТоварыИсправительногоДокумента_СуммаСНДС,
| МАКСИМУМ(Т.ТоварыДокументаДоКорректировки_Количество) КАК ТоварыДокументаДоКорректировки_Количество,
| МАКСИМУМ(Т.ТоварыДокументаДоКорректировки_КоличествоУпаковок) КАК ТоварыДокументаДоКорректировки_КоличествоУпаковок,
| МАКСИМУМ(Т.ТоварыДокументаДоКорректировки_КоличествоПоРНПТ) КАК ТоварыДокументаДоКорректировки_КоличествоПоРНПТ,
| МАКСИМУМ(Т.ТоварыДокументаДоКорректировки_Сумма) КАК ТоварыДокументаДоКорректировки_Сумма,
| МАКСИМУМ(Т.ТоварыДокументаДоКорректировки_СуммаНДС) КАК ТоварыДокументаДоКорректировки_СуммаНДС,
#Удаление
| Т.ИдентификаторСтроки КАК ИдентификаторСтроки,
#КонецУдаления
| Т.Серия КАК Серия
|ПОМЕСТИТЬ РезультатСопоставленияТоваровВрем
|ИЗ
| (ВЫБРАТЬ
| ТоварыИсправляемогоДокумента.Номенклатура КАК Номенклатура,
| ТоварыИсправляемогоДокумента.Характеристика КАК Характеристика,
| NULL КАК Упаковка,
| ТоварыИсправляемогоДокумента.СтавкаНДС КАК СтавкаНДС,
| ТоварыИсправляемогоДокумента.НомерГТД КАК НомерГТД,
| ТоварыИсправляемогоДокумента.Количество КАК ТоварыИсправляемогоДокумента_Количество,
| ТоварыИсправляемогоДокумента.Сумма КАК ТоварыИсправляемогоДокумента_Сумма,
| ТоварыИсправляемогоДокумента.СуммаНДС КАК ТоварыИсправляемогоДокумента_СуммаНДС,
| ТоварыИсправляемогоДокумента.КоличествоУпаковок КАК ТоварыИсправляемогоДокумента_КоличествоУпаковок,
| ТоварыИсправляемогоДокумента.КоличествоПоРНПТ КАК ТоварыИсправляемогоДокумента_КоличествоПоРНПТ,
| NULL КАК ТоварыИсправительногоДокумента_Количество,
| NULL КАК ТоварыИсправительногоДокумента_КоличествоУпаковок,
| NULL КАК ТоварыИсправительногоДокумента_КоличествоПоРНПТ,
| NULL КАК ТоварыИсправительногоДокумента_Сумма,
| NULL КАК ТоварыИсправительногоДокумента_СуммаСНДС,
| NULL КАК ТоварыИсправительногоДокумента_СуммаНДС,
| NULL КАК ТоварыДокументаДоКорректировки_Количество,
| NULL КАК ТоварыДокументаДоКорректировки_Сумма,
| NULL КАК ТоварыДокументаДоКорректировки_СуммаНДС,
| NULL КАК ТоварыДокументаДоКорректировки_КоличествоУпаковок,
| NULL КАК ТоварыДокументаДоКорректировки_КоличествоПоРНПТ,
#Удаление
| ТоварыИсправляемогоДокумента.ИдентификаторСтроки КАК ИдентификаторСтроки,
#КонецУдаления
#Вставка
| NULL КАК ИдентификаторСтроки,
#КонецВставки
| ТоварыИсправляемогоДокумента.Серия КАК Серия
| ИЗ
| ТоварыИсправляемогоДокумента КАК ТоварыИсправляемогоДокумента
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| ТоварыИсправительногоДокумента.Номенклатура,
| ТоварыИсправительногоДокумента.Характеристика,
| ТоварыИсправительногоДокумента.Упаковка,
| ТоварыИсправительногоДокумента.СтавкаНДС,
| ТоварыИсправительногоДокумента.НомерГТД,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| ТоварыИсправительногоДокумента.Количество,
| ТоварыИсправительногоДокумента.КоличествоУпаковок,
| ТоварыИсправительногоДокумента.КоличествоПоРНПТ,
| ТоварыИсправительногоДокумента.Сумма,
| ТоварыИсправительногоДокумента.СуммаСНДС,
| ТоварыИсправительногоДокумента.СуммаНДС,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| """",
| ТоварыИсправительногоДокумента.Серия
| ИЗ
| ТоварыИсправительногоДокумента КАК ТоварыИсправительногоДокумента
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| ТоварыДокументаДоКорректировки.Номенклатура,
| ТоварыДокументаДоКорректировки.Характеристика,
| NULL,
| ТоварыДокументаДоКорректировки.СтавкаНДС,
| ТоварыДокументаДоКорректировки.НомерГТД,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| ТоварыДокументаДоКорректировки.Количество,
| ТоварыДокументаДоКорректировки.Сумма,
| ТоварыДокументаДоКорректировки.СуммаНДС,
| ТоварыДокументаДоКорректировки.КоличествоУпаковок,
| ТоварыДокументаДоКорректировки.КоличествоПоРНПТ,
| ТоварыДокументаДоКорректировки.ИдентификаторСтроки,
| ТоварыДокументаДоКорректировки.Серия
| ИЗ
| ТоварыДокументаДоКорректировки КАК ТоварыДокументаДоКорректировки) КАК Т
|
|СГРУППИРОВАТЬ ПО
| Т.Номенклатура,
| Т.Характеристика,
| Т.СтавкаНДС,
| Т.НомерГТД,
#Удаление
| Т.ИдентификаторСтроки,
#КонецУдаления
| Т.Серия
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| РезультатСопоставленияТоваровВрем.Номенклатура КАК Номенклатура,
| РезультатСопоставленияТоваровВрем.Характеристика КАК Характеристика,
| РезультатСопоставленияТоваровВрем.Упаковка КАК Упаковка,
| РезультатСопоставленияТоваровВрем.СтавкаНДС КАК СтавкаНДС,
| РезультатСопоставленияТоваровВрем.НомерГТД КАК НомерГТД,
| РезультатСопоставленияТоваровВрем.ТоварыДокументаДоКорректировки_Количество КАК КоличествоДоКорректировки,
| РезультатСопоставленияТоваровВрем.ТоварыДокументаДоКорректировки_КоличествоУпаковок КАК КоличествоУпаковокДоКорректировки,
| РезультатСопоставленияТоваровВрем.ТоварыДокументаДоКорректировки_КоличествоПоРНПТ КАК КоличествоПоРНПТДоКорректировки,
| РезультатСопоставленияТоваровВрем.ТоварыДокументаДоКорректировки_Сумма КАК СуммаДоКорректировки,
| РезультатСопоставленияТоваровВрем.ТоварыДокументаДоКорректировки_СуммаНДС КАК СуммаНДСДоКорректировки,
| РезультатСопоставленияТоваровВрем.ТоварыИсправляемогоДокумента_Количество КАК КоличествоДоИзменения,
| РезультатСопоставленияТоваровВрем.ТоварыИсправляемогоДокумента_КоличествоУпаковок КАК КоличествоУпаковокДоИзменения,
| РезультатСопоставленияТоваровВрем.ТоварыИсправляемогоДокумента_КоличествоПоРНПТ КАК КоличествоПоРНПТДоИзменения,
| РезультатСопоставленияТоваровВрем.ТоварыИсправляемогоДокумента_Сумма КАК СуммаДоИзменения,
| РезультатСопоставленияТоваровВрем.ТоварыИсправляемогоДокумента_СуммаНДС КАК СуммаНДСДоИзменения,
| РезультатСопоставленияТоваровВрем.ТоварыИсправительногоДокумента_Количество КАК Количество,
| РезультатСопоставленияТоваровВрем.ТоварыИсправительногоДокумента_КоличествоУпаковок КАК КоличествоУпаковок,
| РезультатСопоставленияТоваровВрем.ТоварыИсправительногоДокумента_КоличествоПоРНПТ КАК КоличествоПоРНПТ,
| РезультатСопоставленияТоваровВрем.ТоварыИсправительногоДокумента_Сумма КАК Сумма,
| РезультатСопоставленияТоваровВрем.ТоварыИсправительногоДокумента_СуммаНДС КАК СуммаНДС,
| РезультатСопоставленияТоваровВрем.ТоварыИсправительногоДокумента_СуммаСНДС КАК СуммаСНДС,
| ВЫБОР
| КОГДА ЕСТЬNULL(РезультатСопоставленияТоваровВрем.ТоварыДокументаДоКорректировки_Сумма, РезультатСопоставленияТоваровВрем.ТоварыИсправляемогоДокумента_Сумма) ЕСТЬ NULL
| ТОГДА ЛОЖЬ
| ИНАЧЕ ИСТИНА
| КОНЕЦ КАК ЕстьВДокументеПоступленияРеализации,
#Удаление
| РезультатСопоставленияТоваровВрем.ИдентификаторСтроки КАК ИдентификаторСтроки,
#КонецУдаления
| РезультатСопоставленияТоваровВрем.Серия КАК Серия
|ПОМЕСТИТЬ РезультатСопоставленияТоваров
|ИЗ
| РезультатСопоставленияТоваровВрем КАК РезультатСопоставленияТоваровВрем
|
|ИНДЕКСИРОВАТЬ ПО
| РезультатСопоставленияТоваровВрем.Номенклатура
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Товары.Номенклатура КАК Номенклатура,
| Товары.Содержание КАК Содержание,
| МАКСИМУМ(Товары.НомерСтроки) КАК НомерСтроки
|ПОМЕСТИТЬ ВТНомерСтрок
|ИЗ
| ТоварыУслугиИсправляемогоДокументаРазвернутые КАК Товары
|
|СГРУППИРОВАТЬ ПО
| Товары.Номенклатура,
| Товары.Содержание
|
|ИНДЕКСИРОВАТЬ ПО
| Номенклатура,
| Содержание
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| РезультатСопоставления.Номенклатура КАК Номенклатура,
| РезультатСопоставления.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| &ТекстЗапросаХарактеристика,
| &ТекстЗапросаУпаковка,
| &ТекстЗапросаГТД,
| &ТекстЗапросаГТДДоИзменения,
| &ТекстЗапросаРНПТ,
| &ТекстЗапросаРНПТДоКорректировки,
| &ТекстЗапросаРНПТДоИзменения,
| РезультатСопоставления.СтавкаНДС КАК СтавкаНДС,
| РезультатСопоставления.СтавкаНДС КАК СтавкаНДСДоИзменения,
| РезультатСопоставления.КоличествоДоКорректировки КАК КоличествоДоКорректировки,
| РезультатСопоставления.СуммаДоКорректировки КАК СуммаДоКорректировки,
| РезультатСопоставления.СуммаНДСДоКорректировки КАК СуммаНДСДоКорректировки,
| РезультатСопоставления.КоличествоДоИзменения КАК КоличествоДоИзменения,
| РезультатСопоставления.СуммаДоИзменения КАК СуммаДоИзменения,
| РезультатСопоставления.СуммаНДСДоИзменения КАК СуммаНДСДоИзменения,
| РезультатСопоставления.Количество КАК Количество,
| РезультатСопоставления.КоличествоУпаковок КАК КоличествоУпаковок,
| РезультатСопоставления.КоличествоУпаковокДоКорректировки КАК КоличествоУпаковокДоКорректировки,
| РезультатСопоставления.КоличествоУпаковокДоИзменения КАК КоличествоУпаковокДоИзменения,
| РезультатСопоставления.Сумма КАК Сумма,
| РезультатСопоставления.СуммаНДС КАК СуммаНДС,
| РезультатСопоставления.СуммаСНДС КАК СуммаСНДС,
| ВЫБОР
| КОГДА ЕСТЬNULL(РезультатСопоставления.КоличествоДоКорректировки, 0) = 0
| ТОГДА 0
| ИНАЧЕ ВЫБОР
| КОГДА РезультатСопоставления.СуммаДоКорректировки / РезультатСопоставления.КоличествоДоКорректировки < 0.01
| ТОГДА 0.01
| ИНАЧЕ ВЫРАЗИТЬ(РезультатСопоставления.СуммаДоКорректировки / РезультатСопоставления.КоличествоДоКорректировки КАК ЧИСЛО(31, 2))
| КОНЕЦ
| КОНЕЦ КАК ЦенаДоКорректировки,
| ВЫБОР
| КОГДА ЕСТЬNULL(РезультатСопоставления.КоличествоДоИзменения, 0) = 0
| ТОГДА 0
| ИНАЧЕ ВЫБОР
| КОГДА РезультатСопоставления.СуммаДоИзменения / РезультатСопоставления.КоличествоДоИзменения < 0.01
| ТОГДА 0.01
| ИНАЧЕ ВЫРАЗИТЬ(РезультатСопоставления.СуммаДоИзменения / РезультатСопоставления.КоличествоДоИзменения КАК ЧИСЛО(31, 2))
| КОНЕЦ
| КОНЕЦ КАК ЦенаДоИзменения,
| ВЫБОР
| КОГДА ЕСТЬNULL(РезультатСопоставления.Количество, 0) = 0
| ТОГДА 0
| ИНАЧЕ ВЫБОР
| КОГДА РезультатСопоставления.Сумма / РезультатСопоставления.Количество < 0.01
| ТОГДА 0.01
| ИНАЧЕ ВЫРАЗИТЬ(РезультатСопоставления.Сумма / РезультатСопоставления.Количество КАК ЧИСЛО(31, 2))
| КОНЕЦ
| КОНЕЦ КАК Цена,
| РезультатСопоставления.ЕстьВДокументеПоступленияРеализации КАК ЕстьВДокументеПоступленияРеализации,
| ЕстьNull(ВТНомерСтрок.НомерСтроки, 0) КАК НомерСтрокиДокумента,
#Удаление
| РезультатСопоставления.ИдентификаторСтроки КАК ИдентификаторСтроки,
#КонецУдаления
| &ТекстЗапросаСерия
|ИЗ
| РезультатСопоставленияТоваров КАК РезультатСопоставления
| ЛЕВОЕ СОЕДИНЕНИЕ ВТНомерСтрок КАК ВТНомерСтрок
| ПО РезультатСопоставления.Номенклатура = ВТНомерСтрок.Номенклатура
|
|УПОРЯДОЧИТЬ ПО
| РезультатСопоставления.ЕстьВДокументеПоступленияРеализации УБЫВ,
| ЕстьNull(ВТНомерСтрок.НомерСтроки, 0)
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Услуги.Номенклатура КАК Номенклатура,
| Услуги.Содержание КАК Содержание,
| Услуги.СтавкаНДС КАК СтавкаНДС,
| Услуги.СтатьяРасходов КАК СтатьяРасходов,
| СУММА(Услуги.Количество) КАК Количество,
| СУММА(Услуги.Сумма) КАК Сумма,
| СУММА(Услуги.СуммаНДС) КАК СуммаНДС
|ПОМЕСТИТЬ УслугиИсправляемогоДокумента
|ИЗ
| ТоварыУслугиИсправляемогоДокументаРазвернутые КАК Услуги
|ГДЕ
| (Услуги.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Услуга)
| ИЛИ Услуги.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
| ИЛИ &ПоступлениеУслуг)
|
|СГРУППИРОВАТЬ ПО
| Услуги.Номенклатура,
| Услуги.Содержание,
| Услуги.СтавкаНДС,
| Услуги.СтатьяРасходов
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Услуги.Номенклатура КАК Номенклатура,
| Услуги.Содержание КАК Содержание,
| Услуги.СтавкаНДС КАК СтавкаНДС,
| Услуги.СтатьяРасходов КАК СтатьяРасходов,
| СУММА(Услуги.Количество) КАК Количество,
| СУММА(Услуги.Сумма) КАК Сумма,
| СУММА(Услуги.СуммаНДС) КАК СуммаНДС
|ПОМЕСТИТЬ УслугиДокументаДоКорректировки
|ИЗ
| ТоварыУслугиДокументаДоКорректировкиРазвернутые КАК Услуги
|ГДЕ
| (Услуги.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Услуга)
| ИЛИ Услуги.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
| ИЛИ &ПоступлениеУслуг)
|
|СГРУППИРОВАТЬ ПО
| Услуги.Номенклатура,
| Услуги.Содержание,
| Услуги.СтавкаНДС,
| Услуги.СтатьяРасходов
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| КорректировкаПоступленияТовары.Номенклатура КАК Номенклатура,
| КорректировкаПоступленияТовары.Характеристика КАК Характеристика,
| КорректировкаПоступленияТовары.Содержание КАК Содержание,
| КорректировкаПоступленияТовары.СтавкаНДС КАК СтавкаНДС,
| КорректировкаПоступленияТовары.СтатьяРасходов КАК СтатьяРасходов,
| СУММА(КорректировкаПоступленияТовары.Количество) КАК Количество,
| СУММА(КорректировкаПоступленияТовары.Сумма) КАК Сумма,
| СУММА(КорректировкаПоступленияТовары.СуммаНДС) КАК СуммаНДС,
| СУММА(КорректировкаПоступленияТовары.СуммаСНДС) КАК СуммаСНДС
|ПОМЕСТИТЬ УслугиИсправительногоДокумента
|ИЗ
| Документ.КорректировкаПриобретения.Товары КАК КорректировкаПоступленияТовары
|ГДЕ
| КорректировкаПоступленияТовары.Ссылка = &Ссылка
| И (КорректировкаПоступленияТовары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Услуга)
| ИЛИ КорректировкаПоступленияТовары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
| ИЛИ &ПоступлениеУслуг)
|
|СГРУППИРОВАТЬ ПО
| КорректировкаПоступленияТовары.Номенклатура,
| КорректировкаПоступленияТовары.Характеристика,
| КорректировкаПоступленияТовары.Содержание,
| КорректировкаПоступленияТовары.СтавкаНДС,
| КорректировкаПоступленияТовары.СтатьяРасходов
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| Т.Номенклатура КАК Номенклатура,
| Т.Содержание КАК Содержание,
| Т.СтавкаНДС КАК СтавкаНДС,
| Т.СтатьяРасходов КАК СтатьяРасходов,
| МАКСИМУМ(Т.УслугиИсправляемогоДокумента_Количество) КАК УслугиИсправляемогоДокумента_Количество,
| МАКСИМУМ(Т.УслугиИсправляемогоДокумента_Сумма) КАК УслугиИсправляемогоДокумента_Сумма,
| МАКСИМУМ(Т.УслугиИсправляемогоДокумента_СуммаНДС) КАК УслугиИсправляемогоДокумента_СуммаНДС,
| МАКСИМУМ(Т.УслугиИсправительногоДокумента_Количество) КАК УслугиИсправительногоДокумента_Количество,
| МАКСИМУМ(Т.УслугиИсправительногоДокумента_Сумма) КАК УслугиИсправительногоДокумента_Сумма,
| МАКСИМУМ(Т.УслугиИсправительногоДокумента_СуммаНДС) КАК УслугиИсправительногоДокумента_СуммаНДС,
| МАКСИМУМ(Т.УслугиИсправительногоДокумента_СуммаСНДС) КАК УслугиИсправительногоДокумента_СуммаСНДС,
| МАКСИМУМ(Т.УслугиДокументаДоКорректировки_Количество) КАК УслугиДокументаДоКорректировки_Количество,
| МАКСИМУМ(Т.УслугиДокументаДоКорректировки_Сумма) КАК УслугиДокументаДоКорректировки_Сумма,
| МАКСИМУМ(Т.УслугиДокументаДоКорректировки_СуммаНДС) КАК УслугиДокументаДоКорректировки_СуммаНДС
|ПОМЕСТИТЬ РезультатСопоставленияУслугВрем
|ИЗ
| (ВЫБРАТЬ
| УслугиИсправляемогоДокумента.Номенклатура КАК Номенклатура,
| УслугиИсправляемогоДокумента.Содержание КАК Содержание,
| УслугиИсправляемогоДокумента.СтавкаНДС КАК СтавкаНДС,
| УслугиИсправляемогоДокумента.СтатьяРасходов КАК СтатьяРасходов,
| УслугиИсправляемогоДокумента.Количество КАК УслугиИсправляемогоДокумента_Количество,
| УслугиИсправляемогоДокумента.Сумма КАК УслугиИсправляемогоДокумента_Сумма,
| УслугиИсправляемогоДокумента.СуммаНДС КАК УслугиИсправляемогоДокумента_СуммаНДС,
| NULL КАК УслугиИсправительногоДокумента_Количество,
| NULL КАК УслугиИсправительногоДокумента_Сумма,
| NULL КАК УслугиИсправительногоДокумента_СуммаСНДС,
| NULL КАК УслугиИсправительногоДокумента_СуммаНДС,
| NULL КАК УслугиДокументаДоКорректировки_Количество,
| NULL КАК УслугиДокументаДоКорректировки_Сумма,
| NULL КАК УслугиДокументаДоКорректировки_СуммаНДС
| ИЗ
| УслугиИсправляемогоДокумента КАК УслугиИсправляемогоДокумента
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| УслугиИсправительногоДокумента.Номенклатура,
| УслугиИсправительногоДокумента.Содержание,
| УслугиИсправительногоДокумента.СтавкаНДС,
| УслугиИсправительногоДокумента.СтатьяРасходов,
| NULL,
| NULL,
| NULL,
| УслугиИсправительногоДокумента.Количество,
| УслугиИсправительногоДокумента.Сумма,
| УслугиИсправительногоДокумента.СуммаСНДС,
| УслугиИсправительногоДокумента.СуммаНДС,
| NULL,
| NULL,
| NULL
| ИЗ
| УслугиИсправительногоДокумента КАК УслугиИсправительногоДокумента
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| УслугиДокументаДоКорректировки.Номенклатура,
| УслугиДокументаДоКорректировки.Содержание,
| УслугиДокументаДоКорректировки.СтавкаНДС,
| УслугиДокументаДоКорректировки.СтатьяРасходов,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| NULL,
| УслугиДокументаДоКорректировки.Количество,
| УслугиДокументаДоКорректировки.Сумма,
| УслугиДокументаДоКорректировки.СуммаНДС
| ИЗ
| УслугиДокументаДоКорректировки КАК УслугиДокументаДоКорректировки) КАК Т
|
|СГРУППИРОВАТЬ ПО
| Т.Номенклатура,
| Т.Содержание,
| Т.СтавкаНДС,
| Т.СтатьяРасходов
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| РезультатСопоставленияУслугВрем.Номенклатура КАК Номенклатура,
| РезультатСопоставленияУслугВрем.Содержание КАК Содержание,
| РезультатСопоставленияУслугВрем.СтавкаНДС КАК СтавкаНДС,
| РезультатСопоставленияУслугВрем.СтатьяРасходов КАК СтатьяРасходов,
| РезультатСопоставленияУслугВрем.УслугиДокументаДоКорректировки_Количество КАК КоличествоДоКорректировки,
| РезультатСопоставленияУслугВрем.УслугиДокументаДоКорректировки_Сумма КАК СуммаДоКорректировки,
| РезультатСопоставленияУслугВрем.УслугиДокументаДоКорректировки_СуммаНДС КАК СуммаНДСДоКорректировки,
| РезультатСопоставленияУслугВрем.УслугиИсправляемогоДокумента_Количество КАК КоличествоДоИзменения,
| РезультатСопоставленияУслугВрем.УслугиИсправляемогоДокумента_Сумма КАК СуммаДоИзменения,
| РезультатСопоставленияУслугВрем.УслугиИсправляемогоДокумента_СуммаНДС КАК СуммаНДСДоИзменения,
| РезультатСопоставленияУслугВрем.УслугиИсправительногоДокумента_Количество КАК Количество,
| РезультатСопоставленияУслугВрем.УслугиИсправительногоДокумента_Сумма КАК Сумма,
| РезультатСопоставленияУслугВрем.УслугиИсправительногоДокумента_СуммаНДС КАК СуммаНДС,
| РезультатСопоставленияУслугВрем.УслугиИсправительногоДокумента_СуммаСНДС КАК СуммаСНДС,
| ВЫБОР
| КОГДА ЕСТЬNULL(РезультатСопоставленияУслугВрем.УслугиИсправляемогоДокумента_Сумма, РезультатСопоставленияУслугВрем.УслугиДокументаДоКорректировки_Сумма) ЕСТЬ NULL
| ТОГДА ЛОЖЬ
| ИНАЧЕ ИСТИНА
| КОНЕЦ КАК ЕстьВДокументеПоступленияРеализации
|ПОМЕСТИТЬ РезультатСопоставленияУслуг
|ИЗ
| РезультатСопоставленияУслугВрем КАК РезультатСопоставленияУслугВрем
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| РезультатСопоставления.Номенклатура КАК Номенклатура,
| РезультатСопоставления.Содержание КАК Содержание,
| РезультатСопоставления.Содержание КАК СодержаниеДоИзменения,
| РезультатСопоставления.СтавкаНДС КАК СтавкаНДС,
| РезультатСопоставления.СтавкаНДС КАК СтавкаНДСДоИзменения,
| РезультатСопоставления.КоличествоДоКорректировки КАК КоличествоДоКорректировки,
| РезультатСопоставления.СуммаДоКорректировки КАК СуммаДоКорректировки,
| РезультатСопоставления.СуммаНДСДоКорректировки КАК СуммаНДСДоКорректировки,
| РезультатСопоставления.КоличествоДоИзменения КАК КоличествоДоИзменения,
| РезультатСопоставления.СуммаДоИзменения КАК СуммаДоИзменения,
| РезультатСопоставления.СуммаНДСДоИзменения КАК СуммаНДСДоИзменения,
| РезультатСопоставления.Количество КАК Количество,
| РезультатСопоставления.Сумма КАК Сумма,
| РезультатСопоставления.СуммаНДС КАК СуммаНДС,
| РезультатСопоставления.СуммаСНДС КАК СуммаСНДС,
| ВЫБОР
| КОГДА НЕ(РезультатСопоставления.Количество ЕСТЬ NULL
| ИЛИ РезультатСопоставления.Количество = 0)
| ТОГДА ВЫРАЗИТЬ(РезультатСопоставления.Сумма / РезультатСопоставления.Количество КАК ЧИСЛО(31, 2))
| ИНАЧЕ 0
| КОНЕЦ КАК Цена,
| ВЫБОР
| КОГДА НЕ(РезультатСопоставления.КоличествоДоИзменения ЕСТЬ NULL
| ИЛИ РезультатСопоставления.КоличествоДоИзменения = 0)
| ТОГДА ВЫРАЗИТЬ(РезультатСопоставления.СуммаДоИзменения / РезультатСопоставления.КоличествоДоИзменения КАК ЧИСЛО(31, 2))
| ИНАЧЕ 0
| КОНЕЦ КАК ЦенаДоИзменения,
| ВЫБОР
| КОГДА НЕ(РезультатСопоставления.КоличествоДоКорректировки ЕСТЬ NULL
| ИЛИ РезультатСопоставления.КоличествоДоКорректировки = 0)
| ТОГДА ВЫРАЗИТЬ(РезультатСопоставления.СуммаДоКорректировки / РезультатСопоставления.КоличествоДоКорректировки КАК ЧИСЛО(31, 2))
| ИНАЧЕ 0
| КОНЕЦ КАК ЦенаДоКорректировки,
| РезультатСопоставления.СтатьяРасходов КАК СтатьяРасходов,
| РезультатСопоставления.СтатьяРасходов.КорреспондирующийСчет КАК СчетЗатрат,
| РезультатСопоставления.СтатьяРасходов.КорреспондирующийСчет КАК СчетЗатратНУ,
| РезультатСопоставления.ЕстьВДокументеПоступленияРеализации КАК ЕстьВДокументеПоступленияРеализации,
| ЕстьNull(ВТНомерСтрок.НомерСтроки, 0) КАК НомерСтрокиДокумента
|ИЗ
| РезультатСопоставленияУслуг КАК РезультатСопоставления
| ЛЕВОЕ СОЕДИНЕНИЕ ВТНомерСтрок КАК ВТНомерСтрок
| ПО РезультатСопоставления.Номенклатура = ВТНомерСтрок.Номенклатура
| И РезультатСопоставления.Содержание = ВТНомерСтрок.Содержание
|
|УПОРЯДОЧИТЬ ПО
| ЕстьВДокументеПоступленияРеализации УБЫВ,
| ЕстьNull(ВТНомерСтрок.НомерСтроки, 0)";
Показать
(10) Кстати, проблемы были еще и в печатных формах корректировок реализации. Там вываливался весь перечень товаров вместо строк с расхождениями. Были проблемы с определением того, изменилась строка или нет. в УТ 11.5.20.104 ошибку исправили. Но этот злосчастный запрос пока так и не исправлен. При обновлении &ИзменениеИКонтроль все еще не ругается.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот