Корректировка приобретения / Модуль менеджера

файл
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

#Область ПрограммныйИнтерфейс

#Область Проведение

// Описывает учетные механизмы используемые в документе для регистрации в механизме проведения.
//
// Параметры:
//  МеханизмыДокумента - Массив - список имен учетных механизмов, для которых будет выполнена
//              регистрация в механизме проведения.
//
Процедура ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента) Экспорт
	
	МеханизмыДокумента.Добавить("Взаиморасчеты");
	МеханизмыДокумента.Добавить("Обеспечение");
	МеханизмыДокумента.Добавить("ОборотныеРегистрыУправленческогоУчета");
	МеханизмыДокумента.Добавить("ОперативныйУчетТоваровОрганизаций");
	МеханизмыДокумента.Добавить("ПриемНаОтветхранение");
	МеханизмыДокумента.Добавить("РеестрДокументов");
	МеханизмыДокумента.Добавить("СебестоимостьИПартионныйУчет");
	МеханизмыДокумента.Добавить("СерийныйУчет");
	МеханизмыДокумента.Добавить("СуммыДокументовВВалютахУчета");
	МеханизмыДокумента.Добавить("АдресныйСклад");
	МеханизмыДокумента.Добавить("УчетДоходовРасходов");
	МеханизмыДокумента.Добавить("УчетИмпорта");
	МеханизмыДокумента.Добавить("УчетНДС");
	МеханизмыДокумента.Добавить("УчетПрочихАктивовПассивов");
	МеханизмыДокумента.Добавить("УчетРабот");
	МеханизмыДокумента.Добавить("ОформлениеОтчетовКомитентуОЗакупках");
	МеханизмыДокумента.Добавить("ИсправлениеДокументов");
	//++ НЕ УТ
	МеханизмыДокумента.Добавить("ПередачаВПереработку");
	//-- НЕ УТ
	КорректировкаПриобретенияЛокализация.ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента);
	
КонецПроцедуры

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

#КонецОбласти

// СтандартныеПодсистемы.ВерсионированиеОбъектов

// Определяет настройки объекта для подсистемы ВерсионированиеОбъектов.
//
// Параметры:
//  Настройки - Структура - настройки подсистемы.
Процедура ПриОпределенииНастроекВерсионированияОбъектов(Настройки) Экспорт

КонецПроцедуры

// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов

// Определяет список команд создания на основании.
//
// Параметры:
//  КомандыСозданияНаОсновании - см. СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании.КомандыСозданияНаОсновании
//  Параметры - см. СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании.Параметры
//
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
	
	Обработки.СправочноеРазмещениеНоменклатуры.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
	БизнесПроцессы.Задание.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
	Документы.КорректировкаГрафикаВзаиморасчетов.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
	ИсправлениеДокументов.ДобавитьКомандуИсправление(КомандыСозданияНаОсновании, ПустаяСсылка().Метаданные());
	ИсправлениеДокументов.ДобавитьКомандуСторно(КомандыСозданияНаОсновании, ПустаяСсылка().Метаданные());
	
	Справочники.Претензии.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
	КорректировкаПриобретенияЛокализация.ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры);
	
	Документы.НачислениеРеверсивногоНДС.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
КонецПроцедуры

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

		Возврат КомандаСоздатьНаОсновании;
	КонецЕсли;

	Возврат Неопределено;
КонецФункции

// Определяет список команд отчетов.
//
// Параметры:
//   КомандыОтчетов - См. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.КомандыОтчетов
//   Параметры - См. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.Параметры
//
Процедура ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры) Экспорт
	
	КомандаОтчет = Отчеты.СправкаРасчетНачисленияПроцентныхРасходовДисконтирования.ДобавитьКомандуОтчета(КомандыОтчетов);
	Если КомандаОтчет <> Неопределено Тогда
		КомандаОтчет.ВидимостьВФормах = "ФормаДокумента,ФормаСписка,СписокДокументов";
	КонецЕсли;
	
	ВзаиморасчетыСервер.КарточкаРасчетовСПоставщиком_ДобавитьКомандуОтчетаПоДокументам(КомандыОтчетов);
	ВзаиморасчетыСервер.ЗадолженностьПоставщикам_ДобавитьКомандуОтчетаПоДокументам(КомандыОтчетов);
	
	КорректировкаПриобретенияЛокализация.ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры);

КонецПроцедуры

// Возвращает массив допустимых наименований входящих документов.
// 
// Возвращаемое значение:
// 	Массив - массив наименований.
Функция НаименованияВходящихДокументов() Экспорт
	МассивНаименований = Новый Массив();
	КорректировкаПриобретенияЛокализация.ДополнитьНаименованияВходящихДокументов(МассивНаименований);
	Возврат МассивНаименований
КонецФункции

#Область Заполнение

// Заполняет таблицу реквизитов, зависимых от типа документа-основания.
//
// Параметры:
//	ДокументОснование - ДокументСсылка - Документ, на основании которого введена корректировка;
//	МассивВсехРеквизитов - Массив из Строка - реквизиты, которые не зависят от документа-основания;
//	МассивРеквизитовОперации - Массив из Строка - реквизиты, которые зависят от документа-основания.
//	ТипКорректировки - Неопределено, ПеречислениеСсылка.ТипыКорректировки - тип корректировки до ввода остатков.
//
Процедура ЗаполнитьИменаРеквизитовПоОснованию(ДокументОснование, МассивВсехРеквизитов, МассивРеквизитовОперации, ТипКорректировки = Неопределено) Экспорт
	
	МассивВсехРеквизитов = Новый Массив;
	МассивВсехРеквизитов.Добавить("Склад");
	МассивВсехРеквизитов.Добавить("Соглашение");
	МассивВсехРеквизитов.Добавить("Договор");
	МассивВсехРеквизитов.Добавить("Товары.НоменклатураПартнера");
	МассивВсехРеквизитов.Добавить("Товары.Номенклатура");
	МассивВсехРеквизитов.Добавить("Товары.Характеристика");
	МассивВсехРеквизитов.Добавить("Товары.Назначение");
	МассивВсехРеквизитов.Добавить("Товары.Содержание");
	МассивВсехРеквизитов.Добавить("Товары.Упаковка");
	МассивВсехРеквизитов.Добавить("Товары.КоличествоУпаковок");
	МассивВсехРеквизитов.Добавить("Товары.Количество");
	МассивВсехРеквизитов.Добавить("Товары.Цена");
	МассивВсехРеквизитов.Добавить("Товары.Склад");
	МассивВсехРеквизитов.Добавить("Товары.ЗаказПоставщику");
	МассивВсехРеквизитов.Добавить("Товары.КодСтроки");
	МассивВсехРеквизитов.Добавить("Товары.НомерГТД");
	МассивВсехРеквизитов.Добавить("Товары.КодТНВЭД");
	МассивВсехРеквизитов.Добавить("Товары.Сделка");
	МассивВсехРеквизитов.Добавить("Товары.Серия");
	МассивВсехРеквизитов.Добавить("Товары.СтатусУказанияСерий");
	МассивВсехРеквизитов.Добавить("Товары.СписатьНаРасходы");
	МассивВсехРеквизитов.Добавить("Товары.НаправлениеДеятельности");
	МассивВсехРеквизитов.Добавить("Товары.НомерГруппыЗатрат");
	МассивВсехРеквизитов.Добавить("Товары.СтатьяКалькуляции");
	
	МассивВсехРеквизитов.Добавить("Расхождения.Серия");
	МассивВсехРеквизитов.Добавить("Расхождения.Номенклатура");
	МассивВсехРеквизитов.Добавить("Расхождения.Характеристика");
	МассивВсехРеквизитов.Добавить("Расхождения.Назначение");
	МассивВсехРеквизитов.Добавить("Расхождения.Содержание");
	МассивВсехРеквизитов.Добавить("Расхождения.Упаковка");
	МассивВсехРеквизитов.Добавить("Расхождения.КоличествоУпаковок");
	МассивВсехРеквизитов.Добавить("Расхождения.Склад");
	МассивВсехРеквизитов.Добавить("Расхождения.ЗаказПоставщику");
	МассивВсехРеквизитов.Добавить("Расхождения.КодСтроки");
	МассивВсехРеквизитов.Добавить("Расхождения.НомерГТД");
	МассивВсехРеквизитов.Добавить("Расхождения.КодТНВЭД");
	МассивВсехРеквизитов.Добавить("Расхождения.Сделка");
	МассивВсехРеквизитов.Добавить("Расхождения.СписатьНаРасходы");
	МассивВсехРеквизитов.Добавить("Расхождения.НаправлениеДеятельности");
	МассивВсехРеквизитов.Добавить("Расхождения.НомерГруппыЗатрат");
	МассивВсехРеквизитов.Добавить("Расхождения.СтатьяКалькуляции");
	
	МассивРеквизитовОперации = Новый Массив;
	
	Если ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ПриобретениеТоваровУслуг") Тогда
		
		МассивРеквизитовОперации.Добавить("Склад");
		МассивРеквизитовОперации.Добавить("Соглашение");
		МассивРеквизитовОперации.Добавить("Договор");
		МассивРеквизитовОперации.Добавить("Товары.НоменклатураПартнера");
		МассивРеквизитовОперации.Добавить("Товары.Номенклатура");
		МассивРеквизитовОперации.Добавить("Товары.Характеристика");
		МассивРеквизитовОперации.Добавить("Товары.Назначение");
		МассивРеквизитовОперации.Добавить("Товары.Упаковка");
		МассивРеквизитовОперации.Добавить("Товары.КоличествоУпаковок");
		МассивРеквизитовОперации.Добавить("Товары.Количество");
		МассивРеквизитовОперации.Добавить("Товары.Склад");
		МассивРеквизитовОперации.Добавить("Товары.Цена");
		МассивРеквизитовОперации.Добавить("Товары.ЗаказПоставщику");
		МассивРеквизитовОперации.Добавить("Товары.КодСтроки");
		МассивРеквизитовОперации.Добавить("Товары.НомерГТД");
		МассивРеквизитовОперации.Добавить("Товары.Сделка");
		МассивРеквизитовОперации.Добавить("Товары.Серия");
		МассивРеквизитовОперации.Добавить("Товары.СтатусУказанияСерий");
		МассивРеквизитовОперации.Добавить("Товары.СписатьНаРасходы");
		МассивРеквизитовОперации.Добавить("Расхождения.Серия");
		МассивРеквизитовОперации.Добавить("Расхождения.Номенклатура");
		МассивРеквизитовОперации.Добавить("Расхождения.Характеристика");
		МассивРеквизитовОперации.Добавить("Расхождения.Назначение");
		МассивРеквизитовОперации.Добавить("Расхождения.Упаковка");
		МассивРеквизитовОперации.Добавить("Расхождения.КоличествоУпаковок");
		МассивРеквизитовОперации.Добавить("Расхождения.Склад");
		МассивРеквизитовОперации.Добавить("Расхождения.ЗаказПоставщику");
		МассивРеквизитовОперации.Добавить("Расхождения.КодСтроки");
		МассивРеквизитовОперации.Добавить("Расхождения.НомерГТД");
		МассивРеквизитовОперации.Добавить("Расхождения.Сделка");
		МассивРеквизитовОперации.Добавить("Расхождения.СписатьНаРасходы");
		
	ИначеЕсли ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ПриобретениеУслугПрочихАктивов") Тогда
		
		МассивРеквизитовОперации.Добавить("Соглашение");
		МассивРеквизитовОперации.Добавить("Договор");
		МассивРеквизитовОперации.Добавить("Товары.Содержание");
		МассивРеквизитовОперации.Добавить("Товары.НаправлениеДеятельности");
		МассивРеквизитовОперации.Добавить("Товары.СписатьНаРасходы");
		МассивРеквизитовОперации.Добавить("Товары.Количество");
		МассивРеквизитовОперации.Добавить("Товары.Цена");
		МассивРеквизитовОперации.Добавить("Товары.НомерГТД");
		МассивРеквизитовОперации.Добавить("Товары.КодТНВЭД");
		МассивРеквизитовОперации.Добавить("Расхождения.Содержание");
		МассивРеквизитовОперации.Добавить("Расхождения.НаправлениеДеятельности");
		МассивРеквизитовОперации.Добавить("Расхождения.СписатьНаРасходы");
		МассивРеквизитовОперации.Добавить("Расхождения.НомерГТД");
		МассивРеквизитовОперации.Добавить("Расхождения.КодТНВЭД");
		
	//++ НЕ УТ
	ИначеЕсли ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ОтчетПереработчика2_5") Тогда
		
		МассивРеквизитовОперации.Добавить("Договор");
		
		МассивРеквизитовОперации.Добавить("Товары.Номенклатура");
		МассивРеквизитовОперации.Добавить("Товары.Характеристика");
		МассивРеквизитовОперации.Добавить("Товары.Назначение");
		МассивРеквизитовОперации.Добавить("Товары.Количество");
		МассивРеквизитовОперации.Добавить("Товары.Цена");
		МассивРеквизитовОперации.Добавить("Товары.ЗаказПоставщику");
		МассивРеквизитовОперации.Добавить("Товары.КодСтроки");
		МассивРеквизитовОперации.Добавить("Товары.Сделка");
		МассивРеквизитовОперации.Добавить("Товары.СписатьНаРасходы");
		МассивРеквизитовОперации.Добавить("Товары.НаправлениеДеятельности");
		МассивРеквизитовОперации.Добавить("Товары.НомерГруппыЗатрат");
		МассивРеквизитовОперации.Добавить("Товары.СтатьяКалькуляции");
		
		МассивРеквизитовОперации.Добавить("Расхождения.Номенклатура");
		МассивРеквизитовОперации.Добавить("Расхождения.Характеристика");
		МассивРеквизитовОперации.Добавить("Расхождения.Назначение");
		МассивРеквизитовОперации.Добавить("Расхождения.ЗаказПоставщику");
		МассивРеквизитовОперации.Добавить("Расхождения.КодСтроки");
		МассивРеквизитовОперации.Добавить("Расхождения.Сделка");
		МассивРеквизитовОперации.Добавить("Расхождения.СписатьНаРасходы");
		МассивРеквизитовОперации.Добавить("Расхождения.НаправлениеДеятельности");
		МассивРеквизитовОперации.Добавить("Расхождения.НомерГруппыЗатрат");
		МассивРеквизитовОперации.Добавить("Расхождения.СтатьяКалькуляции");
		
	//-- НЕ УТ
	ИначеЕсли ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ПервичныйДокумент") Тогда
		
		МассивРеквизитовОперации.Добавить("Соглашение");
		МассивРеквизитовОперации.Добавить("Договор");
		
		МассивРеквизитовОперации.Добавить("Товары.Количество");
		МассивРеквизитовОперации.Добавить("Товары.Цена");
		МассивРеквизитовОперации.Добавить("Товары.СписатьНаРасходы");
		
		МассивРеквизитовОперации.Добавить("Расхождения.СписатьНаРасходы");
		
		Если ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг Тогда
			МассивРеквизитовОперации.Добавить("Склад");
			
			МассивРеквизитовОперации.Добавить("Товары.НоменклатураПартнера");
			МассивРеквизитовОперации.Добавить("Товары.Номенклатура");
			МассивРеквизитовОперации.Добавить("Товары.Характеристика");
			МассивРеквизитовОперации.Добавить("Товары.Назначение");
			МассивРеквизитовОперации.Добавить("Товары.Серия");
			МассивРеквизитовОперации.Добавить("Товары.СтатусУказанияСерий");
			МассивРеквизитовОперации.Добавить("Товары.Упаковка");
			МассивРеквизитовОперации.Добавить("Товары.КоличествоУпаковок");
			МассивРеквизитовОперации.Добавить("Товары.НомерГТД");
			МассивРеквизитовОперации.Добавить("Товары.Склад");
			
			МассивРеквизитовОперации.Добавить("Расхождения.Номенклатура");
			МассивРеквизитовОперации.Добавить("Расхождения.Характеристика");
			МассивРеквизитовОперации.Добавить("Расхождения.Назначение");
			МассивРеквизитовОперации.Добавить("Расхождения.Серия");
			МассивРеквизитовОперации.Добавить("Расхождения.Упаковка");
			МассивРеквизитовОперации.Добавить("Расхождения.КоличествоУпаковок");
			МассивРеквизитовОперации.Добавить("Расхождения.НомерГТД");
			МассивРеквизитовОперации.Добавить("Расхождения.Склад");
		Иначе
			МассивРеквизитовОперации.Добавить("Товары.Содержание");
			МассивРеквизитовОперации.Добавить("Товары.НаправлениеДеятельности");
			МассивРеквизитовОперации.Добавить("Товары.НомерГТД");
			МассивРеквизитовОперации.Добавить("Товары.КодТНВЭД");
			
			МассивРеквизитовОперации.Добавить("Расхождения.Содержание");
			МассивРеквизитовОперации.Добавить("Расхождения.НаправлениеДеятельности");
			МассивРеквизитовОперации.Добавить("Расхождения.НомерГТД");
			МассивРеквизитовОперации.Добавить("Расхождения.КодТНВЭД");
		КонецЕсли;
		
	КонецЕсли;
	
КонецПроцедуры

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

	ОбрабатываемыеСтроки = Новый Массив;
	Выборка = Запрос.Выполнить().Выбрать();
	Пока Выборка.Следующий() Цикл
		
		Если (Выборка.Количество - Выборка.КоличествоСверхЗаказа) > 0 Тогда
			
			НоваяСтрокаТовары = Объект.Товары.Добавить();
			ЗаполнитьЗначенияСвойств(НоваяСтрокаТовары, Выборка);
			Если Выборка.КоличествоСверхЗаказа > 0 Тогда
				НоваяСтрокаТовары.КоличествоУпаковок = Выборка.КоличествоУпаковок - Выборка.КоличествоУпаковокСверхЗаказа;
				НоваяСтрокаТовары.Количество         = Выборка.Количество - Выборка.КоличествоСверхЗаказа;
				ОбрабатываемыеСтроки.Добавить(НоваяСтрокаТовары);
			КонецЕсли;
			
		КонецЕсли;
			
		Если Выборка.КоличествоСверхЗаказа > 0 Тогда
			
			ДополнительнаяСтрокаТовары = Объект.Товары.Добавить();
			ЗаполнитьЗначенияСвойств(ДополнительнаяСтрокаТовары, Выборка);
			ДополнительнаяСтрокаТовары.КоличествоУпаковок = Выборка.КоличествоУпаковокСверхЗаказа;
			ДополнительнаяСтрокаТовары.Количество         = Выборка.КоличествоСверхЗаказа;
			ДополнительнаяСтрокаТовары.КодСтроки          = 0;
			ОбрабатываемыеСтроки.Добавить(ДополнительнаяСтрокаТовары);
			
		КонецЕсли;
		
	КонецЦикла;

	ПакетнаяОбработкаТабличнойЧастиСервер.ОбработатьСтрокиТЧ(ОбрабатываемыеСтроки, СтруктураДействий, Объект.Товары, КэшированныеЗначения);

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

#КонецОбласти

#Область Серии

// Имена реквизитов, от значений которых зависят параметры указания серий
//
//	Возвращаемое значение:
//		Строка - имена реквизитов, перечисленные через запятую.
//
Функция ИменаРеквизитовДляЗаполненияПараметровУказанияСерий() Экспорт
	ИменаРеквизитов = "Склад,Дата,ДокументОснование";
	
	Возврат ИменаРеквизитов;
КонецФункции

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

// Возвращает текст запроса для расчета статусов указания серий
//	Параметры:
//		ПараметрыУказанияСерий - Структура - состав полей задается в функции НоменклатураКлиентСервер.ПараметрыУказанияСерий
//	Возвращаемое значение:
//		Строка - текст запроса.
//
Функция ТекстЗапросаЗаполненияСтатусовУказанияСерий(ПараметрыУказанияСерий) Экспорт
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	Товары.Склад,
	|	Товары.Номенклатура,
	|	Товары.Характеристика,
	|	Товары.Назначение,
	|	Товары.Серия,
	|	Товары.Количество,
	|	Товары.СтатусУказанияСерий,
	|	Товары.НомерСтроки
	|ПОМЕСТИТЬ Товары
	|ИЗ
	|	&Товары КАК Товары
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Товары.Склад,
	|	Товары.Номенклатура,
	|	Товары.Характеристика,
	|	Товары.Назначение,
	|	СУММА(Товары.Количество) КАК Количество,
	|	ВЫРАЗИТЬ(Товары.Номенклатура КАК Справочник.Номенклатура).ВидНоменклатуры КАК ВидНоменклатуры
	|ПОМЕСТИТЬ ТоварыДляЗапроса
	|ИЗ
	|	Товары КАК Товары
	|
	|СГРУППИРОВАТЬ ПО
	|	Товары.Склад,
	|	Товары.Номенклатура,
	|	Товары.Характеристика,
	|	Товары.Назначение,
	|	ВЫРАЗИТЬ(Товары.Номенклатура КАК Справочник.Номенклатура).ВидНоменклатуры
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Товары.НомерСтроки КАК НомерСтроки,
	|	Товары.СтатусУказанияСерий КАК СтарыйСтатусУказанияСерий,
	|	ВЫБОР
	|		КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий ЕСТЬ NULL
	|			ИЛИ &ИспользуетсяДокументПоступлениеТоваров
	|			ТОГДА 0
	|		ИНАЧЕ ВЫБОР
	|				КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий.УчитыватьСебестоимостьПоСериям
	|					ТОГДА ВЫБОР
	|							КОГДА Товары.Серия <> ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|								ТОГДА 14
	|							ИНАЧЕ 13
	|						КОНЕЦ
	|				ИНАЧЕ 0
	|			КОНЕЦ
	|	КОНЕЦ КАК СтатусУказанияСерий,
	|	ВЫБОР
	|		КОГДА ТоварыДляЗапроса.ВидНоменклатуры.ПолитикаУчетаСерий ЕСТЬ NULL
	|			ТОГДА 0
	|		ИНАЧЕ ВЫБОР
	|				КОГДА ТоварыДляЗапроса.ВидНоменклатуры.ПолитикаУчетаСерий.УчитыватьСебестоимостьПоСериям
	|					И &ИспользуетсяДокументПоступлениеТоваров
	|					ТОГДА
	|						ВЫБОР
	|							КОГДА ((ТоварыДляЗапроса.ВидНоменклатуры.ПолитикаУчетаСерий.УчетСерийВНеотфактурованныхПоставкахТоваров
	|										И НЕ &ЭтоТоварыВПути)
	|									ИЛИ (ТоварыДляЗапроса.ВидНоменклатуры.ПолитикаУчетаСерий.УчетТоваровВПутиОтПоставщикаПоСериям)
	|										И &ЭтоТоварыВПути)
	|								ТОГДА ВЫБОР
	|										КОГДА Товары.Серия <> ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|											ТОГДА 18
	|										ИНАЧЕ 17
	|									КОНЕЦ
	|								ИНАЧЕ 0
	|						КОНЕЦ
	|					ИНАЧЕ 0
	|			КОНЕЦ
	|	КОНЕЦ КАК СтатусУказанияСерийТоварыУПартнеров
	|ПОМЕСТИТЬ Статусы
	|ИЗ
	|	Товары КАК Товары
	|		ЛЕВОЕ СОЕДИНЕНИЕ ТоварыДляЗапроса КАК ТоварыДляЗапроса
	|			ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыНоменклатуры.ПолитикиУчетаСерий КАК ПолитикиУчетаСерий
	|				ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Склады КАК Склады
	|				ПО ПолитикиУчетаСерий.Склад = Склады.Ссылка
	|			ПО (ПолитикиУчетаСерий.Склад = ТоварыДляЗапроса.Склад)
	|				И ТоварыДляЗапроса.ВидНоменклатуры = ПолитикиУчетаСерий.Ссылка
	|		ПО Товары.Номенклатура = ТоварыДляЗапроса.Номенклатура
	|			И Товары.Характеристика = ТоварыДляЗапроса.Характеристика
	|			И Товары.Назначение = ТоварыДляЗапроса.Назначение
	|			И Товары.Склад = ТоварыДляЗапроса.Склад
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Статусы.НомерСтроки КАК НомерСтроки,
	|	ВЫБОР
	|		КОГДА Статусы.СтатусУказанияСерий = 0
	|			ТОГДА Статусы.СтатусУказанияСерийТоварыУПартнеров
	|		ИНАЧЕ Статусы.СтатусУказанияСерий
	|	КОНЕЦ КАК СтатусУказанияСерий
	|ИЗ
	|	Статусы КАК Статусы
	|ГДЕ
	|	ВЫБОР
	|		КОГДА &ИспользуетсяДокументПоступлениеТоваров
	|			ТОГДА Статусы.СтатусУказанияСерийТоварыУПартнеров
	|		ИНАЧЕ Статусы.СтатусУказанияСерий
	|	КОНЕЦ <> Статусы.СтарыйСтатусУказанияСерий
	|
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ПараметрыРегистрацииСчетовФактурПолученных(Объект) Экспорт
	
	ПараметрыРегистрации = УчетНДСУПКлиентСервер.ПараметрыРегистрацииСчетовФактурПолученных();
	ПараметрыРегистрации.Ссылка = Объект.Ссылка;
	ПараметрыРегистрации.Дата = Объект.Дата;
	ПараметрыРегистрации.Организация = Объект.Организация;
	ПараметрыРегистрации.Контрагент = Объект.Контрагент;
	ПараметрыРегистрации.НалогообложениеНДС = Объект.НалогообложениеНДС;
	Если Объект.ВидКорректировки = Перечисления.ХозяйственныеОперации.ИсправлениеОшибок Тогда
		ПараметрыРегистрации.ИсправлениеОшибок = Истина;
	ИначеЕсли Объект.ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПоСогласованиюСторон Тогда
		ПараметрыРегистрации.КорректировкаПоСогласованиюСторон = Истина;
	КонецЕсли;
	
	ВвозИзЕАЭС = Ложь;
	Если ЗначениеЗаполнено(Объект.ДокументОснование)
		И ТипЗнч(Объект.ДокументОснование) <> Тип("ДокументСсылка.ПервичныйДокумент") Тогда
		ХозОперацияДокументаОснования = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Объект.ДокументОснование, "ХозяйственнаяОперация");
		
		ХозОперацииЗакупкаВСтранахЕАЭС = ЗакупкиВызовСервера.ХозяйственныеОперацииПоОсновной(
				ПредопределенноеЗначение("Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭС"));
				
		ХозОперацииЗакупкаВСтранахЕАЭС.Добавить(Перечисления.ХозяйственныеОперации.ПроизводствоУПереработчикаВСтранахЕАЭС2_5);
				
		Если ХозОперацииЗакупкаВСтранахЕАЭС.Найти(ХозОперацияДокументаОснования) <> Неопределено Тогда 
			ВвозИзЕАЭС = Истина;
		КонецЕсли;
		
	КонецЕсли;
	
	ПараметрыРегистрации.ВвозТоваровИзТаможенногоСоюза   = ВвозИзЕАЭС;
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

// Инициализирует параметры регистрации уведомлений о ввозе прослеживаемых товаров
//
// Параметры:
//  Объект		- ДокументОбъект.КорректировкаПриобретения, ДанныеФормыСтруктура	- документ, для которого необходимо получить параметры.
//
// Возвращаемое значение:
// 	Структура - Структура параметров с ключами:
// 	     * Ссылка - ДокументСсылка - Ссылка на документ закупки.
// 	     * Дата - Дата - Дата на документ закупки.
// 	     * Организация - СправочникСсылка.Организации - Организация, в которой отражается закупка или возврат товаров.
// 	     * Контрагент - СправочникСсылка.Контрагенты,
// 	                    СправочникСсылка.Организации - Контрагент или организация поставщик.
// 	                                                   Покупатель товаров при возврате.
//       * Склад - СправочникСсылка.Склады -
// 	     * НалогообложениеНДС - ПеречислениеСсылка.ТипыНалогообложенияНДС - Налогообложение НДС документа закупки или возврата.
// 	     [Параметры операции]
// 	     * ВвозТоваровИзТаможенногоСоюза - Булево - Признак того, что отражается операция ввоза товаров из стран таможенного союза с оформлением заявление о ввозе.
//       * ВедетсяУчетПоРНПТ - Булево - Признак того, что в табличной части документа есть прослеживаемые товары
//       * КорректировочноеУведомление - Булево - Признак какое нужно формировать уведомление. Если КорректировочноеУведомление = Истина, нужно формировать корректировочное уведомление.
//
Функция ПараметрыРегистрацииУведомленийОВвозеПрослеживаемыхТоваров(Объект) Экспорт
	
	ПараметрыРегистрации = Новый Структура;
	
	ПараметрыРегистрации.Вставить("Ссылка",	Объект.ДокументОснование);
	ПараметрыРегистрации.Вставить("Дата", Объект.Дата);
	ПараметрыРегистрации.Вставить("Организация", Объект.Организация);
	ПараметрыРегистрации.Вставить("Контрагент",	Объект.Контрагент);
	ПараметрыРегистрации.Вставить("Склад",	Объект.Склад);	
	ПараметрыРегистрации.Вставить("НалогообложениеНДС", Объект.НалогообложениеНДС);	
	ПараметрыРегистрации.Вставить("ВвозТоваровИзТаможенногоСоюза", Ложь);
	ПараметрыРегистрации.Вставить("ВедетсяУчетПоРНПТ", Ложь);
	ПараметрыРегистрации.Вставить("КорректировочноеУведомление", Истина);
	
	ЗакупкаВСтранахЕАЭС = ЗакупкиСервер.ХозяйственныеОперацииПоОсновной(Перечисления.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭС);
	Если ТипЗнч(Объект.ДокументОснование) = Тип("ДокументСсылка.ПриобретениеТоваровУслуг") Тогда
		ХозяйственнаяОперацияОснования = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Объект.ДокументОснование, "ХозяйственнаяОперация");
		Если ЗакупкаВСтранахЕАЭС.Найти(ХозяйственнаяОперацияОснования) <> Неопределено Тогда
			ПараметрыРегистрации.ВвозТоваровИзТаможенногоСоюза = Истина;
			Если Объект.Товары.НайтиСтроки(Новый Структура("ВедетсяУчетПоРНПТ", Истина)).Количество() Тогда
				ПараметрыРегистрации.ВедетсяУчетПоРНПТ = Истина;
			КонецЕсли;		
		КонецЕсли;
	КонецЕсли;
	Возврат ПараметрыРегистрации;
	
КонецФункции

#КонецОбласти

//++ НЕ УТ
#Область ПроводкиРеглУчета

// Функция возвращает текст запроса для отражения документа в регламентированном учете.
//
// Возвращаемое значение:
//	Строка - Текст запроса
//
Функция ТекстОтраженияВРеглУчете() Экспорт

	Возврат КорректировкаПриобретенияЛокализация.ТекстОтраженияВРеглУчете();

КонецФункции

// Функция возвращает текст запроса дополнительных временных таблиц,
// необходимых для отражения в регламентированном учете.
//
// Возвращаемое значение:
//	Строка - текст запроса
//
Функция ТекстЗапросаВТОтраженияВРеглУчете() Экспорт

	Возврат КорректировкаПриобретенияЛокализация.ТекстЗапросаВТОтраженияВРеглУчете();

КонецФункции

#КонецОбласти
//-- НЕ УТ

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

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

//++ НЕ УТ

// Возвращает параметры настройки счетов учета в документе.
// 
// Параметры:
// 		ПараметрыДляДоступности - Структура:
//		* ХозяйственнаяОперация - ПеречислениеСсылка.ХозяйственныеОперации - Хозяйственная операция документа
//		* ДокументОснование - ДокументСсылка - документ основание.
// 	
// Возвращаемое значение:
// 	Массив Из См. НастройкаСчетовУчетаСервер.ПараметрыНастройки
//
Функция ПараметрыНастройкиСчетовУчета(ПараметрыДляДоступности) Экспорт
	
	МассивПараметров = Новый Массив();
	
	ТипКорректировки = Неопределено;
	ПараметрыДляДоступности.Свойство("ТипКорректировки", ТипКорректировки);
	
	КорректировкаПриобретенияУслугПрочихАктивов = (ТипЗнч(ПараметрыДляДоступности.ДокументОснование) = Тип("ДокументСсылка.ПриобретениеУслугПрочихАктивов"))
		Или ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов;
	
	#Область СчетУчетаАктивов	
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "Объект";
	ПараметрыНастройки.НастройкаСчетовУчета = "НастройкаСчетовУчетаАктивов";
	ПараметрыНастройки.Представление = "ТекстНастроитьОтражениеВРеглУчетеАктивов";
	
	ПараметрыНастройки.ТипСтатьи = "СтатьяРасходовТипСтатьи";
	
	ПараметрыНастройки.ДоступностьПоОперации = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";
	ПараметрыНастройки.АналитикаАктивовПассивов = "АналитикаАктивов";

	ПараметрыНастройки.ЭлементыФормы.Добавить("ТекстНастроитьОтражениеВРеглУчетеАктивов");
	ПараметрыНастройки.ЭлементыФормы.Добавить("ТекстНастроитьОтражениеВРеглУчетеАктивовКорректировкаЗадолженности");
	
	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти
	
	#Область СчетУчетаПассивов	
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "Объект";
	ПараметрыНастройки.НастройкаСчетовУчета = "НастройкаСчетовУчетаПассивов";
	ПараметрыНастройки.Представление = "ТекстНастроитьОтражениеВРеглУчетеПассивов";
	
	ПараметрыНастройки.ТипСтатьи = "СтатьяДоходовТипСтатьи";
	ПараметрыНастройки.СтатьяАктивовПассивов = "СтатьяДоходов";
	
	ПараметрыНастройки.ДоступностьПоОперации = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";
	ПараметрыНастройки.АналитикаАктивовПассивов = "АналитикаПассивов";

	ПараметрыНастройки.ЭлементыФормы.Добавить("ТекстНастроитьОтражениеВРеглУчетеПассивов");
	ПараметрыНастройки.ЭлементыФормы.Добавить("ТекстНастроитьОтражениеВРеглУчетеПассивовКорректировкаЗадолженности");
	
	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти

	#Область ТоварыСчетУчета	
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "Объект.Товары";
	ПараметрыНастройки.Представление = "ПредставлениеОтраженияВРеглУчете";
	ПараметрыНастройки.ТипСтатьи     = "ТипСтатьи";
	
	ПараметрыНастройки.ДоступностьПоОперации = КорректировкаПриобретенияУслугПрочихАктивов;
	ПараметрыНастройки.СкрыватьНедоступныйСчетУчетаВСтроках = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";

	ПараметрыНастройки.ЭлементыФормы.Добавить("ТоварыСчетРеглУчетаАктивовПассивов");

	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти

	#Область РасхожденияСчетУчета	
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "Объект.Расхождения";
	ПараметрыНастройки.Представление = "ПредставлениеОтраженияВРеглУчете";
	ПараметрыНастройки.ТипСтатьи     = "ТипСтатьи";
	
	ПараметрыНастройки.ДоступностьПоОперации = КорректировкаПриобретенияУслугПрочихАктивов;
	ПараметрыНастройки.СкрыватьНедоступныйСчетУчетаВСтроках = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";

	ПараметрыНастройки.ЭлементыФормы.Добавить("РасхожденияСчетРеглУчетаАктивовПассивов");
	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти
	
	Возврат МассивПараметров;
	
КонецФункции

// Возвращает параметры настройки счетов учета в документе корректировка приобретения до ввода остатков.
// 
// Параметры:
// 		ПараметрыДляДоступности - Структура:
//		* ХозяйственнаяОперация - ПеречислениеСсылка.ХозяйственныеОперации - Хозяйственная операция документа
//		* ДокументОснование - ДокументСсылка - документ основание.
// 	
// Возвращаемое значение:
// 	Массив Из См. НастройкаСчетовУчетаСервер.ПараметрыНастройки
//
Функция ПараметрыНастройкиСчетовУчетаКорректировкаДоВводаОстатков(ПараметрыДляДоступности) Экспорт
	
	МассивПараметров = Новый Массив();
	
	КорректировкаПриобретенияУслугПрочихАктивов = ПараметрыДляДоступности.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов;
	
	#Область СчетУчетаАктивов
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "Объект";
	ПараметрыНастройки.НастройкаСчетовУчета = "НастройкаСчетовУчетаАктивов";
	ПараметрыНастройки.Представление = "ТекстНастроитьОтражениеВРеглУчетеАктивов";
	
	ПараметрыНастройки.ТипСтатьи = "СтатьяРасходовТипСтатьи";
	
	ПараметрыНастройки.ДоступностьПоОперации = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";
	ПараметрыНастройки.АналитикаАктивовПассивов = "АналитикаАктивов";

	ПараметрыНастройки.ЭлементыФормы.Добавить("ТекстНастроитьОтражениеВРеглУчетеАктивов");
	
	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти
	
	#Область СчетУчетаПассивов
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "Объект";
	ПараметрыНастройки.НастройкаСчетовУчета = "НастройкаСчетовУчетаПассивов";
	ПараметрыНастройки.Представление = "ТекстНастроитьОтражениеВРеглУчетеПассивов";
	
	ПараметрыНастройки.ТипСтатьи = "СтатьяДоходовТипСтатьи";
	ПараметрыНастройки.СтатьяАктивовПассивов = "СтатьяДоходов";
	
	ПараметрыНастройки.ДоступностьПоОперации = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";
	ПараметрыНастройки.АналитикаАктивовПассивов = "АналитикаПассивов";

	ПараметрыНастройки.ЭлементыФормы.Добавить("ТекстНастроитьОтражениеВРеглУчетеПассивов");
	
	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти
	
	#Область ТаблицаКорректировкиСчетУчета	
	ПараметрыНастройки = НастройкаСчетовУчетаСервер.ПараметрыНастройки();
	ПараметрыНастройки.ПутьКДанным = "ТаблицаКорректировки";
	ПараметрыНастройки.Представление = "ПредставлениеОтраженияВРеглУчете";
	ПараметрыНастройки.ТипСтатьи     = "ТипСтатьи";
	
	ПараметрыНастройки.ДоступностьПоОперации = КорректировкаПриобретенияУслугПрочихАктивов;
	ПараметрыНастройки.СкрыватьНедоступныйСчетУчетаВСтроках = Истина;
	
	ПараметрыНастройки.Организация = "Объект.Организация";

	ПараметрыНастройки.ЭлементыФормы.Добавить("ТаблицаКорректировкиСчетРеглУчетаАктивовПассивов");
	МассивПараметров.Добавить(ПараметрыНастройки);
	#КонецОбласти
	
	Возврат МассивПараметров;
	
КонецФункции
//-- НЕ УТ

// Возвращает параметры выбора статей в документе.
//
// Параметры:
//	ПараметрыОпределенияДоступности - Структура:
//		* ХозяйственнаяОперация - ПеречислениеСсылка.ХозяйственныеОперации - Хозяйственная операция документа (ВидКорректировки)
//		* ДокументОснование - ДокументСсылка- Документ основание
//		* ДатаДокумента - Дата - Дата документа
//		* ОтразитьНаПрочихДоходах - Булево
//		* СписатьНаРасходы - Булево.
//
// Возвращаемое значение:
//	Массив Из см. ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики.
//
Функция ПараметрыВыбораСтатейИАналитик(ПараметрыОпределенияДоступности) Экспорт
	
	ПроверятьСтатьиИАналитику = Истина;
	ПараметрыОпределенияДоступности.Свойство("ПроверятьСтатьиИАналитику", ПроверятьСтатьиИАналитику);
	
	ТипКорректировки = Неопределено;
	ПараметрыОпределенияДоступности.Свойство("ТипКорректировки", ТипКорректировки);
	
	КорректировкаПриобретенияУслугПрочихАктивов = (ТипЗнч(ПараметрыОпределенияДоступности.ДокументОснование) = Тип("ДокументСсылка.ПриобретениеУслугПрочихАктивов"))
		Или ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов;
	МассивПаметровВыбора = Новый Массив;
	
	#Область СтатьяДоходов
	ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
	ПараметрыВыбора.ПутьКДанным =    "Объект";
	ПараметрыВыбора.Статья = "СтатьяДоходов";
	
	ПараметрыВыбора.СкрыватьСтатьюНедоступнуюПоОперации = Ложь;	
	ПараметрыВыбора.ДоступностьПоОперации = Истина;
	Если (ПараметрыОпределенияДоступности.Свойство("ОтразитьНаПрочихДоходах")
			И Не ПараметрыОпределенияДоступности.ОтразитьНаПрочихДоходах) Тогда
		ПараметрыВыбора.ДоступностьПоОперации = Ложь;
	КонецЕсли;
	ПараметрыВыбора.ТипСтатьи = "СтатьяДоходовТипСтатьи";

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

// Возвращает параметры выбора статей в документе для формы корректировки до ввода остатков.
// 
// Параметры:
//	ПараметрыОпределенияДоступности - Структура:
//		* ХозяйственнаяОперация - ПеречислениеСсылка.ХозяйственныеОперации - Хозяйственная операция документа (ВидКорректировки)
//		* ДокументОснование - ДокументСсылка- Документ основание.
//		* ДатаДокумента - Дата - Дата документа.
//		* ОтразитьНаПрочихДоходах - Булево - признак отражения на доходы.
//		* СписатьНаРасходы - Булево - признак списания на расходы.
//		* ТипКорректировки - ПеречислениеСсылка.ТипыКорректировки - тип корректировки документа.
//
// Возвращаемое значение:
//	Массив Из см. ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики.
//
Функция ПараметрыВыбораСтатейИАналитикКорректировкаДоВводаОстатков(ПараметрыОпределенияДоступности) Экспорт
	
	КорректировкаПриобретенияУслугПрочихАктивов = ПараметрыОпределенияДоступности.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов;
	
	МассивПаметровВыбора = Новый Массив;
	
	ДополнительныеПараметры = Новый Структура();
	ДополнительныеПараметры.Вставить("ЭтоОбъектНаФорме", Истина);
	
	#Область СтатьяДоходов
	ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
	ПараметрыВыбора.ПутьКДанным =    "Объект";
	ПараметрыВыбора.Статья = "СтатьяДоходов";
	
	ПараметрыВыбора.Вставить("ДополнительныеПараметры", ДополнительныеПараметры);
	
	ПараметрыВыбора.СкрыватьСтатьюНедоступнуюПоОперации = Ложь;	
	ПараметрыВыбора.ДоступностьПоОперации = Истина;
	Если (ПараметрыОпределенияДоступности.Свойство("ОтразитьНаПрочихДоходах")
			И Не ПараметрыОпределенияДоступности.ОтразитьНаПрочихДоходах) Тогда
		ПараметрыВыбора.ДоступностьПоОперации = Ложь;
	КонецЕсли;
	ПараметрыВыбора.ТипСтатьи = "СтатьяДоходовТипСтатьи";

	ПараметрыВыбора.ВыборСтатьиДоходов = Истина;
	ПараметрыВыбора.АналитикаДоходов = "АналитикаДоходов";
	ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("СтатьяДоходов");
		
	ПараметрыВыбора.ЭлементыФормы.АналитикаДоходов.Добавить("АналитикаДоходов");
	
	ПараметрыВыбора.ВыборСтатьиАктивовПассивов = Истина;
	ПараметрыВыбора.АналитикаАктивовПассивов = "АналитикаПассивов";
	ПараметрыВыбора.ЭлементыФормы.АналитикаАктивовПассивов.Добавить("АналитикаПассивов");
		
	МассивПаметровВыбора.Добавить(ПараметрыВыбора);
	#КонецОбласти
	
	#Область СтатьяРасходов
	ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
	ПараметрыВыбора.ПутьКДанным =    "Объект";
	ПараметрыВыбора.Статья = "СтатьяРасходов";
	
	ПараметрыВыбора.Вставить("ДополнительныеПараметры", ДополнительныеПараметры);
	
	ПараметрыВыбора.СкрыватьСтатьюНедоступнуюПоОперации = Ложь;
	ПараметрыВыбора.ДоступностьПоОперации = Истина;
	
	Если (ПараметрыОпределенияДоступности.Свойство("СписатьНаРасходы")
			И Не ПараметрыОпределенияДоступности.СписатьНаРасходы) Тогда
		ПараметрыВыбора.ДоступностьПоОперации = Ложь;
	КонецЕсли;
	ПараметрыВыбора.ТипСтатьи = "СтатьяРасходовТипСтатьи";
	
	ПараметрыВыбора.ВыборСтатьиРасходов = Истина;
	ПараметрыВыбора.АналитикаРасходов = "АналитикаРасходов";
	ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("СтатьяРасходов");
	
	ПараметрыВыбора.ЭлементыФормы.АналитикаРасходов.Добавить("АналитикаРасходов");
	
	ПараметрыВыбора.ВыборСтатьиАктивовПассивов = Истина;
	ПараметрыВыбора.АналитикаАктивовПассивов = "АналитикаАктивов";
	ПараметрыВыбора.ЭлементыФормы.АналитикаАктивовПассивов.Добавить("АналитикаАктивов");
	
	МассивПаметровВыбора.Добавить(ПараметрыВыбора);
	#КонецОбласти
	
	#Область ТаблицаКорректировки
	ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
	ПараметрыВыбора.ПутьКДанным = "ТаблицаКорректировки";
	ПараметрыВыбора.Статья = "СтатьяРасходов";
	
	ПараметрыВыбора.ТипСтатьи = "ТипСтатьи";
	
	ПараметрыВыбора.ВыборСтатьиРасходов = Истина;
	ПараметрыВыбора.АналитикаРасходов = "АналитикаРасходов";
	ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("ТаблицаКорректировкиСтатьяРасходов");
	ПараметрыВыбора.ЭлементыФормы.АналитикаРасходов.Добавить("ТаблицаКорректировкиАналитикаРасходов");
	
	ПараметрыВыбора.ВыборСтатьиАктивовПассивов = КорректировкаПриобретенияУслугПрочихАктивов;
	ПараметрыВыбора.АналитикаАктивовПассивов = "АналитикаАктивовПассивов";
	ПараметрыВыбора.ЭлементыФормы.АналитикаАктивовПассивов.Добавить("ТаблицаКорректировкиАналитикаАктивовПассивов");
	
	ПараметрыВыбора.ВыборСтатьиДоходов = КорректировкаПриобретенияУслугПрочихАктивов;
	ПараметрыВыбора.АналитикаДоходов = "АналитикаДоходов";
	ПараметрыВыбора.ЭлементыФормы.АналитикаДоходов.Добавить("ТаблицаКорректировкиАналитикаДоходов");
	
	ПараметрыВыбора.УсловияДоступностиСтатьиВСтроках.Вставить("СписатьНаРасходы", Истина);
	
	ПредставленияРеквизитов = Новый Структура;
	ПредставленияРеквизитов.Вставить("СтатьяРасходов",				НСтр("ru = 'Списать на расходы/активы'"));
	ПредставленияРеквизитов.Вставить("АналитикаРасходов",			НСтр("ru = 'Аналитика расходов'"));
	ПредставленияРеквизитов.Вставить("АналитикаАктивовПассивов",	НСтр("ru = 'Аналитика'"));
	ПредставленияРеквизитов.Вставить("АналитикаДоходов",			НСтр("ru = 'Аналитика доходов'"));
	
	ДополнительныеПараметры = Новый Структура;
	ДополнительныеПараметры.Вставить("ПредставлениеТЧ",			НСтр("ru = 'Данные корректировки'"));
	ДополнительныеПараметры.Вставить("ПредставленияРеквизитов",	ПредставленияРеквизитов);
	
	ПараметрыВыбора.Вставить("ДополнительныеПараметры", ДополнительныеПараметры);
	
	МассивПаметровВыбора.Добавить(ПараметрыВыбора);
	#КонецОбласти
	
	КорректировкаПриобретенияЛокализация.ДополнитьПараметрыВыбораСтатейИАналитик(МассивПаметровВыбора, ПараметрыОпределенияДоступности);
	
	Возврат МассивПаметровВыбора;
	
КонецФункции

// Возвращает параметры механизма взаиморасчетов.
//
// Параметры:
// 	ДанныеЗаполнения - ДокументОбъект, СправочникОбъект, ДокументСсылка, СправочникСсылка, Структура, ДанныеФормыСтруктура - Объект или коллекция для
//              расчета параметров взаиморасчетов.
//
// Возвращаемое значение:
// 	Массив из см. ВзаиморасчетыСервер.ПараметрыМеханизма - Массив параметров функций механизма взаиморасчетов
//
Функция ПараметрыВзаиморасчеты(ДанныеЗаполнения = Неопределено) Экспорт
	
	ЭтоКорректировкаЗадолженности = Ложь;
	ЭтоКорректировкаПервичногоДокумента = Ложь;
	ДокументОснование = Неопределено;
	Если ОбщегоНазначения.ЗначениеСсылочногоТипа(ДанныеЗаполнения) Тогда
		СтруктураДанныеЗаполнения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(
			ДанныеЗаполнения, 
			"ВидКорректировки, ТипКорректировки, ДокументОснование");
		ЭтоКорректировкаЗадолженности = 
			СтруктураДанныеЗаполнения.ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПриобретенияУвеличениеЗадолженностиСводно
			ИЛИ СтруктураДанныеЗаполнения.ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПриобретенияУменьшениеЗадолженностиСводно;
		ЭтоКорректировкаПервичногоДокумента = СтруктураДанныеЗаполнения.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг
			Или СтруктураДанныеЗаполнения.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов;
		ДокументОснование = СтруктураДанныеЗаполнения.ДокументОснование;
	ИначеЕсли ДанныеЗаполнения <> Неопределено Тогда
		ЭтоКорректировкаЗадолженности = 
			ДанныеЗаполнения.ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПриобретенияУвеличениеЗадолженностиСводно
			ИЛИ ДанныеЗаполнения.ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПриобретенияУменьшениеЗадолженностиСводно;
		ЭтоКорректировкаПервичногоДокумента = ДанныеЗаполнения.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг
			Или ДанныеЗаполнения.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов;
		ДокументОснование = ДанныеЗаполнения.ДокументОснование;
	КонецЕсли;
	
	СтруктураПараметров = ВзаиморасчетыСервер.ПараметрыМеханизма();
	
	#Область ОбязательныеПараметры
	
	// Если все опции ложь, то это платеж или служебный документ.
	СтруктураПараметров.ЭтоЗаказ                         = Ложь;
	СтруктураПараметров.ЭтоСправочник                    = Ложь;
	СтруктураПараметров.ЭтоПродажаЗакупка                = Истина;
	
	// Определяет какой регистр двигают параметры, какие общие формы, перечисления и справочники использовать.
	СтруктураПараметров.ТипРасчетов                      = Перечисления.ТипыРасчетовСПартнерами.РасчетыСПоставщиком;
	
	// Дата отражения документа в системе.
	// Используется для получения остатков просроченной задолженности для функции ограничения задолженности.
	// Используется для получения курсов валют документа. 
	// Используется для заполнения этапов оплаты и расшифровки платежа по умолчанию.
	СтруктураПараметров.Дата                             = "Объект.Дата"; 
	
	// Валюта и сумма операции. Обязательно путь к реквизитам объекта.
	СтруктураПараметров.ВалютаДокумента                  = "Объект.Валюта";
	СтруктураПараметров.СуммаДокумента                   = "";
	
	// Используются для генерации объектов расчетов и аналитики.
	СтруктураПараметров.Организация                      = "Объект.Организация";
	СтруктураПараметров.Партнер                          = "Объект.Партнер";
	СтруктураПараметров.Контрагент                       = "Объект.Контрагент";
	
	// Для поиска и генерации объекта
	Если ЭтоКорректировкаЗадолженности Тогда
		// Генерация объектов не требуется, они уже выбраны в табличной части
		СтруктураПараметров.Ссылка                       = "";
	Иначе
		СтруктураПараметров.Ссылка                       = "Объект.ДокументОснование";
	КонецЕсли;
	
	#КонецОбласти
	
	#Область НеобязательныеПараметры
	
	// Отличные от валюты и суммы документа реквизиты. Если не заполнен, то для чтения будет взята валюта документа.
	СтруктураПараметров.ВалютаВзаиморасчетов             = "Объект.ВалютаВзаиморасчетов";
	СтруктураПараметров.СуммаВзаиморасчетов              = "Объект.СуммаВзаиморасчетов";
	СтруктураПараметров.СуммаВзаиморасчетовПоТаре        = "";
	
	// Используется для генерации аналитики проведения и объекта расчетов, определения графика исполнения договора.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.Договор                          = "";
	Иначе
		СтруктураПараметров.Договор                          = "Объект.Договор";
	КонецЕсли;
	// Используется для генерации аналитики проведения и объекта расчетов.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.НаправлениеДеятельности          = "";
	Иначе
		СтруктураПараметров.НаправлениеДеятельности          = "Объект.НаправлениеДеятельности";
	КонецЕсли;
	// Порядок расчетов документа.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.ПорядокРасчетов              = "";
	Иначе
		СтруктураПараметров.ПорядокРасчетов              = "Объект.ПорядокРасчетов";
	КонецЕсли;
	
	// Сумма всего с залоговой тарой. Путь к итоговому показателю формы (реквизиту).
	// Используется для отображения гиперссылок, редактирования и заполнения графика плановых оплат
	// редактирования расшифровки платежа и т.д.
	СтруктураПараметров.СуммаДокументаФорма              = "";
	
	// Реквизит формы итоговых показателей, содержащий сумму залога за тару в валюте документа.
	// Используется в заполнении этапов графика оплаты.
	СтруктураПараметров.СуммаЗалогаЗаТаруФорма            = ""; 

	// Табличная часть, по которой распределяется сумма взаиморасчетов и есть поле "заказ".
	// Используется для отображения гиперссылок, редактирования и заполнения графика плановых оплат
	// редактирования расшифровки платежа, если не заполнен параметр СуммаДокументаФорма.
	// В ТЧ заполняются объекты расчетов по заказам.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.ПутьКДаннымТЧ                    = "Объект.КорректировкаЗадолженности";
		// Имя реквизита суммы с ндс табличной части.
		СтруктураПараметров.ИмяРеквизитаТЧСуммаСНДС          = "СуммаКорректировки";
		// Имя реквизита тч, содержащего заказ.
		СтруктураПараметров.ИмяРеквизитаТЧЗаказ              = "";
	Иначе
		СтруктураПараметров.ПутьКДаннымТЧ                    = "Объект.Расхождения";
		// Имя реквизита суммы с ндс табличной части.
		СтруктураПараметров.ИмяРеквизитаТЧСуммаСНДС          = "СуммаСНДС";
		// Имя реквизита тч, содержащего заказ.
		СтруктураПараметров.ИмяРеквизитаТЧЗаказ              = "ЗаказПоставщику";
	КонецЕсли;
	
	// Путь к табличной части Расшифровка платежа.
	// Используется в функция зачета оплат, распределения взаиморасчетов, распределения оплаты.
	СтруктураПараметров.ПутьКДаннымТЧРасшифровкаПлатежа  = "";
	
	// Используется для заполнения значений по умолчанию, заполнения графика плановых оплат и даты платежа.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.Соглашение                   = "";
	Иначе
		СтруктураПараметров.Соглашение                   = "Объект.Соглашение";
	КонецЕсли;
	// Используются для определения значения ОплатаВВалюте и в форме редактирования правил оплаты.
	СтруктураПараметров.БанковскийСчетОрганизации        = "";
	СтруктураПараметров.БанковскийСчетКонтрагента        = "";
	СтруктураПараметров.Касса                            = "";
	СтруктураПараметров.ФормаОплаты                      = "Объект.ФормаОплаты";
	СтруктураПараметров.ОплатаВВалюте                    = "";
	// Используется в форме правил оплаты и для подбора в расшифровку платежа объектов расчетов.
	СтруктураПараметров.ИдентификаторПлатежа             = "";
	
	// Реквизиты для объекта расчетов, используются в проведении.
	Если ЭтоКорректировкаЗадолженности Тогда
		// В этом случае нет необходимости генерировать объект расчетов, он выбирается в табличной части документа из ранее созданных.
		СтруктураПараметров.ГруппаФинансовогоУчета           = "";
		СтруктураПараметров.ОбъектРасчетов                   = "";
		СтруктураПараметров.Подразделение                    = "";
		СтруктураПараметров.Менеджер                         = "";
		СтруктураПараметров.НомерВходящегоДокумента          = "";
		СтруктураПараметров.ДатаВходящегоДокумента           = "";
		СтруктураПараметров.НаименованиеПервичногоДокумента  = "";
	Иначе
		СтруктураПараметров.ГруппаФинансовогоУчета           = "";
		СтруктураПараметров.ОбъектРасчетов                   = "Объект.Расхождения.ОбъектРасчетов";
		СтруктураПараметров.Подразделение                    = "Объект.Подразделение";
		СтруктураПараметров.Менеджер                         = "Объект.Менеджер";
		СтруктураПараметров.НомерВходящегоДокумента          = "Объект.НомерВходящегоДокумента";
		СтруктураПараметров.ДатаВходящегоДокумента           = "Объект.ДатаВходящегоДокумента";
		СтруктураПараметров.НаименованиеПервичногоДокумента  = "Объект.НаименованиеВходящегоДокумента";
	КонецЕсли;
	
	// Используется для определения объекта расчетов.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.НакладнаяПоЗаказам               = "";
	Иначе
		СтруктураПараметров.НакладнаяПоЗаказам               = "Объект.ПоступлениеПоЗаказам";
	КонецЕсли;
	
	// Используется при определении порядка расчетов по умолчанию и списка доступных порядков для выбора.
	// Используется для определения объекта расчетов.
	СтруктураПараметров.ЗаказОснование                   = ""; 
	
	// Имя кнопки, открывающей помощник зачета оплат для текущего набора параметров.
	СтруктураПараметров.ЭлементыФормы.ЗачетОплаты                      = "";
	// Имя элемента таблицы формы, отображающей сумму взаиморасчетов.
	// Используется для установки условного оформления.
	// Следует заполнить если документ поддерживает построчное ручное редактирование сумм взаиморасчетов.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.ЭлементыФормы.СуммаВзаиморасчетовТЧ      = "КорректировкаЗадолженностиСуммаВзаиморасчетов";
	Иначе
		СтруктураПараметров.ЭлементыФормы.СуммаВзаиморасчетовТЧ      = "РасхожденияСуммаВзаиморасчетов";
	КонецЕсли;
	
	#КонецОбласти
	
	#Область РедактированиеВалютИВалютныхСуммДокумента
	
	// Курс и кратность документа - одна пара для документа.
	// Используются для расчета суммы взаиморасчетов и в форме редактирования валют и курсов документа.
	СтруктураПараметров.КурсЧислитель                          = "Объект.КурсЧислитель";
	СтруктураПараметров.КурсЗнаменатель                        = "Объект.КурсЗнаменатель";
	
	// Имя гиперссылки, отображающей текущий курс взаиморасчетов документа и открывающей соответствующую форму.
	СтруктураПараметров.ЭлементыФормы.НадписьВалюты                    = "ДекорацияВалюты";
	
	// Используются в условии через ИЛИ с правом отклонения от условий продаж/закупок.
	Если ЭтоКорректировкаЗадолженности Тогда
		СтруктураПараметров.ВалютаДокументаТолькоПросмотр                  = Ложь;
		СтруктураПараметров.ВалютаВзаиморасчетовТолькоПросмотр             = Ложь;
	ИначеЕсли ЭтоКорректировкаПервичногоДокумента Тогда
		СтруктураПараметров.ВалютаДокументаТолькоПросмотр                  = Ложь;
		СтруктураПараметров.ВалютаВзаиморасчетовТолькоПросмотр             = Истина;
	Иначе
		СтруктураПараметров.ВалютаДокументаТолькоПросмотр                  = Истина;
		СтруктураПараметров.ВалютаВзаиморасчетовТолькоПросмотр             = Истина;
	КонецЕсли;
	
	// Если не следует показывать сумму и валюту взаиморасчетов исходя из данных документа.
	СтруктураПараметров.НеПоказыватьРасчеты                            = Ложь;
	// Если не требуется предлагать пересчет суммы документа.
	СтруктураПараметров.НеПересчитыватьСуммуДокумента                  = Ложь;
	
	#КонецОбласти
	
	#Область ГрафикПлановойОплатыИДатаПлатежа
	
	// Функция Этапы оплаты и дата платежа
	СтруктураПараметров.ПутьКДаннымТЧЭтапыОплаты         = "";
	СтруктураПараметров.ДатаПлатежа                      = "Объект.ДатаПлатежа";
	СтруктураПараметров.НадписьЭтапыОплаты               = "Форма.НадписьЭтапыОплаты";
	СтруктураПараметров.ИсточникСуммТабличнаяЧасть       = Истина;
	СтруктураПараметров.ГрафикОплаты                 = "";
	
	// Имя гиперссылки, отображающей текущие правила оплаты документа и открывающей форму Правила оплаты.
	СтруктураПараметров.ЭлементыФормы.НадписьЭтапы             = "ДекорацияЭтапыОплаты";
	
	// Если требуется ограничить редактирование плавил оплаты.
	СтруктураПараметров.ЭтапыОплатыТолькоПросмотр                      = Ложь;
	// Если истина и накладная по заказам то будет отображена расширенная форма графика оплаты, несмотря на функциональную опцию "Упрощенная форма оплаты".
	СтруктураПараметров.ВозможнаНакладнаяПоНесколькимЗаказам           = Ложь;
	#КонецОбласти
	
	#Область СостояниеВзаиморасчетов
	
	// Имя гиперссылки, отображающей состояние расчетов и открывающей соответствующий отчет,
	СтруктураПараметров.ЭлементыФормы.НадписьРасчеты                   = "";
	
	#КонецОбласти
	
	#Область ОграниченияЗадолженностиПоДоговору
	
	// Гиперссылка отображающая состояние ограничения задолженности
	СтруктураПараметров.ЭлементыФормы.ОграничениеЗадолженностиТекст    = "";
	// Картинка отображающая запрет отгрузки
	СтруктураПараметров.ЭлементыФормы.ОграничениеЗадолженностиКартинка = ""; 
	
	#КонецОбласти
	
	Если ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ПриобретениеТоваровУслуг") Тогда
		СтруктураПараметров.ВернутьМногооборотнуюТару = "Объект.ДокументОснование.ВернутьМногооборотнуюТару";
		СтруктураПараметров.ТребуетсяЗалогЗаТару      = "Объект.ДокументОснование.ТребуетсяЗалогЗаТару";
	Иначе
		СтруктураПараметров.ВернутьМногооборотнуюТару = Ложь;
		СтруктураПараметров.ТребуетсяЗалогЗаТару = Ложь;
	КонецЕсли;

	
	Возврат СтруктураПараметров;
КонецФункции

// Возвращает структуру параметров для заполнения налогообложения НДС закупки.
//
// Параметры:
//  Объект - ДокументОбъект.КорректировкаПриобретения,
//  		 ДокументСсылка.КорректировкаПриобретения,
//  		 ДанныеФормыСтруктура - документ, по которому необходимо сформировать параметры.
//
// Возвращаемое значение:
//  См. УчетНДСУПКлиентСервер.ПараметрыЗаполненияНалогообложенияНДСЗакупки
//
Функция ПараметрыЗаполненияНалогообложенияНДСЗакупки(Объект) Экспорт

	ПараметрыЗаполнения = УчетНДСУПКлиентСервер.ПараметрыЗаполненияНалогообложенияНДСЗакупки();
	
	Если ТипЗнч(Объект) = Тип("ДокументОбъект.КорректировкаПриобретения")
		Или ТипЗнч(Объект) = Тип("ДанныеФормыСтруктура") Тогда
		ДанныеОбъекта = Объект;
	ИначеЕсли ТипЗнч(Объект) = Тип("ДокументСсылка.КорректировкаПриобретения") Тогда
		ДанныеОбъекта = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект, "Контрагент,Договор,ХозяйственнаяОперация,Дата");
	КонецЕсли;
	
	ПараметрыЗаполнения.Контрагент = ДанныеОбъекта.Контрагент;
	ПараметрыЗаполнения.Договор = ДанныеОбъекта.Договор;
	ПараметрыЗаполнения.Период  = ДанныеОбъекта.Дата;
	//++ НЕ УТ
	Если Не ДанныеОбъекта.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КорректировкаОтчетаПереработчика Тогда
	//-- НЕ УТ
		ПараметрыЗаполнения.ПриобретениеТоваров = Истина;
		ПараметрыЗаполнения.ПриобретениеРабот   = Истина;
	//++ НЕ УТ
	КонецЕсли;
	//-- НЕ УТ
	
	ПараметрыЗаполнения.ПриобретениеНаСтатьи = Истина;
	
	Возврат ПараметрыЗаполнения;
	
КонецФункции

// Возвращает структуру параметров для заполнения вида деятельности НДС.
//
// Параметры:
//  Объект  - ДокументОбъект.КорректировкаПриобретения,
//  		 ДокументСсылка.КорректировкаПриобретения,
//  		 ДанныеФормыСтруктура - документ, по которому необходимо сформировать параметры.
//
// Возвращаемое значение:
//  См. УчетНДСУПКлиентСервер.ПараметрыЗаполненияВидаДеятельностиНДС
//
Функция ПараметрыЗаполненияВидаДеятельностиНДС(Объект) Экспорт

	ПараметрыЗаполнения = УчетНДСУПКлиентСервер.ПараметрыЗаполненияВидаДеятельностиНДС();
	ПараметрыЗаполнения.Организация = Объект.Организация;
	ПараметрыЗаполнения.Дата = Объект.Дата;
	ПараметрыЗаполнения.ПриобретениеНаСтатьи = Истина;
	
	Возврат ПараметрыЗаполнения;

КонецФункции

#Область ДляВызоваИзДругихПодсистем

// СтандартныеПодсистемы.УправлениеДоступом

// Параметры:
//   Ограничение - см. УправлениеДоступомПереопределяемый.ПриЗаполненииОграниченияДоступа.Ограничение.
//
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт

	Ограничение.Текст =
	"РазрешитьЧтениеИзменение
	|ГДЕ
	|	ЗначениеРазрешено(Организация)
	|	И ЗначениеРазрешено(Партнер)
	|	И ЗначениеРазрешено(Подразделение)
	|	И((ТипЗначения(ДокументОснование) = Тип(Документ.ПриобретениеУслугПрочихАктивов)
	|		ИЛИ ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов))
	|	ИЛИ ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаОтчетаПереработчика)
	|	ИЛИ ЗначениеРазрешено(Склад)
	|	) ";

КонецПроцедуры

// Конец СтандартныеПодсистемы.УправлениеДоступом

// Возвращает таблицу с данными до и после корректировки.
//
// Параметры:
//  Объект  - ДокументОбъект.КорректировкаПриобретения,
//  		 ДокументСсылка.КорректировкаПриобретения,
//  		 ДанныеФормыСтруктура - документ корректировки.
//  ИспользуетсяКоличествоУпаковок - Булево - расчет цены для количества или для количества упаковок
//
// Возвращаемое значение:
//  ТаблицаЗначений - данные табличной части, как они отображаются пользователю.
//
Функция ДанныеКорректировкиДоВводаОстатков(Объект, ИспользуетсяКоличествоУпаковок = Ложь) Экспорт
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	Т.Номенклатура КАК Номенклатура,
	|	Т.НоменклатураПартнера КАК НоменклатураПартнера,
	|	Т.Назначение КАК Назначение,
	|	Т.Характеристика КАК Характеристика,
	|	Т.Содержание КАК Содержание,
	|	Т.Упаковка КАК Упаковка,
	|	Т.Серия КАК Серия,
	|	Т.СтатусУказанияСерий КАК СтатусУказанияСерий,
	|	Т.Склад КАК Склад,
	|	Т.Подразделение КАК Подразделение,
	|	Т.СписатьНаРасходы КАК СписатьНаРасходы,
	|	Т.СтатьяРасходов КАК СтатьяРасходов,
	|	Т.АналитикаРасходов КАК АналитикаРасходов,
	|	Т.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	Т.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	Т.НастройкаСчетовУчета КАК НастройкаСчетовУчета,
	|	Т.НомерГТД КАК НомерГТД,
	|	Т.КодТНВЭД КАК КодТНВЭД,
	|	Т.Цена КАК Цена,
	|	Т.СтавкаНДС КАК СтавкаНДС,
	|	Т.КоличествоУпаковок КАК КоличествоУпаковок,
	|	Т.Количество КАК Количество,
	|	Т.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	Т.Сумма КАК Сумма,
	|	Т.СуммаНДС КАК СуммаНДС,
	|	Т.СуммаСНДС КАК СуммаСНДС,
	|	Т.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	Т.НомерСтроки КАК НомерСтроки
	|ПОМЕСТИТЬ ВТТовары
	|ИЗ
	|	&Товары КАК Т
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Т.Номенклатура КАК Номенклатура,
	|	Т.Назначение КАК Назначение,
	|	Т.Характеристика КАК Характеристика,
	|	Т.Содержание КАК Содержание,
	|	Т.Упаковка КАК Упаковка,
	|	Т.Серия КАК Серия,
	|	Т.СтатусУказанияСерий КАК СтатусУказанияСерий,
	|	Т.Склад КАК Склад,
	|	Т.Подразделение КАК Подразделение,
	|	Т.СписатьНаРасходы КАК СписатьНаРасходы,
	|	Т.СтатьяРасходов КАК СтатьяРасходов,
	|	Т.АналитикаРасходов КАК АналитикаРасходов,
	|	Т.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	Т.ВидЗапасов КАК ВидЗапасов,
	|	Т.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	Т.НастройкаСчетовУчета КАК НастройкаСчетовУчета,
	|	Т.НомерГТД КАК НомерГТД,
	|	Т.КодТНВЭД КАК КодТНВЭД,
	|	Т.Цена КАК Цена,
	|	Т.СтавкаНДС КАК СтавкаНДС,
	|	Т.КоличествоУпаковок КАК КоличествоУпаковок,
	|	Т.Количество КАК Количество,
	|	Т.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	Т.Сумма КАК Сумма,
	|	Т.СуммаНДС КАК СуммаНДС,
	|	Т.СуммаСНДС КАК СуммаСНДС,
	|	Т.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	Т.НомерСтроки,
	|	Т.ВариантОтражения КАК ВариантОтражения
	|ПОМЕСТИТЬ ВТРасхождения
	|ИЗ
	|	&Расхождения КАК Т
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Таблица.Номенклатура КАК Номенклатура,
	|	МАКСИМУМ(Таблица.НоменклатураПартнера) КАК НоменклатураПартнера,
	|	Таблица.Характеристика КАК Характеристика,
	|	Таблица.Содержание КАК Содержание,
	|	Таблица.Назначение КАК Назначение,
	|	Таблица.Упаковка КАК Упаковка,
	|	Таблица.Серия КАК Серия,
	|	Таблица.СтатусУказанияСерий КАК СтатусУказанияСерий,
	|	Таблица.Склад КАК Склад,
	|	Таблица.Подразделение КАК Подразделение,
	|	Таблица.СписатьНаРасходы КАК СписатьНаРасходы,
	|	Таблица.СтатьяРасходов КАК СтатьяРасходов,
	|	Таблица.АналитикаРасходов КАК АналитикаРасходов,
	|	Таблица.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	Таблица.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	МАКСИМУМ(Таблица.ВидЗапасов) КАК ВидЗапасов,
	|	МИНИМУМ(Таблица.НастройкаСчетовУчета) КАК НастройкаСчетовУчета,
	|	Таблица.НомерГТД КАК НомерГТД,
	|	Таблица.КодТНВЭД КАК КодТНВЭД,
	|	МАКСИМУМ(Таблица.СтавкаНДС) КАК СтавкаНДС,
	|	МАКСИМУМ(Таблица.Цена) КАК Цена,
	|	СУММА(Таблица.КоличествоУпаковок) КАК КоличествоУпаковок,
	|	СУММА(Таблица.Количество) КАК Количество,
	|	СУММА(Таблица.КоличествоПоРНПТ) КАК КоличествоПоРНПТ,
	|	СУММА(Таблица.Сумма) КАК Сумма,
	|	СУММА(Таблица.СуммаНДС) КАК СуммаНДС,
	|	СУММА(Таблица.СуммаСНДС) КАК СуммаСНДС,
	|	СУММА(Таблица.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
	|	МАКСИМУМ(Таблица.СтавкаНДСПосле) КАК СтавкаНДСПосле,
	|	МАКСИМУМ(Таблица.ЦенаПосле) КАК ЦенаПосле,
	|	СУММА(Таблица.КоличествоУпаковокПосле) КАК КоличествоУпаковокПосле,
	|	СУММА(Таблица.КоличествоПосле) КАК КоличествоПосле,
	|	СУММА(Таблица.КоличествоПоРНПТПосле) КАК КоличествоПоРНПТПосле,
	|	СУММА(Таблица.СуммаПосле) КАК СуммаПосле,
	|	СУММА(Таблица.СуммаНДСПосле) КАК СуммаНДСПосле,
	|	СУММА(Таблица.СуммаСНДСПосле) КАК СуммаСНДСПосле,
	|	СУММА(Таблица.СуммаВзаиморасчетовПосле) КАК СуммаВзаиморасчетовПосле,
	|	МАКСИМУМ(Таблица.НомерСтроки) КАК НомерСтроки,
	|	МАКСИМУМ(Таблица.ВариантОтраженияДо) КАК ВариантОтраженияСписания,
	|	ЕСТЬNULL(МАКСИМУМ(Таблица.ВариантОтраженияПосле),МАКСИМУМ(Таблица.ВариантОтраженияДо)) КАК ВариантОтражения
	|ИЗ
	|	(ВЫБРАТЬ
	|		Т.Номенклатура КАК Номенклатура,
	|		МАКСИМУМ(Т.НоменклатураПартнера) КАК НоменклатураПартнера,
	|		Т.Назначение КАК Назначение,
	|		Т.Характеристика КАК Характеристика,
	|		Т.Содержание КАК Содержание,
	|		Т.Упаковка КАК Упаковка,
	|		Т.Серия КАК Серия,
	|		Т.СтатусУказанияСерий КАК СтатусУказанияСерий,
	|		Т.Склад КАК Склад,
	|		Т.Подразделение КАК Подразделение,
	|		Т.СписатьНаРасходы КАК СписатьНаРасходы,
	|		Т.СтатьяРасходов КАК СтатьяРасходов,
	|		Т.АналитикаРасходов КАК АналитикаРасходов,
	|		Т.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|		МАКСИМУМ(Т.ВидЗапасов) КАК ВидЗапасов,
	|		Т.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|		МИНИМУМ(Т.НастройкаСчетовУчета) КАК НастройкаСчетовУчета,
	|		Т.НомерГТД КАК НомерГТД,
	|		Т.КодТНВЭД КАК КодТНВЭД,
	|		Т.СтавкаНДС КАК СтавкаНДС,
	|		СУММА(Т.Цена) КАК Цена,
	|		СУММА(Т.КоличествоУпаковок) КАК КоличествоУпаковок,
	|		СУММА(Т.Количество) КАК Количество,
	|		СУММА(Т.КоличествоПоРНПТ) КАК КоличествоПоРНПТ,
	|		СУММА(Т.Сумма) КАК Сумма,
	|		СУММА(Т.СуммаНДС) КАК СуммаНДС,
	|		СУММА(Т.СуммаСНДС) КАК СуммаСНДС,
	|		СУММА(Т.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
	|		NULL КАК СтавкаНДСПосле,
	|		NULL КАК ЦенаПосле,
	|		СУММА(Т.КоличествоУпаковокПосле) КАК КоличествоУпаковокПосле,
	|		СУММА(Т.КоличествоПосле) КАК КоличествоПосле,
	|		СУММА(Т.КоличествоПоРНПТПосле) КАК КоличествоПоРНПТПосле,
	|		СУММА(Т.СуммаПосле) КАК СуммаПосле,
	|		СУММА(Т.СуммаНДСПосле) КАК СуммаНДСПосле,
	|		СУММА(Т.СуммаСНДСПосле) КАК СуммаСНДСПосле,
	|		СУММА(Т.СуммаВзаиморасчетовПосле) КАК СуммаВзаиморасчетовПосле,
	|		МАКСИМУМ(Т.НомерСтроки) КАК НомерСтроки,
	|		МАКСИМУМ(РасхожденияДо.ВариантОтражения) КАК ВариантОтраженияДо,
	|		NULL КАК ВариантОтраженияПосле
	|	ИЗ
	|		(ВЫБРАТЬ
	|			Товары.Номенклатура КАК Номенклатура,
	|			Товары.НоменклатураПартнера КАК НоменклатураПартнера,
	|			Товары.Назначение КАК Назначение,
	|			Товары.Характеристика КАК Характеристика,
	|			Товары.Содержание КАК Содержание,
	|			Товары.Упаковка КАК Упаковка,
	|			Товары.Серия КАК Серия,
	|			Товары.СтатусУказанияСерий КАК СтатусУказанияСерий,
	|			Товары.Склад КАК Склад,
	|			Товары.Подразделение КАК Подразделение,
	|			Товары.СписатьНаРасходы КАК СписатьНаРасходы,
	|			Товары.СтатьяРасходов КАК СтатьяРасходов,
	|			Товары.АналитикаРасходов КАК АналитикаРасходов,
	|			Товары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|			НЕОПРЕДЕЛЕНО КАК ВидЗапасов,
	|			Товары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|			Товары.НастройкаСчетовУчета КАК НастройкаСчетовУчета,
	|			Товары.НомерГТД КАК НомерГТД,
	|			Товары.КодТНВЭД КАК КодТНВЭД,
	|			Товары.СтавкаНДС КАК СтавкаНДС,
	|			Товары.Цена КАК Цена,
	|			Товары.КоличествоУпаковок КАК КоличествоУпаковок,
	|			Товары.Количество КАК Количество,
	|			Товары.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|			Товары.Сумма КАК Сумма,
	|			Товары.СуммаНДС КАК СуммаНДС,
	|			Товары.СуммаСНДС КАК СуммаСНДС,
	|			Товары.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|			0 КАК КоличествоУпаковокПосле,
	|			0 КАК КоличествоПосле,
	|			0 КАК КоличествоПоРНПТПосле,
	|			0 КАК СуммаПосле,
	|			0 КАК СуммаНДСПосле,
	|			0 КАК СуммаСНДСПосле,
	|			0 КАК СуммаВзаиморасчетовПосле,
	|			Товары.НомерСтроки КАК НомерСтроки
	|		ИЗ
	|			ВТТовары КАК Товары
	|		
	|		ОБЪЕДИНИТЬ ВСЕ
	|		
	|		ВЫБРАТЬ
	|			Расхождения.Номенклатура,
	|			NULL,
	|			Расхождения.Назначение,
	|			Расхождения.Характеристика,
	|			Расхождения.Содержание,
	|			Расхождения.Упаковка,
	|			Расхождения.Серия,
	|			Расхождения.СтатусУказанияСерий,
	|			Расхождения.Склад,
	|			Расхождения.Подразделение,
	|			Расхождения.СписатьНаРасходы,
	|			Расхождения.СтатьяРасходов,
	|			Расхождения.АналитикаРасходов,
	|			Расхождения.АналитикаАктивовПассивов,
	|			Расхождения.ВидЗапасов,
	|			Расхождения.НаправлениеДеятельности,
	|			Расхождения.НастройкаСчетовУчета,
	|			Расхождения.НомерГТД,
	|			Расхождения.КодТНВЭД,
	|			Расхождения.СтавкаНДС,
	|			0,
	|			-Расхождения.КоличествоУпаковок,
	|			-Расхождения.Количество,
	|			-Расхождения.КоличествоПоРНПТ,
	|			-Расхождения.Сумма,
	|			-Расхождения.СуммаНДС,
	|			-Расхождения.СуммаСНДС,
	|			-Расхождения.СуммаВзаиморасчетов,
	|			0,
	|			0,
	|			0,
	|			0,
	|			0,
	|			0,
	|			0,
	|			0
	|		ИЗ
	|			ВТРасхождения КАК Расхождения) КАК Т
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВТРасхождения КАК РасхожденияДо
	|			ПО РасхожденияДо.Номенклатура = Т.Номенклатура
	|			И РасхожденияДо.Назначение = Т.Назначение
	|			И РасхожденияДо.Характеристика = Т.Характеристика
	|			И РасхожденияДо.Содержание = Т.Содержание
	|			И РасхожденияДо.Упаковка = Т.Упаковка
	|			И РасхожденияДо.Серия = Т.Серия
	|			И РасхожденияДо.СтатусУказанияСерий = Т.СтатусУказанияСерий
	|			И РасхожденияДо.Склад = Т.Склад
	|			И РасхожденияДо.Подразделение = Т.Подразделение
	|			И РасхожденияДо.СписатьНаРасходы = Т.СписатьНаРасходы
	|			И РасхожденияДо.СтатьяРасходов = Т.СтатьяРасходов
	|			И РасхожденияДо.АналитикаРасходов = Т.АналитикаРасходов
	|			И РасхожденияДо.АналитикаАктивовПассивов = Т.АналитикаАктивовПассивов
	|			И РасхожденияДо.НаправлениеДеятельности = Т.НаправлениеДеятельности
	|			И РасхожденияДо.НомерГТД = Т.НомерГТД
	|			И РасхожденияДо.КодТНВЭД = Т.КодТНВЭД
	|			И РасхожденияДо.СтавкаНДС = Т.СтавкаНДС
	|
	|	СГРУППИРОВАТЬ ПО
	|		Т.Номенклатура,
	|		Т.Назначение,
	|		Т.Характеристика,
	|		Т.Содержание,
	|		Т.Упаковка,
	|		Т.Серия,
	|		Т.СтатусУказанияСерий,
	|		Т.Склад,
	|		Т.Подразделение,
	|		Т.СписатьНаРасходы,
	|		Т.СтатьяРасходов,
	|		Т.АналитикаРасходов,
	|		Т.АналитикаАктивовПассивов,
	|		Т.НаправлениеДеятельности,
	|		Т.НастройкаСчетовУчета,
	|		Т.НомерГТД,
	|		Т.КодТНВЭД,
	|		Т.СтавкаНДС
	|	
	|	ИМЕЮЩИЕ
	|		(СУММА(Т.КоличествоУпаковок) <> 0
	|			ИЛИ СУММА(Т.Количество) <> 0
	|			ИЛИ СУММА(Т.КоличествоПоРНПТ) <> 0
	|			ИЛИ СУММА(Т.Сумма) <> 0
	|			ИЛИ СУММА(Т.СуммаНДС) <> 0
	|			ИЛИ СУММА(Т.СуммаСНДС) <> 0
	|			ИЛИ СУММА(Т.СуммаВзаиморасчетов) <> 0)
	|	
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		Товары.Номенклатура,
	|		Товары.НоменклатураПартнера,
	|		Товары.Назначение,
	|		Товары.Характеристика,
	|		Товары.Содержание,
	|		Товары.Упаковка,
	|		Товары.Серия,
	|		Товары.СтатусУказанияСерий,
	|		Товары.Склад,
	|		Товары.Подразделение,
	|		Товары.СписатьНаРасходы,
	|		Товары.СтатьяРасходов,
	|		Товары.АналитикаРасходов,
	|		Товары.АналитикаАктивовПассивов,
	|		НЕОПРЕДЕЛЕНО,
	|		Товары.НаправлениеДеятельности,
	|		Товары.НастройкаСчетовУчета,
	|		Товары.НомерГТД,
	|		Товары.КодТНВЭД,
	|		NULL,
	|		NULL,
	|		0,
	|		0,
	|		0,
	|		0,
	|		0,
	|		0,
	|		0,
	|		Товары.СтавкаНДС,
	|		Товары.Цена,
	|		Товары.КоличествоУпаковок,
	|		Товары.Количество,
	|		Товары.КоличествоПоРНПТ,
	|		Товары.Сумма,
	|		Товары.СуммаНДС,
	|		Товары.СуммаСНДС,
	|		Товары.СуммаВзаиморасчетов,
	|		Товары.НомерСтроки,
	|		NULL КАК ВариантОтраженияДо,
	|		РасхожденияПосле.ВариантОтражения КАК ВариантОтраженияПосле
	|	ИЗ
	|		ВТТовары КАК Товары
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВТРасхождения КАК РасхожденияПосле
	|			ПО РасхожденияПосле.Номенклатура = Товары.Номенклатура
	|			И РасхожденияПосле.Назначение = Товары.Назначение
	|			И РасхожденияПосле.Характеристика = Товары.Характеристика
	|			И РасхожденияПосле.Содержание = Товары.Содержание
	|			И РасхожденияПосле.Упаковка = Товары.Упаковка
	|			И РасхожденияПосле.Серия = Товары.Серия
	|			И РасхожденияПосле.СтатусУказанияСерий = Товары.СтатусУказанияСерий
	|			И РасхожденияПосле.Склад = Товары.Склад
	|			И РасхожденияПосле.Подразделение = Товары.Подразделение
	|			И РасхожденияПосле.СписатьНаРасходы = Товары.СписатьНаРасходы
	|			И РасхожденияПосле.СтатьяРасходов = Товары.СтатьяРасходов
	|			И РасхожденияПосле.АналитикаРасходов = Товары.АналитикаРасходов
	|			И РасхожденияПосле.АналитикаАктивовПассивов = Товары.АналитикаАктивовПассивов
	|			И РасхожденияПосле.НаправлениеДеятельности = Товары.НаправлениеДеятельности
	|			И РасхожденияПосле.НомерГТД = Товары.НомерГТД
	|			И РасхожденияПосле.КодТНВЭД = Товары.КодТНВЭД
	|			И РасхожденияПосле.СтавкаНДС = Товары.СтавкаНДС
	|		) КАК Таблица
	|
	|СГРУППИРОВАТЬ ПО
	|	Таблица.Номенклатура,
	|	Таблица.Назначение,
	|	Таблица.Характеристика,
	|	Таблица.Содержание,
	|	Таблица.Упаковка,
	|	Таблица.Серия,
	|	Таблица.СтатусУказанияСерий,
	|	Таблица.Склад,
	|	Таблица.Подразделение,
	|	Таблица.СписатьНаРасходы,
	|	Таблица.СтатьяРасходов,
	|	Таблица.АналитикаРасходов,
	|	Таблица.АналитикаАктивовПассивов,
	|	Таблица.НаправлениеДеятельности,
	|	Таблица.НомерГТД,
	|	Таблица.КодТНВЭД
	|
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки";
	
	Запрос.УстановитьПараметр("Товары", Объект.Товары.Выгрузить());
	Запрос.УстановитьПараметр("Расхождения", Объект.Расхождения.Выгрузить());
	
	ТаблицаРезультата = Запрос.Выполнить().Выгрузить();
	
	// Так как цена в табличной части "Расхождения" не хранится, рассчитаем "Цену до" отдельно
	ИмяКоличества = ?(ИспользуетсяКоличествоУпаковок, "КоличествоУпаковок", "Количество");
	Для каждого ТекущаяСтрока Из ТаблицаРезультата Цикл
		Если ТекущаяСтрока[ИмяКоличества] = 0 Тогда
			ТекущаяСтрока.Цена = ТекущаяСтрока.Сумма;
		Иначе
			ТекущаяСтрока.Цена = Окр(ТекущаяСтрока.Сумма / ТекущаяСтрока[ИмяКоличества], 2);
		КонецЕсли;
		ТекущаяСтрока.НомерСтроки = ТаблицаРезультата.Индекс(ТекущаяСтрока)+1;
	КонецЦикла;
	
	Возврат ТаблицаРезультата;
	
КонецФункции

// Возвращает строку с реквизитами для связи строк ТЧ "Товары" и ТЧ "Расхождения"
//
// Параметры:
//  КорректировкаПриобретенияУслугПрочихАктивов - Булево - корректировка услуг и прочих активов
//
// Возвращаемое значение:
//  Строка - список реквизитов связи.
//
Функция КлючевыеРеквизитыСвязиСтрокТаблиц(КорректировкаПриобретенияУслугПрочихАктивов) Экспорт
	
	Если КорректировкаПриобретенияУслугПрочихАктивов Тогда
		КлючевыеРеквизиты = "Содержание,Подразделение,СтатьяРасходов,АналитикаРасходов";
	Иначе
		КлючевыеРеквизиты = "Номенклатура,Характеристика,Назначение,Серия,Упаковка,Склад,НомерГТД,СтатьяРасходов,АналитикаРасходов,Подразделение";
	КонецЕсли;
	
	Возврат КлючевыеРеквизиты;

КонецФункции

#КонецОбласти

#Область Печать

// Возвращает правила печати печатной формы Задания на отбор (размещение) товаров.
//
// Возвращаемое значение:
//	Структура - состав свойств см. Обработки.ПечатьЗаданияНаОтборРазмещениеТоваров.ДобавитьКомандуПечати.
//
Функция ПравилаПечатиЗаданияНаОтборРазмещение() Экспорт
	
	ПравилаПечатиЗадания = Обработки.ПечатьЗаданияНаОтборРазмещениеТоваров.ПравилаПечатиЗаданияНаОтборРазмещение();
	ПравилаПечатиЗадания.ОперацияПоступления	= Истина;
	ПравилаПечатиЗадания.КорректировкаТоваров	= Истина;
	ПравилаПечатиЗадания.СкладыВТЧ				= Истина;
	ПравилаПечатиЗадания.ИмяТЧТовары			= "Расхождения";
	
	Возврат ПравилаПечатиЗадания;
	
КонецФункции

#КонецОбласти

// Возвращает структуру с наименованием табличных частей документа, хранящих информацию о товарах.
//
// Возвращаемое значение:
//	Структура - коллекция, содержащая следующие наименования табличных частей:
//		* Товары - ТаблицаЗначений, ТабличнаяЧасть, Неопределено - данные о товарах документа.
//		* Расхождения - ТаблицаЗначений, ТабличнаяЧасть, Неопределено - данные о расхождениях приобретения документа.
//	
Функция КоллекцияТабличныхЧастейТоваров() Экспорт
	
	ТаблицыДокумента = Новый Структура;
	ТаблицыДокумента.Вставить("Товары");
	ТаблицыДокумента.Вставить("Расхождения");
	
	Возврат ТаблицыДокумента;
	
КонецФункции

// Функция-конструктор параметров процедуры ИсправляемыйДокумент
// 
// Возвращаемое значение:
// 	Структура - Описание:
// * ИсправляемыйДокумент - ДокументСсылка.ПриобретениеТоваровУслуг
// * ДокументОснование - ДокументСсылка.ПриобретениеТоваровУслуг
// * Дата - Дата
// * ВидКорректировки - ПеречислениеСсылка.ХозяйственныеОперации
//
Функция ПараметрыПолученияИсправляемогоДокумента() Экспорт
	
	Параметры = Новый Структура;
	Параметры.Вставить("ИсправляемыйДокумент", Документы.ПриобретениеТоваровУслуг.ПустаяСсылка());
	Параметры.Вставить("ДокументОснование", Документы.ПриобретениеТоваровУслуг.ПустаяСсылка());
	Параметры.Вставить("Дата", Дата(1, 1, 1));
	Параметры.Вставить("ВидКорректировки", Перечисления.ХозяйственныеОперации.ПустаяСсылка());
	
	Возврат Параметры;	
	
КонецФункции

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

#Область ПроверкаЗаполненияДокументаДоВводаОстатков

// Выполняет проверку заполнения таблицы 'ТаблицаКорректировки' формы документа корректировки до ввода остатков.
//
// Параметры:
//	Форма - Структура - коллекция содержащая сведения о документе и включающая следующие поля:
//		* Объект - ДокументОбъект.КорректировкаПриобретения - объект документа.
//		* ПараметрыУказанияСерий - см. НоменклатураСервер.ПараметрыУказанияСерий.
//		* ТаблицаКорректировки - ТаблицаЗначений - таблица, содержащая сведения о корректируемых товарах, работах и услугах.
//	ПроверяемыеРеквизиты - Массив Из Строка - описание проверяемых полей объекта документа, перечисленных через запятую.
//	Отказ - Булево - признак отказа выполнения дальнейших действий с объектом документа, из-за найденных ошибках при
//						проверке заполнения.
//
Процедура ПроверитьЗаполнениеРеквизитов(Форма, ПроверяемыеРеквизиты, Отказ) Экспорт
	
	ТЗТаблицаКорректировки	= Форма.ТаблицаКорректировки;
	ИмяТЧ					= "ТаблицаКорректировки";
	ПредставлениеТЧ			= НСтр("ru = 'Данные корректировки'");
	
	Если ТЗТаблицаКорректировки.Количество() = 0 Тогда
		ТекстСообщения= НСтр("ru = 'Не введено ни одной строки в список ""%1""'");
		ТекстСообщения = СтрШаблон(ТекстСообщения, ПредставлениеТЧ);
		
		ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
												Неопределено,
												ИмяТЧ,
												"",
												Отказ);
	КонецЕсли;
	
	Объект = Форма.Объект;
	
	ИспользоватьУчетНДС = ПолучитьФункциональнуюОпцию("ИспользоватьУчетНДС")
							И Объект.НалогообложениеНДС <> Перечисления.ТипыНалогообложенияНДС.ПустаяСсылка()
							И Объект.НалогообложениеНДС <> Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
	ИспользоватьНесколькоСкладов = ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоСкладов");
	ИспользоватьХарактеристикиНоменклатуры = ПолучитьФункциональнуюОпцию("ИспользоватьХарактеристикиНоменклатуры");
	ЭтоКорректировкаДоВводаОстатковТоваровИУслуг =
		Объект.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг;
	ИспользоватьУчетПрослеживаемыхИмпортныхТоваров = УчетПрослеживаемыхТоваровЛокализация.ИспользоватьУчетПрослеживаемыхИмпортныхТоваров(
														Объект.Дата);
	
	ТекстыЗапроса = Новый Массив;
	ТекстыЗапроса.Добавить(ТекстЗапросаВТТаблицыТоваров());
	ТекстыЗапроса.Добавить(ТекстЗапросаВТДанныеДокументаОснования());
	ТекстыЗапроса.Добавить(ТекстЗапросаВТДанныеПредыдущейКорректировки());
	ТекстыЗапроса.Добавить(ТекстЗапросаВТПроверкиДанныхПоПоследнейКорректировке());
	
	ТекстыЗапросовПроверки = Новый Массив;
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияСклада());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияНоменклатурыИСодержания());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияХарактеристик());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияКоличества());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияСуммовыхПоказателей());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияСтавокНДС());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиВариантовОтражения());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиЗаполненияСкладаВТабличнойЧасти());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиТипКорректировкиНеСоответствуетПредыдущей());
	
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиНалогообложениеНДССоответствуетОснованию());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиОрганизацияСоответствуетОснованию());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиПартнерСоответствуетОснованию());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиКонтрагентСоответствуетОснованию());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиДоговорСоответствуетОснованию());
	ТекстыЗапросовПроверки.Добавить(ТекстЗапросаПроверкиПорядокРасчетовСоответствуетОснованию());
	
	ТекстЗапросаПроверки = СтрСоединить(ТекстыЗапросовПроверки, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
	ТекстЗапросаПроверки = ТекстЗапросаПроверки + "
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки";
	
	ТекстыЗапроса.Добавить(ТекстЗапросаПроверки);
	
	ТекстыЗапросовПроверкиПоИсходнойКорректировки = Новый Массив;
	ТекстыЗапросовПроверкиПоИсходнойКорректировки.Добавить(ТекстЗапросаПроверкиДанныхПоПоследнейКорректировке());
	
	ТекстЗапросовПроверкиПоИсходнойКорректировки = СтрСоединить(ТекстыЗапросовПроверкиПоИсходнойКорректировки, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
	
	ТекстЗапросовПроверкиПоИсходнойКорректировки = ТекстЗапросовПроверкиПоИсходнойКорректировки + "
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки";
	
	ТекстыЗапроса.Добавить(ТекстЗапросовПроверкиПоИсходнойКорректировки);
	
	ТекстЗапроса = СтрСоединить(ТекстыЗапроса, ОбщегоНазначения.РазделительПакетаЗапросов());
	
	МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
	
	СформироватьВременнуюТаблицуИсходныхДанных(МенеджерВременныхТаблиц, Объект.ДокументОснование, Объект.Ссылка);
	
	Запрос = Новый Запрос;
	Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
	Запрос.Текст = ТекстЗапроса;
	
	Запрос.УстановитьПараметр("Ссылка",					 Объект.Ссылка);
	Запрос.УстановитьПараметр("Дата",					 ?(ЗначениеЗаполнено(Объект.Ссылка), Объект.Дата, ТекущаяДатаСеанса()));
	Запрос.УстановитьПараметр("ДокументОснование",		 Объект.ДокументОснование);
	Запрос.УстановитьПараметр("НалогообложениеНДС",		 Объект.НалогообложениеНДС);
	Запрос.УстановитьПараметр("Организация",			 Объект.Организация);
	Запрос.УстановитьПараметр("Партнер",				 Объект.Партнер);
	Запрос.УстановитьПараметр("Контрагент",				 Объект.Контрагент);
	Запрос.УстановитьПараметр("Договор",				 Объект.Договор);
	Запрос.УстановитьПараметр("ПорядокРасчетов",		 Объект.ПорядокРасчетов);
	Запрос.УстановитьПараметр("Склад",					 Объект.Склад);
	Запрос.УстановитьПараметр("ТипКорректировки",		 Объект.ТипКорректировки);
	Запрос.УстановитьПараметр("ТаблицаТоваров",			 ТЗТаблицаКорректировки);
	Запрос.УстановитьПараметр("ИспользоватьУчетНДС",	 ИспользоватьУчетНДС);
	Запрос.УстановитьПараметр("ИспользоватьНесколькоСкладов",
								ИспользоватьНесколькоСкладов);
	Запрос.УстановитьПараметр("ИспользоватьХарактеристикиНоменклатуры",
								ИспользоватьХарактеристикиНоменклатуры);
	Запрос.УстановитьПараметр("ЭтоКорректировкаДоВводаОстатковТоваровИУслуг",
								ЭтоКорректировкаДоВводаОстатковТоваровИУслуг);
	Запрос.УстановитьПараметр("ИспользоватьУчетПрослеживаемыхИмпортныхТоваров",
								ИспользоватьУчетПрослеживаемыхИмпортныхТоваров);
	
	ПакетРезультатов = Запрос.ВыполнитьПакет();
	
	ВыборкаОшибокЗаролнения = ПакетРезультатов[ПакетРезультатов.Количество()-2].Выбрать();
	ВыборкаОшибокПоЦепочкеКорректировок = ПакетРезультатов[ПакетРезультатов.Количество()-1].Выбрать();
	
	СообщитьОшибкиЗаполнения(ВыборкаОшибокЗаролнения, Отказ);
	СообщитьОшибкиПоЦепочкеКорректировок(ВыборкаОшибокПоЦепочкеКорректировок, Отказ);
	
	ПараметрыПроверки = НоменклатураСервер.ПараметрыПроверкиЗаполненияСерий();
	ПараметрыПроверки.ПредставлениеТЧ			= ПредставлениеТЧ;
	ПараметрыПроверки.ИмяРеквизитаСерия			= "Серия";
	ПараметрыПроверки.ПутьКДаннымТаблицыФормы	= "";
	
	НоменклатураСервер.ПроверитьЗаполнениеСерий(Форма,
												Форма.ПараметрыУказанияСерий,
												Отказ,
												Неопределено,
												ПараметрыПроверки);
	
	ЭтоПрослеживаемыйДокумент = УчетПрослеживаемыхТоваровЛокализация.ЭтоПрослеживаемыйДокумент(
									ТЗТаблицаКорректировки, Объект.Дата);
	
	Если (ЭтоПрослеживаемыйДокумент
			Или ПолучитьФункциональнуюОпцию("ЗапретитьПоступлениеТоваровБезНомеровГТД"))
		И Объект.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг Тогда
		
		ПараметрыПроверки = ЗапасыСервер.ПараметрыПроверкиЗаполненияНомеровГТД();
		ПараметрыПроверки.ИмяТЧ				= ИмяТЧ;
		ПараметрыПроверки.ПредставлениеТЧ	= ПредставлениеТЧ;
		ПараметрыПроверки.ПроверятьРаботы	= Истина;
		
		ЗапасыСервер.ПроверитьЗаполнениеНомеровГТД(Форма, Отказ, ПараметрыПроверки);
		
		УчетПрослеживаемыхТоваровЛокализация.ПроверитьДанныеПрослеживаемостиНомеровГТД(
			Форма, ТЗТаблицаКорректировки, Объект.Дата, "ТаблицаКорректировки");
		
	КонецЕсли;
	
	Если ЭтоПрослеживаемыйДокумент Тогда
		УчетПрослеживаемыхТоваровЛокализация.ПроверитьКорректностьНастроекТоваровРНПТ(
			Форма, ТЗТаблицаКорректировки, Объект.Дата);
	КонецЕсли;
	
	Если ИспользоватьУчетНДС Тогда
		ПроверитьУказаниеСуммыИСуммыНДС(Объект, МенеджерВременныхТаблиц, Отказ);
	КонецЕсли;
	
	ТипыНоменклатуры = Новый Массив;
	ТипыНоменклатуры.Добавить(Перечисления.ТипыНоменклатуры.Товар);
	ТипыНоменклатуры.Добавить(Перечисления.ТипыНоменклатуры.МногооборотнаяТара);
	ТипыНоменклатуры.Добавить(Перечисления.ТипыНоменклатуры.Услуга);
	ТипыНоменклатуры.Добавить(Перечисления.ТипыНоменклатуры.Работа);
	
	ТекстСообщения = НСтр("ru='Не указан получатель товаров/работ/услуг в строке %1 списка ""%2""'");
	ТекстСообщения = СтрЗаменить(ТекстСообщения, "%2", ПредставлениеТЧ);
	
	ЗапасыСервер.ПроверитьЗаполнениеПодразделенияВТабличнойЧасти(Форма,
																ТипыНоменклатуры,
																ТекстСообщения,
																Отказ,
																"ТаблицаКорректировки");
	
	ДополнительныеПроверяемыеРеквизиты = Новый Массив;
	ДополнительныеПроверяемыеРеквизиты.Добавить("ТаблицаКорректировки.АналитикаРасходов");
	
	ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ПроверяемыеРеквизиты, ДополнительныеПроверяемыеРеквизиты);
	
	РезультатПроверки = РезультатПроверкиПоРасхождениям(ТЗТаблицаКорректировки);
	
	ПараметрыДляВыбора = Новый Структура;
	ПараметрыДляВыбора.Вставить("ДатаДокумента",			Объект.Дата);
	ПараметрыДляВыбора.Вставить("ДокументОснование",		Объект.ДокументОснование);
	ПараметрыДляВыбора.Вставить("ХозяйственнаяОперация",	Объект.ВидКорректировки);
	ПараметрыДляВыбора.Вставить("ТипКорректировки",			Объект.ТипКорректировки);
	ПараметрыДляВыбора.Вставить("ОтразитьНаПрочихДоходах",	РезультатПроверки.СуммаНаПрочиеДоходы > 0);
	ПараметрыДляВыбора.Вставить("СписатьНаРасходы",			РезультатПроверки.СуммаНаПрочиеРасходы > 0);
	
	ПараметрыВыбораСтатейИАналитик = ПараметрыВыбораСтатейИАналитикКорректировкаДоВводаОстатков(ПараметрыДляВыбора);
	ДоходыИРасходыСервер.ОбработкаПроверкиЗаполнения(Форма, Отказ, ПроверяемыеРеквизиты, ПараметрыВыбораСтатейИАналитик);
	
	ОбщегоНазначения.УдалитьНепроверяемыеРеквизитыИзМассива(ПроверяемыеРеквизиты, ДополнительныеПроверяемыеРеквизиты);
	
	Если Не Отказ Тогда
		МассивУдаляемыхСтрок = Новый Массив();
		
		Для Каждого СтрокаТоваров Из Объект.Товары Цикл
			Если СтрокаТоваров.Количество = 0
				И СтрокаТоваров.КоличествоУпаковок = 0
				И СтрокаТоваров.СуммаСНДС = 0
				И СтрокаТоваров.СуммаНДС = 0 Тогда
				МассивУдаляемыхСтрок.Добавить(СтрокаТоваров);
			КонецЕсли;
		КонецЦикла;
		
		Для Каждого УдаляемаяСтрока Из МассивУдаляемыхСтрок Цикл
			Объект.Товары.Удалить(УдаляемаяСтрока);
		КонецЦикла;
	КонецЕсли;
	
КонецПроцедуры

#КонецОбласти

#КонецОбласти

#КонецЕсли

#Область ОбработчикиСобытий

Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	
	Если Данные.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг
		Или Данные.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов Тогда
		ПостфиксИмениДокумента = НСтр("ru = 'Корректировка приобретения до ввода остатков'");
	//++ НЕ УТ
	ИначеЕсли Данные.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КорректировкаОтчетаПереработчика Тогда
		ПостфиксИмениДокумента = НСтр("ru = 'Корректировка отчета переработчика'");
	//-- НЕ УТ
	Иначе
		ПостфиксИмениДокумента = НСтр("ru = 'Корректировка приобретения'");
	КонецЕсли;
	
	Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 %2 от %3'"),
		ПостфиксИмениДокумента,
		Данные.Номер,
		Данные.Дата);
	
	ОбщегоНазначенияУТКлиентСервер.ОбработкаПолученияПредставленияВходящегоДокумента(
		Данные, Представление, СтандартнаяОбработка, "КорректировкаПриобретения");
	
КонецПроцедуры

Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	Поля.Очистить();
	Поля.Добавить("ХозяйственнаяОперация");
	Поля.Добавить("НаименованиеВходящегоДокумента");
	Поля.Добавить("НомерВходящегоДокумента");
	Поля.Добавить("ДатаВходящегоДокумента");
	Поля.Добавить("Дата");
	Поля.Добавить("Номер");
	Поля.Добавить("ТипКорректировки");
	
КонецПроцедуры

Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
	
	Если ВидФормы = "ФормаОбъекта" Тогда
		Если Параметры.Свойство("Ключ") И ЗначениеЗаполнено(Параметры.Ключ)
			И (Параметры.Ключ.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг
				Или Параметры.Ключ.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов) Тогда
			СтандартнаяОбработка = Ложь;
			ВыбраннаяФорма = "ФормаДокументаДоВводаОстатков";
		ИначеЕсли Параметры.Свойство("ЗначенияЗаполнения")
			И Параметры.ЗначенияЗаполнения.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КорректировкаДоВводаОстатков Тогда
			СтандартнаяОбработка = Ложь;
			ВыбраннаяФорма = "ФормаДокументаДоВводаОстатков";
		ИначеЕсли Параметры.Свойство("ЗначениеКопирования")
			И (Параметры.ЗначениеКопирования.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг
				Или Параметры.ЗначениеКопирования.ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов) Тогда
			СтандартнаяОбработка = Ложь;
			ВыбраннаяФорма = "ФормаДокументаДоВводаОстатков";
		КонецЕсли;
	КонецЕсли;

КонецПроцедуры

#КонецОбласти

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
	
#Область СлужебныеПроцедурыИФункции

#Область Проведение

Функция ДополнительныеИсточникиДанныхДляДвижений(ИмяРегистра) Экспорт

	ИсточникиДанных = Новый Соответствие;

	Возврат ИсточникиДанных; 

КонецФункции

Процедура ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка)
	
	Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
	Запрос.УстановитьПараметр("Ссылка", ДокументСсылка);
	Запрос.УстановитьПараметр("ОперацииРаздельнойЗакупки", ЗакупкиСервер.ХозяйственныеОперацииРаздельнойЗакупкиБезОтборов());
	Запрос.Текст =
	"ВЫБРАТЬ
	|	ДанныеДокумента.Ссылка                                                              КАК Ссылка,
	|	ДанныеДокумента.Дата                                                                КАК Период,
	|	ДанныеДокумента.ДатаВходящегоДокумента                                              КАК ДатаВходящегоДокумента,
	|	ДанныеДокумента.Номер                                                               КАК Номер,
	|	ДанныеДокумента.НомерВходящегоДокумента                                             КАК НомерВходящегоДокумента,
	|	ДанныеДокумента.НаименованиеВходящегоДокумента                                      КАК НаименованиеВходящегоДокумента,
	|	ДанныеДокумента.ДокументОснование                                                   КАК ДокументОснование,
	|	ЕСТЬNULL(ДанныеДокумента.ДокументОснование.Дата, ДАТАВРЕМЯ(1,1,1))                  КАК ПериодПоступления,
	|	ДанныеДокумента.ЗакупкаПодДеятельность                                              КАК ЗакупкаПодДеятельность,
	|	ДанныеДокумента.Организация                                                         КАК Организация,
	|	ДанныеДокумента.Организация.ГоловнаяОрганизация                                     КАК ГоловнаяОрганизация,
	|	ДанныеДокумента.НалогообложениеНДС                                                  КАК НалогообложениеНДС,
	|	ДанныеДокумента.Партнер                                                             КАК Партнер,
	|	ДанныеДокумента.Контрагент                                                          КАК Контрагент,
	|	ДанныеДокумента.Подразделение                                                       КАК Подразделение,
	|	ЕСТЬNULL(ДанныеДокумента.Подразделение.ВариантОбособленногоУчетаТоваров, ЗНАЧЕНИЕ(Перечисление.ВариантыОбособленногоУчетаТоваров.ПустаяСсылка)) КАК ВариантОбособленногоУчетаТоваров,
	|	ДанныеДокумента.Сделка                                                              КАК Сделка,
	|	ЕСТЬNULL(ДанныеДокумента.Сделка.ОбособленныйУчетТоваровПоСделке, ЛОЖЬ)              КАК ОбособленныйУчетТоваровПоСделке,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.СтатьяРасходов ССЫЛКА ПланВидовХарактеристик.СтатьиРасходов
	|		ТОГДА ДанныеДокумента.СтатьяРасходов
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК СтатьяРасходов,
	|	ЕСТЬNULL(ДанныеДокумента.СтатьяРасходов.ВариантРаспределенияРасходовРегл, НЕОПРЕДЕЛЕНО) КАК ВариантРаспределенияРасходовРегл,
	|	ЕСТЬNULL(ДанныеДокумента.СтатьяРасходов.ВариантРаздельногоУчетаНДС, НЕОПРЕДЕЛЕНО)   КАК ВариантРаздельногоУчетаНДС,
	|	ДанныеДокумента.АналитикаРасходов                                                   КАК АналитикаРасходов,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиДоходов
	|		ТОГДА ДанныеДокумента.СтатьяДоходов
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК СтатьяДоходов,
	|	ДанныеДокумента.АналитикаДоходов                                                    КАК АналитикаДоходов,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.СтатьяРасходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов
	|		ТОГДА ДанныеДокумента.СтатьяРасходов
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК СтатьяАктивов,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов
	|		ТОГДА ДанныеДокумента.СтатьяДоходов
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК СтатьяПассивов,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.СтатьяРасходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов
	|		ТОГДА ДанныеДокумента.СтатьяРасходов.АктивПассив
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК СтатьяАктивовАктивПассив,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов
	|		ТОГДА ДанныеДокумента.СтатьяДоходов.АктивПассив
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК СтатьяПассивовАктивПассив,
	|	ДанныеДокумента.АналитикаАктивов                                                    КАК АналитикаАктивов,
	|	ДанныеДокумента.АналитикаПассивов                                                   КАК АналитикаПассивов,
	|	ДанныеДокумента.ВалютаВзаиморасчетов                                                КАК ВалютаВзаиморасчетов,
	|	ДанныеДокумента.Валюта                                                              КАК Валюта,
	|	ДанныеДокумента.ТипКорректировки                                                    КАК ТипКорректировки,
	|	ДанныеДокумента.ИсправляемыйДокумент                                                КАК ИсправляемыйДокумент,
	|	ДанныеДокумента.ПоступлениеПоЗаказам                                                КАК ПоступлениеПоЗаказам,
	|	ДанныеДокумента.ДатаПлатежа                                                         КАК ДатаПлатежа,
	|	ДанныеДокумента.ФормаОплаты                                                         КАК ФормаОплаты,
	|	ДанныеДокумента.Договор                                                             КАК Договор,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПриобретениеТоваровУслуг
	|			ТОГДА ВЫБОР
	|				КОГДА ЕСТЬNULL(ДанныеДокумента.ДокументОснование.ХозяйственнаяОперация, НЕОПРЕДЕЛЕНО) В
	|						(ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаТоварыВПути),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаФактуровкаПоставки),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСТоварыВПути),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСФактуровкаПоставки),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаПоИмпортуТоварыВПути))
	|					ТОГДА ИСТИНА
	|				ИНАЧЕ ЛОЖЬ
	|			КОНЕЦ
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ                                                                               КАК ИспользуетсяДокументПоступлениеТоваров,
	|	ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПриобретениеУслугПрочихАктивов	КАК ИспользуетсяДокументПриобретениеУслугПрочихАктивов,
	|	ДанныеДокумента.Соглашение                                                          КАК Соглашение,
	|	ЕСТЬNULL(ДанныеДокумента.Соглашение.ВариантПриемкиТоваров, ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.ПустаяСсылка)) КАК ВариантПриемкиТоваров,
	|	ДанныеДокумента.ВидКорректировки                                                    КАК ХозяйственнаяОперация,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаОтчетаПереработчика)
	|			ТОГДА ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаОтчетаПереработчика)
	|		КОГДА ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|			ТОГДА ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщика)
	|		ИНАЧЕ ЕСТЬNULL(ДанныеДокумента.ДокументОснование.ХозяйственнаяОперация, ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщика))
	|	КОНЕЦ                                                                               КАК ХозОперацияОснования,
	|	ЛОЖЬ 																				КАК ПроизводствоУПереработчикаВСтранахЕАЭС,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПриобретениеТоваровУслуг
	|       	ТОГДА ВЫРАЗИТЬ(ДанныеДокумента.ДокументОснование КАК Документ.ПриобретениеТоваровУслуг).НоваяМеханикаСозданияЗаявленийОВвозе
	|       ИНАЧЕ
	|   		ЛОЖЬ
	|	КОНЕЦ                                                                               КАК НоваяМеханикаСозданияЗаявленийОВвозе,
	|	ВЫБОР
	|		КОГДА
	|			ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПриобретениеТоваровУслуг
	|		ТОГДА
	|			ДанныеДокумента.ДокументОснование.ВернутьМногооборотнуюТару
	|		ИНАЧЕ
	|			ЛОЖЬ
	|	КОНЕЦ КАК ВернутьМногооборотнуюТару,
	|	ВЫБОР
	|		КОГДА
	|			ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПриобретениеТоваровУслуг
	|		ТОГДА
	|			ДанныеДокумента.ДокументОснование.ТребуетсяЗалогЗаТару
	|		ИНАЧЕ
	|			ЛОЖЬ
	|	КОНЕЦ КАК ТребуетсяЗалогЗаТару,
	|	
	|	ДанныеДокумента.Менеджер КАК Менеджер,
	|	ЕСТЬNULL(ДанныеДокумента.ДокументОснование.ГруппаФинансовогоУчета, ЗНАЧЕНИЕ(Справочник.ГруппыФинансовогоУчетаРасчетов.ПустаяСсылка)) КАК ГруппаФинансовогоУчета,
	|	ЕСТЬNULL(ДанныеДокумента.Договор.ГруппаФинансовогоУчета, ЗНАЧЕНИЕ(Справочник.ГруппыФинансовогоУчетаРасчетов.ПустаяСсылка)) КАК ГруппаФинансовогоУчетаДоговора,
	|	НаправленияДеятельности.Ссылка КАК НаправлениеДеятельности,
	|	ЛОЖЬ 								   КАК ПоЗаказам,
	|	ЛОЖЬ								   КАК ГруппировкаЗатрат,
	|	ЕСТЬNULL(НаправленияДеятельности.УчетЗатрат, ЛОЖЬ) КАК УчетЗатратПоНД,
	|	ДанныеДокумента.Склад                  КАК Склад,
	|	ДанныеДокумента.СуммаДокумента         КАК СуммаДокумента,
	|	ДанныеДокумента.Комментарий            КАК Комментарий,
	|	ДанныеДокумента.ПометкаУдаления        КАК ПометкаУдаления,
	|	ДанныеДокумента.Проведен               КАК Проведен,
	|	ДанныеДокумента.Автор                  КАК Автор,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПриобретениеТоваровУслуг
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК ДокументОснованиеЯвляетсяПриобретением,
	|	ВЫБОР
	|		КОГДА ДанныеДокумента.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|			ТОГДА ЛОЖЬ
	|		КОГДА ДанныеДокумента.ДокументОснование.ХозяйственнаяОперация В (&ОперацииРаздельнойЗакупки)
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ                                        КАК РаздельнаяЗакупка,
	//++ НЕ УТ
	|	ДанныеДокумента.НастройкаСчетовУчетаАктивов  КАК НастройкаСчетовУчетаАктивов,
	|	ДанныеДокумента.НастройкаСчетовУчетаПассивов КАК НастройкаСчетовУчетаПассивов,
	//-- НЕ УТ
	|	НастройкиХозяйственныхОпераций.Ссылка        КАК НастройкаХозяйственнойОперации,
	|	ДанныеДокумента.ДокументОснование.ХозяйственнаяОперация КАК ХозяйственнаяОперацияОснования,
	|	ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КАК ПустоеНазначение
	|ИЗ
	|	Документ.КорректировкаПриобретения КАК ДанныеДокумента
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НастройкиХозяйственныхОпераций КАК НастройкиХозяйственныхОпераций
	|		ПО ДанныеДокумента.ВидКорректировки = НастройкиХозяйственныхОпераций.ХозяйственнаяОперация
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НаправленияДеятельности КАК НаправленияДеятельности
	|		ПО НаправленияДеятельности.Ссылка = ДанныеДокумента.ДокументОснование.НаправлениеДеятельности
	|ГДЕ
	|	ДанныеДокумента.Ссылка = &Ссылка
	|";
	Результат = Запрос.Выполнить();
	Реквизиты = Результат.Выбрать();
	Реквизиты.Следующий();
	
	Для Каждого Колонка Из Результат.Колонки Цикл
		Запрос.УстановитьПараметр(Колонка.Имя, Реквизиты[Колонка.Имя]);
	КонецЦикла;
	
	Запрос.УстановитьПараметр("ИспользоватьУчетПрочихДоходовРасходов", ПолучитьФункциональнуюОпцию("ИспользоватьУчетПрочихДоходовРасходов")); 
	Запрос.УстановитьПараметр("ИспользоватьУчетПрочихАктивовПассивов", ПолучитьФункциональнуюОпцию("ИспользоватьУчетПрочихАктивовПассивов"));
	Запрос.УстановитьПараметр("ВалютаРегламентированногоУчета", ЗначениеНастроекПовтИсп.ВалютаРегламентированногоУчетаОрганизации(
			ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументСсылка, "Организация")));
	Запрос.УстановитьПараметр("ВалютаУправленческогоУчета", Константы.ВалютаУправленческогоУчета.Получить());
	Запрос.УстановитьПараметр("ФормироватьВидыЗапасовПоГруппамФинансовогоУчета", ПолучитьФункциональнуюОпцию("ФормироватьВидыЗапасовПоГруппамФинансовогоУчета"));
	Запрос.УстановитьПараметр("ИдентификаторМетаданных",          ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Документ.КорректировкаПриобретения"));
	Запрос.УстановитьПараметр("ХозОперацииЗакупкаПоИмпорту",      ЗакупкиСервер.ХозяйственныеОперацииПоОсновной(
																	Перечисления.ХозяйственныеОперации.ЗакупкаПоИмпорту));
	Запрос.УстановитьПараметр("ТипыНалогообложенияНДСУчитываетсяВСтоимости",
		УчетНДСУП.ВидыДеятельностиНДСУчитываетсяВСтоимости());
	Запрос.УстановитьПараметр("НалогообложениеОрганизации",
		УчетНДСУП.ПараметрыУчетаПоОрганизации(Реквизиты.Организация, Реквизиты.Период).ОсновноеНалогообложениеНДСПродажи);
	Запрос.УстановитьПараметр("КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям",
		ПолучитьФункциональнуюОпцию("КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям"));

	Если ЗначениеЗаполнено(Реквизиты.Договор) Тогда
		ИнформацияПоДоговору = НСтр("ru='По договору ""%Договор%""'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка());
		ИнформацияПоДоговору = СтрЗаменить(ИнформацияПоДоговору, "%Договор%", Реквизиты.Договор);
	КонецЕсли;
	Запрос.УстановитьПараметр("ИнформацияПоДоговору", ИнформацияПоДоговору);
	
	Запрос.УстановитьПараметр("ХозОперацииПоставкаПодПринципала",       ЗакупкиСервер.ХозяйственныеОперацииДляАгентскойЗакупкиПодПринципала());
	Запрос.УстановитьПараметр("ДокументОснованиеЯвляетсяПриобретением", Реквизиты.ДокументОснованиеЯвляетсяПриобретением);
	
	Запрос.УстановитьПараметр("ИдентификаторЗаявлениеОВвозеТоваров", ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Документ.ЗаявлениеОВвозеТоваров"));
	Запрос.УстановитьПараметр("ХозОперацииЗакупкаВСтранахЕАЭС", ЗакупкиСервер.ХозяйственныеОперацииПоОсновной(Перечисления.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭС));
	
	//++ НЕ УТ
	Если ТипЗнч(Реквизиты.ДокументОснование) = Тип("ДокументСсылка.ОтчетПереработчика2_5") Тогда
		РеквизитыДокументаОснования = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Реквизиты.ДокументОснование, "ХозяйственнаяОперация, ПоЗаказам, ГруппировкаЗатрат");
		Запрос.УстановитьПараметр("ПроизводствоУПереработчикаВСтранахЕАЭС", РеквизитыДокументаОснования.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПроизводствоУПереработчикаВСтранахЕАЭС2_5);
		Запрос.УстановитьПараметр("ПоЗаказам", РеквизитыДокументаОснования.ПоЗаказам);
		Запрос.УстановитьПараметр("ГруппировкаЗатрат", РеквизитыДокументаОснования.ГруппировкаЗатрат);
	КонецЕсли;
	//-- НЕ УТ
	
	ОперацииФактуровка = Новый Массив;
	ОперацииФактуровка.Добавить(Перечисления.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСФактуровкаПоставки);
	ОперацииФактуровка.Добавить(Перечисления.ХозяйственныеОперации.ЗакупкаУПоставщикаФактуровкаПоставки);
	ОперацииФактуровка.Добавить(Перечисления.ХозяйственныеОперации.ЗакупкаУПоставщикаТоварыВПути);
	ОперацииФактуровка.Добавить(Перечисления.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСТоварыВПути);
	ОперацииФактуровка.Добавить(Перечисления.ХозяйственныеОперации.ЗакупкаПоИмпортуТоварыВПути);
	
	ВариантОформленияЗакупокДоговора = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Реквизиты.Договор, "ВариантОформленияЗакупок");
	НеотфактурованныеПоставкиУслугРабот = ОперацииФактуровка.Найти(Реквизиты.ХозяйственнаяОперацияОснования) <> Неопределено
															И ВариантОформленияЗакупокДоговора = Перечисления.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваровИУслуг;
	
	Запрос.УстановитьПараметр("НеотфактурованныеПоставкиУслугРабот", НеотфактурованныеПоставкиУслугРабот);

	МоментВремениДокумента = ДокументСсылка.МоментВремени(); 
	Запрос.УстановитьПараметр("МоментВремениДокумента", МоментВремениДокумента);
	Запрос.УстановитьПараметр("ГраницаИсключаяДокумент", Новый Граница(МоментВремениДокумента, ВидГраницы.Исключая));	
	
	РасчетСебестоимостиПрикладныеАлгоритмы.ЗаполнитьПараметрыИнициализации(Запрос, Реквизиты);
	УчетПрослеживаемыхТоваровЛокализация.УстановитьПараметрыИспользованияУчетаПрослеживаемыхТоваров(Запрос);
	
КонецПроцедуры

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

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

Процедура УстановитьПараметрыЗапросаКоэффициентыВалют(Запрос)
	
	Если Запрос.Параметры.Свойство("КоэффициентПересчетаВВалютуУПР")
		И Запрос.Параметры.Свойство("КоэффициентПересчетаВВалютуРегл") Тогда
		Возврат;
	КонецЕсли;
	
	Коэффициенты = РаботаСКурсамиВалютУТ.ПолучитьКоэффициентыПересчетаВалюты(Запрос.Параметры.Валюта,
		Запрос.Параметры.ВалютаВзаиморасчетов,
		Запрос.Параметры.ПериодПоступления,
		Запрос.Параметры.Организация);
	
	Запрос.УстановитьПараметр("КоэффициентПересчетаВВалютуУПР",           Коэффициенты.КоэффициентПересчетаВВалютуУПР);
	Запрос.УстановитьПараметр("КоэффициентПересчетаВВалютуРегл",          Коэффициенты.КоэффициентПересчетаВВалютуРегл);
	
КонецПроцедуры

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

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

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

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

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

Функция ТекстЗапросаВтВозвратыПоставщикам(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтКорректировкиПриобретения";
	
	// Условия проверок соответствуют области КорректировкаПриобретения в общем модуле "РасчетСебестоимостиПодготовкаДанных".
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ТаблицаРасхождения.Ссылка.Организация КАК Организация,
	|	ТаблицаРасхождения.АналитикаУчетаНоменклатуры,
	|	(ВЫБОР
	|		КОГДА НЕ &УчитыватьСебестоимостьТоваровПоНазначениям ТОГДА АналитикаБезНазначения.КлючАналитики
	|		ИНАЧЕ ТаблицаРасхождения.АналитикаУчетаНоменклатуры КОНЕЦ) КАК АналитикаУчетаСебестоимости,
	|	ТаблицаРасхождения.ВидЗапасов,
	|	СУММА(ТаблицаРасхождения.Количество) КАК Количество
	|ПОМЕСТИТЬ ВтКорректировкиПриобретения
	|ИЗ
	|	Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.КлючиАналитикиУчетаНоменклатуры КАК Аналитика
	|		ПО Аналитика.Ссылка = ТаблицаРасхождения.АналитикаУчетаНоменклатуры
	|	ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаБезНазначения
	|		ПО АналитикаБезНазначения.Номенклатура = Аналитика.Номенклатура
	|		И АналитикаБезНазначения.Характеристика = Аналитика.Характеристика
	|		И АналитикаБезНазначения.Серия = Аналитика.Серия
	|		И АналитикаБезНазначения.МестоХранения = Аналитика.МестоХранения
	|		И АналитикаБезНазначения.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка)
	|		И АналитикаБезНазначения.СтатьяКалькуляции = Аналитика.СтатьяКалькуляции
	|ГДЕ
	|	ТаблицаРасхождения.Ссылка = &Ссылка
	|	И НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) < НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	|	И ТаблицаРасхождения.ВариантОтражения В (
	|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьСкладскиеОстатки),
	|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУчестьПриИнвентаризации))
	|СГРУППИРОВАТЬ ПО
	|	ТаблицаРасхождения.Ссылка.Организация,
	|	ТаблицаРасхождения.АналитикаУчетаНоменклатуры,
	|	(ВЫБОР
	|		КОГДА НЕ &УчитыватьСебестоимостьТоваровПоНазначениям ТОГДА АналитикаБезНазначения.КлючАналитики
	|		ИНАЧЕ ТаблицаРасхождения.АналитикаУчетаНоменклатуры КОНЕЦ),
	|	ТаблицаРасхождения.ВидЗапасов
	|";
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	ИмяРегистра = "ВтНеНулевыеОстаткиТоваров";
	
	// Получаем таблицу ненулевых остатков товаров на начало месяца.
	// Для метода оценки "Средняя за месяц" берем остатки товаров из регистра "Товары организаций".
	// Для метода оценки "ФИФО" при партионном учета 2.2 берем остатки из регистра "Себестоимость товаров" по корректируемой партии.
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ОстаткиТоваров.АналитикаУчетаНоменклатуры,
	|	ОстаткиТоваров.ВидЗапасов,
	|	ОстаткиТоваров.КоличествоОстаток КАК Количество
	|ПОМЕСТИТЬ ВтНеНулевыеОстаткиТоваров
	|ИЗ
	|	РегистрНакопления.ТоварыОрганизаций.Остатки(НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ),
	|		НЕ (&ПартионныйУчетВерсии22 И &ФИФОСкользящаяОценка)
	|		И (АналитикаУчетаНоменклатуры, Организация, ВидЗапасов) В (
	|			ВЫБРАТЬ
	|				Корректировки.АналитикаУчетаНоменклатуры,
	|				Корректировки.Организация,
	|               Корректировки.ВидЗапасов
	|			ИЗ
	|				ВтКорректировкиПриобретения КАК Корректировки
	|		)
	|	) КАК ОстаткиТоваров
	|";
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	ИмяРегистра = "ВтНеНулевыеОстаткиСебестоимости";
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ОстаткиТоваров.АналитикаУчетаНоменклатуры,
	|	ОстаткиТоваров.ВидЗапасов,
	|	ОстаткиТоваров.КоличествоОстаток КАК Количество
	|ПОМЕСТИТЬ ВтНеНулевыеОстаткиСебестоимости
	|ИЗ
	|	РегистрНакопления.СебестоимостьТоваров.Остатки(НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ),
	|		(&ПартионныйУчетВерсии22 И &ФИФОСкользящаяОценка)
	|		И (АналитикаУчетаНоменклатуры, ВидЗапасов, Организация, Партия) В (
	|			ВЫБРАТЬ
	|				Корректировки.АналитикаУчетаСебестоимости,
	|               Корректировки.ВидЗапасов,
	|				Корректировки.Организация,
	|				&ДокументОснование КАК Партия
	|			ИЗ
	|				ВтКорректировкиПриобретения КАК Корректировки
	|		)
	|	) КАК ОстаткиТоваров
	|";
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	ИмяРегистра = "ВтПрошлыеКорректировки";
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	Движения.АналитикаУчетаНоменклатуры,
	|	Движения.ВидЗапасов,
	|	СУММА(Движения.Количество) КАК Количество
	|ПОМЕСТИТЬ ВтПрошлыеКорректировки
	|ИЗ
	|	РегистрНакопления.СебестоимостьТоваров КАК Движения
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения КАК КорректировкаПриобретения
	|		ПО КорректировкаПриобретения.Ссылка = Движения.Регистратор
	|		И КорректировкаПриобретения.ДокументОснование = &ДокументОснование
	|ГДЕ
	|	Движения.Период МЕЖДУ НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И &Период
	|	И Движения.Регистратор <> &Ссылка
	|	И Движения.Активность
	|	И Движения.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
	|	И (Движения.АналитикаУчетаНоменклатуры, Движения.ВидЗапасов, Движения.Организация) В (
	|			ВЫБРАТЬ
	|				Корректировки.АналитикаУчетаСебестоимости,
	|				Корректировки.ВидЗапасов,
	|				Корректировки.Организация
	|			ИЗ
	|				ВтКорректировкиПриобретения КАК Корректировки
	|		)
	|СГРУППИРОВАТЬ ПО
	|	Движения.АналитикаУчетаНоменклатуры,
	|	Движения.ВидЗапасов
	|";
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	ИмяРегистра = "ВтВозвратыПоставщикам";
	
 	// Формируем таблицу аналитик товаров, для которых корректировка приобретения должна отрабатывать как возврат товаров поставщику.
	ТекстЗапроса = "
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	Корректировки.АналитикаУчетаНоменклатуры,
	|	ИСТИНА КАК ЭтоВозвратПоставщику
	|ПОМЕСТИТЬ ВтВозвратыПоставщикам
	|ИЗ
	|	ВтКорректировкиПриобретения КАК Корректировки
	|	ЛЕВОЕ СОЕДИНЕНИЕ ВтНеНулевыеОстаткиТоваров КАК ОстаткиТоваров
	|		ПО ОстаткиТоваров.АналитикаУчетаНоменклатуры = Корректировки.АналитикаУчетаНоменклатуры
	|		И ОстаткиТоваров.ВидЗапасов = Корректировки.ВидЗапасов
	|	ЛЕВОЕ СОЕДИНЕНИЕ ВтНеНулевыеОстаткиСебестоимости КАК ОстаткиСебестоимости
	|		ПО ОстаткиСебестоимости.АналитикаУчетаНоменклатуры = Корректировки.АналитикаУчетаСебестоимости
	|		И ОстаткиСебестоимости.ВидЗапасов = Корректировки.ВидЗапасов
	|	ЛЕВОЕ СОЕДИНЕНИЕ ВтПрошлыеКорректировки КАК ПрошлыеКорректировки
	|		ПО ПрошлыеКорректировки.АналитикаУчетаНоменклатуры = Корректировки.АналитикаУчетаСебестоимости
	|		И ПрошлыеКорректировки.ВидЗапасов = Корректировки.ВидЗапасов
	|ГДЕ
	|	НЕ (&ПартионныйУчетВерсии22 И &ФИФОСкользящаяОценка)
	|		И ЕСТЬNULL(ОстаткиТоваров.Количество, 0) <= (-Корректировки.Количество - ЕСТЬNULL(ПрошлыеКорректировки.Количество, 0))
	|	ИЛИ (&ПартионныйУчетВерсии22 И &ФИФОСкользящаяОценка)
	|		И ЕСТЬNULL(ОстаткиСебестоимости.Количество, 0) <= (-Корректировки.Количество - ЕСТЬNULL(ПрошлыеКорректировки.Количество, 0))
	|";
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаВтПараметрыНоменклатуры(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтПараметрыНоменклатуры";
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	Товары.Ссылка КАК Ссылка,
	// При двухходовке статус указаний серий в Приобретении и Корректировке приобретения может быть нулевым при учете серий по себестоимости.
	// Такие серии явно указываются в документе Поступление товаров. Здесь требуется узнать сам факт такой настройки учета серий.
	|	МАКСИМУМ(Товары.СтатусУказанияСерий = 14 ИЛИ ЕСТЬNULL(Политики.ПолитикаУчетаСерий.УчитыватьСебестоимостьПоСериям, ЛОЖЬ)) КАК УчетСерийПоСебестоимости,
	|	МАКСИМУМ(ЕСТЬNULL(Товары.АналитикаУчетаНоменклатуры.Номенклатура.ВидНоменклатуры.ПолитикаУчетаСерий.УчетСерийВНеотфактурованныхПоставкахТоваров, ЛОЖЬ)) КАК УчетСерийВНеотфактурованныхПоставкахТоваров,
	|	МАКСИМУМ(ЕСТЬNULL(Товары.АналитикаУчетаНоменклатуры.Номенклатура.ВидНоменклатуры.ПолитикаУчетаСерий.УчетТоваровВПутиОтПоставщикаПоСериям, ЛОЖЬ)) КАК УчетТоваровВПутиОтПоставщикаПоСериям,
	|	Товары.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура
	|ПОМЕСТИТЬ ВтПараметрыНоменклатуры
	|ИЗ
	|	Документ.КорректировкаПриобретения.Расхождения КАК Товары
	|	ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыНоменклатуры.ПолитикиУчетаСерий КАК Политики
	|		ПО Политики.Ссылка = Товары.АналитикаУчетаНоменклатуры.Номенклатура.ВидНоменклатуры
	|		И Политики.Склад = Товары.Склад
	|ГДЕ
	|	Товары.Ссылка = &Ссылка
	|
	|СГРУППИРОВАТЬ ПО
	|	Товары.Ссылка,
	|	Товары.АналитикаУчетаНоменклатуры.Номенклатура
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	Ссылка,
	|	Номенклатура
	|";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
	
КонецФункции

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

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

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

Функция ТекстЗапросаВтТоварыОрганизаций(Запрос, ТекстыЗапроса) Экспорт
	
	ИмяТаблицы = "ВтТоварыОрганизаций";
	
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаВидыЗапасовОприходование", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаВидыЗапасовОприходование(Запрос, ТекстыЗапроса);
	КонецЕсли;
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаВидыЗапасовСписание", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаВидыЗапасовСписание(Запрос, ТекстыЗапроса);
	КонецЕсли;
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПараметрыНоменклатуры", ТекстыЗапроса) Тогда
		ТекстЗапросаВтПараметрыНоменклатуры(Запрос, ТекстыЗапроса);
	КонецЕсли;

	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	НЕОПРЕДЕЛЕНО КАК ОрганизацияОтгрузки,
	|	ТаблицаВидыЗапасов.Номенклатура КАК Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика КАК Характеристика,
	|	ТаблицаВидыЗапасов.ВидЗапасов КАК ВидЗапасов,
	|	ТаблицаВидыЗапасов.НомерГТД КАК НомерГТД,
	|	ТаблицаВидыЗапасов.НомерГТД.ТипНомераГТД КАК НомерГТДТипНомераГТД,
	|	ТаблицаВидыЗапасов.Количество КАК Количество,
	|	ТаблицаВидыЗапасов.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
	|	&ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС КАК НалогообложениеНДС,
	|	ИСТИНА КАК Первичное,
	|	ТаблицаВидыЗапасов.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаВидыЗапасов.СтавкаНДС
	|ПОМЕСТИТЬ ВтТоварыОрганизаций
	|ИЗ
	|	ВтТаблицаВидыЗапасовОприходование КАК ТаблицаВидыЗапасов
	|ГДЕ
	|	НЕ &ИспользуетсяДокументПоступлениеТоваров
	|	И НЕ ТаблицаВидыЗапасов.ЭтоПрослеживаемаяРабота
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход),
	|	&Период,
	|	&Организация,
	|	&Организация,
	|	ТаблицаВидыЗапасов.Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика,
	|	ТаблицаВидыЗапасов.ВидЗапасов,
	|	ТаблицаВидыЗапасов.НомерГТД,
	|	ТаблицаВидыЗапасов.НомерГТД.ТипНомераГТД,
	|	ТаблицаВидыЗапасов.Количество,
	|	ТаблицаВидыЗапасов.КоличествоПоРНПТ,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры,
	|	&ХозяйственнаяОперация,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС,
	|	ЛОЖЬ,
	|	ТаблицаВидыЗапасов.ИдентификаторСтроки,
	|	ТаблицаВидыЗапасов.СтавкаНДС
	|ИЗ
	|	ВтТаблицаВидыЗапасовСписание КАК ТаблицаВидыЗапасов
	|ГДЕ
	|	НЕ &ИспользуетсяДокументПоступлениеТоваров
	|	И НЕ ТаблицаВидыЗапасов.ЭтоПрослеживаемаяРабота
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	НЕОПРЕДЕЛЕНО КАК ОрганизацияОтгрузки,
	|	ТаблицаВидыЗапасов.Номенклатура КАК Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика КАК Характеристика,
	|	ТаблицаВидыЗапасов.ВидЗапасов КАК ВидЗапасов,
	|	ТаблицаВидыЗапасов.НомерГТД КАК НомерГТД,
	|	ТаблицаВидыЗапасов.НомерГТД.ТипНомераГТД,
	|	ТаблицаВидыЗапасов.Количество КАК Количество,
	|	ТаблицаВидыЗапасов.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	АналитикаПоПодразделениям.КлючАналитики КАК АналитикаУчетаНоменклатуры,
	|	&ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС КАК НалогообложениеНДС,
	|	ИСТИНА КАК Первичное,
	|	ТаблицаВидыЗапасов.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаВидыЗапасов.СтавкаНДС
	|ИЗ
	|	ВтТаблицаВидыЗапасовОприходование КАК ТаблицаВидыЗапасов
	|	ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаПоПодразделениям
	|	ПО АналитикаПоПодразделениям.Номенклатура = ТаблицаВидыЗапасов.Номенклатура
	|		И АналитикаПоПодразделениям.Характеристика = ТаблицаВидыЗапасов.Характеристика
	|		И АналитикаПоПодразделениям.Серия = ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры.Серия
	|		И АналитикаПоПодразделениям.Назначение = ТаблицаВидыЗапасов.Назначение
	|		И АналитикаПоПодразделениям.СтатьяКалькуляции = ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры.СтатьяКалькуляции
	|		И АналитикаПоПодразделениям.МестоХранения = 
	|			ВЫБОР
	|				КОГДА &НеотфактурованныеПоставкиУслугРабот
	|					ТОГДА
	|						ТаблицаВидыЗапасов.ПодразделениеШапки
	|					ИНАЧЕ
	|						ТаблицаВидыЗапасов.Подразделение
	|			КОНЕЦ
	|ГДЕ
	|	ТаблицаВидыЗапасов.ЭтоПрослеживаемаяРабота
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход),
	|	&Период,
	|	&Организация,
	|	&Организация,
	|	ТаблицаВидыЗапасов.Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика,
	|	ТаблицаВидыЗапасов.ВидЗапасов,
	|	ТаблицаВидыЗапасов.НомерГТД,
	|	ТаблицаВидыЗапасов.НомерГТД.ТипНомераГТД,
	|	ТаблицаВидыЗапасов.Количество,
	|	ТаблицаВидыЗапасов.КоличествоПоРНПТ,
	|	АналитикаПоПодразделениям.КлючАналитики,
	|	&ХозяйственнаяОперация,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС,
	|	ЛОЖЬ,
	|	ТаблицаВидыЗапасов.ИдентификаторСтроки,
	|	ТаблицаВидыЗапасов.СтавкаНДС
	|ИЗ
	|	ВтТаблицаВидыЗапасовСписание КАК ТаблицаВидыЗапасов
	|	ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаПоПодразделениям
	|	ПО АналитикаПоПодразделениям.Номенклатура = ТаблицаВидыЗапасов.Номенклатура
	|		И АналитикаПоПодразделениям.Характеристика = ТаблицаВидыЗапасов.Характеристика
	|		И АналитикаПоПодразделениям.Серия = ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры.Серия
	|		И АналитикаПоПодразделениям.Назначение = ТаблицаВидыЗапасов.Назначение
	|		И АналитикаПоПодразделениям.СтатьяКалькуляции = ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры.СтатьяКалькуляции
	|		И АналитикаПоПодразделениям.МестоХранения = 
	|			ВЫБОР
	|				КОГДА &НеотфактурованныеПоставкиУслугРабот
	|					ТОГДА
	|						ТаблицаВидыЗапасов.ПодразделениеШапки
	|					ИНАЧЕ
	|						ТаблицаВидыЗапасов.Подразделение
	|			КОНЕЦ
	|ГДЕ
	|	ТаблицаВидыЗапасов.ЭтоПрослеживаемаяРабота
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаДокумента.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход),
	|	&Период,
	|	&Организация,
	|	НЕОПРЕДЕЛЕНО,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика,
	|	ТаблицаДокумента.ВидЗапасов,
	|	ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка) КАК НомерГТД,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыНомеровГТД.ПустаяСсылка),
	|	ТаблицаДокумента.Количество,
	|	0 КАК КоличествоПоРНПТ,
	|	АналитикаУчетаНоменклатурыПоПартнерам.КлючАналитики,
	|	&ХозяйственнаяОперация,
	|	НЕОПРЕДЕЛЕНО,
	|	ЛОЖЬ,
	|	ТаблицаДокумента.ИдентификаторСтроки,
	|	ТаблицаДокумента.СтавкаНДС
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаДокумента
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|		ПО ТаблицаДокумента.Ссылка = ТаблицаРасхождения.Ссылка
	|			И ТаблицаДокумента.КодСтроки = ТаблицаРасхождения.КодСтроки
	|			И ТаблицаДокумента.ЗаказПоставщику = ТаблицаРасхождения.ЗаказПоставщику
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ТаблицаРасхождения.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = ТаблицаРасхождения.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = ТаблицаРасхождения.Назначение
	|			И (ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = ТаблицаРасхождения.Серия
	|				ИЛИ ТаблицаРасхождения.Серия = ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка))
	|			И ТаблицаДокумента.ВариантОтражения = ТаблицаРасхождения.ВариантОтражения
	|			И ТаблицаДокумента.НомерГТД = ТаблицаРасхождения.НомерГТД
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриобретениеТоваровУслуг КАК ДанныеПоступления
	|		ПО ТаблицаДокумента.Ссылка.ДокументОснование = ДанныеПоступления.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатурыПоПартнерам
	|		ПО ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = АналитикаУчетаНоменклатурыПоПартнерам.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = АналитикаУчетаНоменклатурыПоПартнерам.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = АналитикаУчетаНоменклатурыПоПартнерам.Назначение
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = АналитикаУчетаНоменклатурыПоПартнерам.Серия
	|			И (ДанныеПоступления.Договор = АналитикаУчетаНоменклатурыПоПартнерам.МестоХранения)
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.СтатьяКалькуляции = АналитикаУчетаНоменклатурыПоПартнерам.СтатьяКалькуляции
	|ГДЕ
	|	ТаблицаДокумента.Ссылка = &Ссылка
	|	И &ИспользуетсяДокументПоступлениеТоваров
	|	И ТаблицаДокумента.ВариантОтражения В (ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьЗакупкуУвеличитьТоварыУПартнеров), ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьТоварыУПартнеров))
	// Не недостача по неотфактуровке.
	|	И НЕ (
	|			ТаблицаДокумента.Ссылка.Договор <> ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И ТаблицаДокумента.Ссылка.Договор.ВариантОформленияЗакупок В (ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваров),
	|																		ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваровИУслуг))
	|			И ТаблицаДокумента.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьТоварыУПартнеров)
	|	)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаДокумента.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход),
	|	&Период,
	|	&Организация,
	|	НЕОПРЕДЕЛЕНО,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика,
	|	ВидыЗапасовСкладские.Ссылка,
	|	ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка) КАК НомерГТД,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыНомеровГТД.ПустаяСсылка),
	|	-ТаблицаДокумента.Количество КАК Количество,
	|	0 КАК КоличествоПоРНПТ,
	|	АналитикаУчетаНоменклатурыПоСкладам.КлючАналитики,
	|	&ХозяйственнаяОперация,
	|	НЕОПРЕДЕЛЕНО,
	|	ЛОЖЬ,
	|	ТаблицаДокумента.ИдентификаторСтроки,
	|	ТаблицаДокумента.СтавкаНДС
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаДокумента
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|		ПО ТаблицаДокумента.Ссылка = ТаблицаРасхождения.Ссылка
	|			И ТаблицаДокумента.КодСтроки = ТаблицаРасхождения.КодСтроки
	|			И ТаблицаДокумента.ЗаказПоставщику = ТаблицаРасхождения.ЗаказПоставщику
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ТаблицаРасхождения.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = ТаблицаРасхождения.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = ТаблицаРасхождения.Назначение
	|			И (ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = ТаблицаРасхождения.Серия
	|				ИЛИ ТаблицаРасхождения.Серия = ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка))
	|			И ТаблицаДокумента.НомерГТД = ТаблицаРасхождения.НомерГТД
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриобретениеТоваровУслуг КАК ДанныеПоступления
	|		ПО ТаблицаДокумента.Ссылка.ДокументОснование = ДанныеПоступления.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатурыПоСкладам
	|		ПО ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = АналитикаУчетаНоменклатурыПоСкладам.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = АналитикаУчетаНоменклатурыПоСкладам.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = АналитикаУчетаНоменклатурыПоСкладам.Назначение
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = АналитикаУчетаНоменклатурыПоСкладам.Серия
	|			И (ТаблицаРасхождения.Склад = АналитикаУчетаНоменклатурыПоСкладам.МестоХранения)
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.СтатьяКалькуляции = АналитикаУчетаНоменклатурыПоСкладам.СтатьяКалькуляции
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЗапасов КАК ВидыЗапасовСкладские
	|		ПО ВидыЗапасовСкладские.Организация = ТаблицаДокумента.ВидЗапасов.Организация
	|			И ВидыЗапасовСкладские.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
	|			И ВидыЗапасовСкладские.ВладелецТовара = ТаблицаДокумента.ВидЗапасов.ВладелецТовара
	|			И ВидыЗапасовСкладские.НалогообложениеНДС = ТаблицаДокумента.ВидЗапасов.НалогообложениеНДС
	|			И ВидыЗапасовСкладские.ГруппаФинансовогоУчета = ТаблицаДокумента.ВидЗапасов.ГруппаФинансовогоУчета
	|			И ВидыЗапасовСкладские.ГруппаПродукции = ТаблицаДокумента.ВидЗапасов.ГруппаПродукции
	|			И ВидыЗапасовСкладские.ВидЦены = ТаблицаДокумента.ВидЗапасов.ВидЦены
	//++ НЕ УТ
	|			И ВидыЗапасовСкладские.ОблагаетсяАкцизом = ТаблицаДокумента.ВидЗапасов.ОблагаетсяАкцизом
	//-- НЕ УТ
	|			И НЕ ВидыЗапасовСкладские.ЭтоДубль
	|			И НЕ ВидыЗапасовСкладские.Устаревший
	|			И НЕ ВидыЗапасовСкладские.ПометкаУдаления
	|ГДЕ
	|	ТаблицаДокумента.Ссылка = &Ссылка
	|	И &ИспользуетсяДокументПоступлениеТоваров
	|	И ТаблицаДокумента.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьТоварыУПартнеров)
	// Не недостача по неотфактуровке.
	|	И НЕ (
	|			ТаблицаДокумента.Ссылка.Договор <> ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И ТаблицаДокумента.Ссылка.Договор.ВариантОформленияЗакупок В (ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваров),
	|																		ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваровИУслуг))
	|	)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаДокумента.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход),
	|	&Период,
	|	&Организация,
	|	НЕОПРЕДЕЛЕНО,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика,
	|	ВидыЗапасовСкладские.Ссылка,
	|	ТаблицаДокумента.НомерГТД КАК НомерГТД,
	|	ТаблицаДокумента.НомерГТД.ТипНомераГТД,
	|	-ТаблицаДокумента.Количество КАК Количество,
	|	-ТаблицаДокумента.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	АналитикаУчетаНоменклатурыПоСкладам.КлючАналитики,
	|	&ХозяйственнаяОперация,
	|	НЕОПРЕДЕЛЕНО,
	|	ЛОЖЬ,
	|	ТаблицаДокумента.ИдентификаторСтроки,
	|	ТаблицаДокумента.СтавкаНДС
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаДокумента
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|		ПО ТаблицаДокумента.Ссылка = ТаблицаРасхождения.Ссылка
	|			И ТаблицаДокумента.КодСтроки = ТаблицаРасхождения.КодСтроки
	|			И ТаблицаДокумента.ЗаказПоставщику = ТаблицаРасхождения.ЗаказПоставщику
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ТаблицаРасхождения.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = ТаблицаРасхождения.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = ТаблицаРасхождения.Назначение
	|			И (ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = ТаблицаРасхождения.Серия
	|				ИЛИ ТаблицаРасхождения.Серия = ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка))
	|			И ТаблицаДокумента.НомерГТД = ТаблицаРасхождения.НомерГТД
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриобретениеТоваровУслуг КАК ДанныеПоступления
	|		ПО ТаблицаДокумента.Ссылка.ДокументОснование = ДанныеПоступления.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатурыПоСкладам
	|		ПО ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = АналитикаУчетаНоменклатурыПоСкладам.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = АналитикаУчетаНоменклатурыПоСкладам.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = АналитикаУчетаНоменклатурыПоСкладам.Назначение
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = АналитикаУчетаНоменклатурыПоСкладам.Серия
	|			И (ТаблицаРасхождения.Склад = АналитикаУчетаНоменклатурыПоСкладам.МестоХранения)
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.СтатьяКалькуляции = АналитикаУчетаНоменклатурыПоСкладам.СтатьяКалькуляции
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЗапасов КАК ВидыЗапасовСкладские
	|		ПО ВидыЗапасовСкладские.Организация = ТаблицаДокумента.ВидЗапасов.Организация
	|			И ВидыЗапасовСкладские.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
	|			И ВидыЗапасовСкладские.ВладелецТовара = ТаблицаДокумента.ВидЗапасов.ВладелецТовара
	|			И ВидыЗапасовСкладские.НалогообложениеНДС = ТаблицаДокумента.ВидЗапасов.НалогообложениеНДС
	|			И ВидыЗапасовСкладские.ГруппаФинансовогоУчета = ТаблицаДокумента.ВидЗапасов.ГруппаФинансовогоУчета
	|			И ВидыЗапасовСкладские.ГруппаПродукции = ТаблицаДокумента.ВидЗапасов.ГруппаПродукции
	|			И ВидыЗапасовСкладские.ВидЦены = ТаблицаДокумента.ВидЗапасов.ВидЦены
	//++ НЕ УТ
	|			И ВидыЗапасовСкладские.ОблагаетсяАкцизом = ТаблицаДокумента.ВидЗапасов.ОблагаетсяАкцизом
	//-- НЕ УТ
	|			И НЕ ВидыЗапасовСкладские.ЭтоДубль
	|			И НЕ ВидыЗапасовСкладские.Устаревший
	|			И НЕ ВидыЗапасовСкладские.ПометкаУдаления
	|ГДЕ
	|	ТаблицаДокумента.Ссылка = &Ссылка
	|	И &ИспользуетсяДокументПоступлениеТоваров
	|	И ТаблицаДокумента.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьТоварыУПартнеров)
	// Не недостача по неотфактуровке.
	|	И НЕ (
	|			ТаблицаДокумента.Ссылка.Договор <> ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И ТаблицаДокумента.Ссылка.Договор.ВариантОформленияЗакупок В (ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваров),
	|																		ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваровИУслуг))
	|	)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаДокумента.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход),
	|	&Период,
	|	&Организация,
	|	НЕОПРЕДЕЛЕНО,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика,
	|	ВидыЗапасовСкладские.Ссылка,
	|	ТаблицаДокумента.НомерГТД КАК НомерГТД,
	|	ТаблицаДокумента.НомерГТД.ТипНомераГТД,
	|	ТаблицаДокумента.Количество КАК Количество,
	|	ТаблицаДокумента.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	АналитикаУчетаНоменклатурыПоСкладам.КлючАналитики,
	|	&ХозяйственнаяОперация,
	|	НЕОПРЕДЕЛЕНО,
	|	ЛОЖЬ,
	|	ТаблицаДокумента.ИдентификаторСтроки,
	|	ТаблицаДокумента.СтавкаНДС
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаДокумента
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|		ПО ТаблицаДокумента.Ссылка = ТаблицаРасхождения.Ссылка
	|			И ТаблицаДокумента.КодСтроки = ТаблицаРасхождения.КодСтроки
	|			И ТаблицаДокумента.ЗаказПоставщику = ТаблицаРасхождения.ЗаказПоставщику
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ТаблицаРасхождения.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = ТаблицаРасхождения.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = ТаблицаРасхождения.Назначение
	|			И (ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = ТаблицаРасхождения.Серия
	|				ИЛИ ТаблицаРасхождения.Серия = ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка))
	|			И ТаблицаДокумента.НомерГТД = ТаблицаРасхождения.НомерГТД
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриобретениеТоваровУслуг КАК ДанныеПоступления
	|		ПО ТаблицаДокумента.Ссылка.ДокументОснование = ДанныеПоступления.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатурыПоСкладам
	|		ПО ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = АналитикаУчетаНоменклатурыПоСкладам.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = АналитикаУчетаНоменклатурыПоСкладам.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = АналитикаУчетаНоменклатурыПоСкладам.Назначение
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = АналитикаУчетаНоменклатурыПоСкладам.Серия
	|			И (ТаблицаРасхождения.Склад = АналитикаУчетаНоменклатурыПоСкладам.МестоХранения)
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.СтатьяКалькуляции = АналитикаУчетаНоменклатурыПоСкладам.СтатьяКалькуляции
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЗапасов КАК ВидыЗапасовСкладские
	|		ПО ВидыЗапасовСкладские.Организация = ТаблицаДокумента.ВидЗапасов.Организация
	|			И ВидыЗапасовСкладские.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
	|			И ВидыЗапасовСкладские.ВладелецТовара = ТаблицаДокумента.ВидЗапасов.ВладелецТовара
	|			И ВидыЗапасовСкладские.НалогообложениеНДС = ТаблицаДокумента.ВидЗапасов.НалогообложениеНДС
	|			И ВидыЗапасовСкладские.ГруппаФинансовогоУчета = ТаблицаДокумента.ВидЗапасов.ГруппаФинансовогоУчета
	|			И ВидыЗапасовСкладские.ГруппаПродукции = ТаблицаДокумента.ВидЗапасов.ГруппаПродукции
	|			И ВидыЗапасовСкладские.ВидЦены = ТаблицаДокумента.ВидЗапасов.ВидЦены
	//++ НЕ УТ
	|			И ВидыЗапасовСкладские.ОблагаетсяАкцизом = ТаблицаДокумента.ВидЗапасов.ОблагаетсяАкцизом
	//-- НЕ УТ
	|			И НЕ ВидыЗапасовСкладские.ЭтоДубль
	|			И НЕ ВидыЗапасовСкладские.Устаревший
	|			И НЕ ВидыЗапасовСкладские.ПометкаУдаления
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтПараметрыНоменклатуры КАК ДанныеСтатусовСерий
	|		ПО ТаблицаДокумента.Ссылка = ДанныеСтатусовСерий.Ссылка
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ДанныеСтатусовСерий.Номенклатура
	|ГДЕ
	|	ТаблицаДокумента.Ссылка = &Ссылка
	|	И &ИспользуетсяДокументПоступлениеТоваров
	|	И ТаблицаДокумента.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьЗакупкуУвеличитьТоварыУПартнеров)
	// Не излишек по товарам в пути с сериями по себестоимости.
	|	И НЕ (
	|			ТаблицаДокумента.Ссылка.Договор <> ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И ТаблицаДокумента.Ссылка.Договор.ВариантОформленияЗакупок = ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.ТоварыВПути)
	|			И (ДанныеСтатусовСерий.УчетСерийПоСебестоимости
	|				И НЕ (ДанныеСтатусовСерий.УчетСерийВНеотфактурованныхПоставкахТоваров
	|				ИЛИ ДанныеСтатусовСерий.УчетТоваровВПутиОтПоставщикаПоСериям))
	|	)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаДокумента.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход),
	|	&Период,
	|	&Организация,
	|	НЕОПРЕДЕЛЕНО,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура,
	|	ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика,
	|	ВидыЗапасовСкладские.Ссылка,
	|	ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка) КАК НомерГТД,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыНомеровГТД.ПустаяСсылка),
	|	ТаблицаДокумента.Количество КАК Количество,
	|	0 КАК КоличествоПоРНПТ,
	|	АналитикаУчетаНоменклатурыПоСкладам.КлючАналитики,
	|	&ХозяйственнаяОперация,
	|	НЕОПРЕДЕЛЕНО,
	|	ЛОЖЬ,
	|	ТаблицаДокумента.ИдентификаторСтроки,
	|	ТаблицаДокумента.СтавкаНДС
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаДокумента
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|		ПО ТаблицаДокумента.Ссылка = ТаблицаРасхождения.Ссылка
	|			И ТаблицаДокумента.КодСтроки = ТаблицаРасхождения.КодСтроки
	|			И ТаблицаДокумента.ЗаказПоставщику = ТаблицаРасхождения.ЗаказПоставщику
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ТаблицаРасхождения.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = ТаблицаРасхождения.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = ТаблицаРасхождения.Назначение
	|			И (ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = ТаблицаРасхождения.Серия
	|				ИЛИ ТаблицаРасхождения.Серия = ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка))
	|			И ТаблицаДокумента.НомерГТД = ТаблицаРасхождения.НомерГТД
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриобретениеТоваровУслуг КАК ДанныеПоступления
	|		ПО ТаблицаДокумента.Ссылка.ДокументОснование = ДанныеПоступления.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатурыПоСкладам
	|		ПО ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = АналитикаУчетаНоменклатурыПоСкладам.Номенклатура
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Характеристика = АналитикаУчетаНоменклатурыПоСкладам.Характеристика
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Назначение = АналитикаУчетаНоменклатурыПоСкладам.Назначение
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Серия = АналитикаУчетаНоменклатурыПоСкладам.Серия
	|			И (ТаблицаРасхождения.Склад = АналитикаУчетаНоменклатурыПоСкладам.МестоХранения)
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.СтатьяКалькуляции = АналитикаУчетаНоменклатурыПоСкладам.СтатьяКалькуляции
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЗапасов КАК ВидыЗапасовСкладские
	|		ПО ВидыЗапасовСкладские.Организация = ТаблицаДокумента.ВидЗапасов.Организация
	|			И ВидыЗапасовСкладские.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
	|			И ВидыЗапасовСкладские.ВладелецТовара = ТаблицаДокумента.ВидЗапасов.ВладелецТовара
	|			И ВидыЗапасовСкладские.НалогообложениеНДС = ТаблицаДокумента.ВидЗапасов.НалогообложениеНДС
	|			И ВидыЗапасовСкладские.ГруппаФинансовогоУчета = ТаблицаДокумента.ВидЗапасов.ГруппаФинансовогоУчета
	|			И ВидыЗапасовСкладские.ГруппаПродукции = ТаблицаДокумента.ВидЗапасов.ГруппаПродукции
	|			И ВидыЗапасовСкладские.ВидЦены = ТаблицаДокумента.ВидЗапасов.ВидЦены
	//++ НЕ УТ
	|			И ВидыЗапасовСкладские.ОблагаетсяАкцизом = ТаблицаДокумента.ВидЗапасов.ОблагаетсяАкцизом
	//-- НЕ УТ
	|			И НЕ ВидыЗапасовСкладские.ЭтоДубль
	|			И НЕ ВидыЗапасовСкладские.Устаревший
	|			И НЕ ВидыЗапасовСкладские.ПометкаУдаления
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтПараметрыНоменклатуры КАК ДанныеСтатусовСерий
	|		ПО ТаблицаДокумента.Ссылка = ДанныеСтатусовСерий.Ссылка
	|			И ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура = ДанныеСтатусовСерий.Номенклатура
	|ГДЕ
	|	ТаблицаДокумента.Ссылка = &Ссылка
	|	И &ИспользуетсяДокументПоступлениеТоваров
	|	И ТаблицаДокумента.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьЗакупкуУвеличитьТоварыУПартнеров)
	// Не излишек по товарам в пути с сериями по себестоимости.
	|	И НЕ (
	|			ТаблицаДокумента.Ссылка.Договор <> ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И ТаблицаДокумента.Ссылка.Договор.ВариантОформленияЗакупок = ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.ТоварыВПути)
	|			И (ДанныеСтатусовСерий.УчетСерийПоСебестоимости
	|				И НЕ (ДанныеСтатусовСерий.УчетСерийВНеотфактурованныхПоставкахТоваров
	|				ИЛИ ДанныеСтатусовСерий.УчетТоваровВПутиОтПоставщикаПоСериям))
	|	)
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	НомерГТДТипНомераГТД";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяТаблицы);
			
	Возврат ТекстЗапроса;
		
КонецФункции

Функция ТекстЗапросаТаблицаТоварыОрганизаций(Запрос, ТекстыЗапроса, Регистры) Экспорт
	
	ИмяРегистра = "ТоварыОрганизаций";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;

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

Функция ТекстЗапросаТаблицаПрочиеДоходы(Запрос, ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "ПрочиеДоходы";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли; 
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаКорректировкаЗадолженности", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаКорректировкаЗадолженности(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.Подразделение
	|		ИНАЧЕ &Подразделение
	|	КОНЕЦ КАК Подразделение,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.НаправлениеДеятельности
	|		ИНАЧЕ &НаправлениеДеятельности
	|	КОНЕЦ КАК НаправлениеДеятельности,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|			ТОГДА &СтатьяДоходов
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.СтатьяДоходов
	|		ИНАЧЕ &СтатьяДоходов
	|	КОНЕЦ КАК СтатьяДоходов,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|			ТОГДА &АналитикаДоходов
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.АналитикаДоходов
	|		ИНАЧЕ &АналитикаДоходов
	|	КОНЕЦ КАК АналитикаДоходов,
	|
	|	-ТаблицаРасхождения.СуммаСНДСУпр КАК Сумма,
	|	(ВЫБОР
	|		КОГДА НЕ &УправленческийУчетОрганизаций
	|			ТОГДА 0
	|		КОГДА ТаблицаРасхождения.ВидДеятельностиНДС В (&ТипыНалогообложенияНДСУчитываетсяВСтоимости)
	|				И НЕ &ФормироватьНДСПредъявленныйПриВключенииВСтоимость
	|			ТОГДА -СуммаСНДСУпр
	|		ИНАЧЕ -ТаблицаРасхождения.СуммаБезНДСУпр КОНЕЦ) КАК СуммаУпр,
	|	(ВЫБОР
	|		КОГДА НЕ &ИспользоватьУчетПрочихДоходовРасходовРегл
	|			ТОГДА 0
	|		КОГДА ТаблицаРасхождения.ВидДеятельностиНДС В (&ТипыНалогообложенияНДСУчитываетсяВСтоимости)
	|				И НЕ &ФормироватьНДСПредъявленныйПриВключенииВСтоимость
	|			ТОГДА -ТаблицаРасхождения.СуммаСНДСРегл
	|		ИНАЧЕ -ТаблицаРасхождения.СуммаБезНДСРегл КОНЕЦ) КАК СуммаРегл,
	|
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПриобретенияСОтражениемНаПрочихДоходах) КАК ХозяйственнаяОперация,
	|	
	|	ТаблицаРасхождения.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаРасхождения.ИдентификаторФинЗаписи КАК ИдентификаторФинЗаписи,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КорректировкаПриобретенияСОтражениемНаПрочихДоходах) КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|
	|ГДЕ
	|	&ИспользоватьУчетПрочихДоходовРасходов
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|	И (ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|			И &СтатьяДоходов <> НЕОПРЕДЕЛЕНО)
	|		ИЛИ (ТаблицаРасхождения.СписатьНаРасходы
	|			И ТаблицаРасхождения.СтатьяДоходов <> НЕОПРЕДЕЛЕНО)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.Подразделение
	|		ИНАЧЕ &Подразделение
	|	КОНЕЦ КАК Подразделение,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.НаправлениеДеятельности
	|		ИНАЧЕ &НаправлениеДеятельности
	|	КОНЕЦ КАК НаправлениеДеятельности,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|			ТОГДА &СтатьяДоходов
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.СтатьяДоходов
	|		ИНАЧЕ &СтатьяДоходов
	|	КОНЕЦ КАК СтатьяДоходов,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|			ТОГДА &АналитикаДоходов
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы 
	|			ТОГДА ТаблицаРасхождения.АналитикаДоходов
	|		ИНАЧЕ &АналитикаДоходов
	|	КОНЕЦ КАК АналитикаДоходов,
	|
	|	0 КАК Сумма,
	|	(ВЫБОР
	|		КОГДА НЕ &УправленческийУчетОрганизаций
	|			ТОГДА 0
	|		ИНАЧЕ ТаблицаРасхождения.СуммаБезНДСУпр - ТаблицаРасхождения.СуммаСНДСУпр КОНЕЦ) КАК СуммаУпр,
	|	(ВЫБОР
	|		КОГДА НЕ &ИспользоватьУчетПрочихДоходовРасходовРегл
	|			ТОГДА 0
	|		ИНАЧЕ ТаблицаРасхождения.СуммаБезНДСРегл - ТаблицаРасхождения.СуммаСНДСРегл КОНЕЦ) КАК СуммаРегл,
	|
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПриобретенияСОтражениемНаПрочихДоходах) КАК ХозяйственнаяОперация,
	|	
	|	ТаблицаРасхождения.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаРасхождения.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость) КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|
	|ГДЕ
	|	&ИспользоватьУчетПрочихДоходовРасходов
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|	И &ФормироватьНДСПредъявленныйПриВключенииВСтоимость
	|	И ТаблицаРасхождения.ВидДеятельностиНДС В (&ТипыНалогообложенияНДСУчитываетсяВСтоимости)
	|	И (ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|			И &СтатьяДоходов <> НЕОПРЕДЕЛЕНО)
	|		ИЛИ (ТаблицаРасхождения.СписатьНаРасходы
	|			И ТаблицаРасхождения.СтатьяДоходов <> НЕОПРЕДЕЛЕНО)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	&Подразделение КАК Подразделение,
	|	&НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	&СтатьяДоходов КАК СтатьяДоходов,
	|	&АналитикаДоходов КАК АналитикаДоходов,
	|
	|	КорректировкаЗадолженности.СуммаСНДСУпр КАК Сумма,
	|	(ВЫБОР
	|		КОГДА &УправленческийУчетОрганизаций
	|			ТОГДА КорректировкаЗадолженности.СуммаСНДСУпр
	|		ИНАЧЕ 0 КОНЕЦ) КАК СуммаУпр,
	|	(ВЫБОР
	|		КОГДА &ИспользоватьУчетПрочихДоходовРасходовРегл
	|			ТОГДА КорректировкаЗадолженности.СуммаСНДСРегл
	|		ИНАЧЕ 0 КОНЕЦ) КАК СуммаРегл,
	|
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаЗадолженности) КАК ХозяйственнаяОперация,
	|	
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	КорректировкаЗадолженности.УникальныйИдентификаторОбъектаРасчетов КАК ИдентификаторФинЗаписи,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КорректировкаЗадолженности) КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	ВтТаблицаКорректировкаЗадолженности КАК КорректировкаЗадолженности
	|ГДЕ
	|	КорректировкаЗадолженности.НаДоходы
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	&Подразделение КАК Подразделение,
	|	&НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	&СтатьяДоходов КАК СтатьяДоходов,
	|	&АналитикаДоходов КАК АналитикаДоходов,
	|
	|	0 КАК Сумма,
	|	(ВЫБОР
	|		КОГДА &УправленческийУчетОрганизаций
	|			ТОГДА КорректировкаЗадолженности.НДСУпр
	|		ИНАЧЕ 0 КОНЕЦ) КАК СуммаУпр,
	|	(ВЫБОР
	|		КОГДА &ИспользоватьУчетПрочихДоходовРасходовРегл
	|			ТОГДА КорректировкаЗадолженности.НДСРегл
	|		ИНАЧЕ 0 КОНЕЦ) КАК СуммаРегл,
	|
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВходящийНДСПоПриобретению) КАК ХозяйственнаяОперация,
	|	
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВходящийНДСПоПриобретению) КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	ВтТаблицаКорректировкаЗадолженности КАК КорректировкаЗадолженности
	|ГДЕ
	|	КорректировкаЗадолженности.НаДоходы
	|	И &ЗакупкаПодДеятельность НЕ В (&ТипыНалогообложенияНДСУчитываетсяВСтоимости)
	|	И (КорректировкаЗадолженности.НДСРегл <> 0
	|		ИЛИ КорректировкаЗадолженности.НДСУпр <> 0)
	|
	|";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

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

	
КонецФункции

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

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

Функция ТекстЗапросаТаблицаПартииТоваровОрганизаций(Запрос, ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "ПартииТоваровОрганизаций";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;
	
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаВидыЗапасовОприходование", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаВидыЗапасовОприходование(Запрос, ТекстыЗапроса);
	КонецЕсли;
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаВидыЗапасовСписание", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаВидыЗапасовСписание(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	УстановитьПараметрЗапросаДокументПоступленияНДС(Запрос);
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаВидыЗапасов.ВидЗапасов КАК ВидЗапасов,
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий КАК АналитикаУчетаПартий,
	|	&ДокументПоступленияНДС КАК ДокументПоступления,
	|	ТаблицаВидыЗапасов.Количество КАК Количество,
	|	ТаблицаВидыЗапасов.СуммаСНДСУпр КАК Стоимость,
	|	ТаблицаВидыЗапасов.СуммаБезНДСУпр КАК СтоимостьБезНДС,
	|	ТаблицаВидыЗапасов.СуммаБезНДСРегл КАК СтоимостьРегл,
	|	ВЫБОР 
	|		КОГДА ТаблицаВидыЗапасов.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|			ТОГДА 0
	|			ИНАЧЕ ТаблицаВидыЗапасов.СуммаНДСРегл
	|	КОНЕЦ КАК НДСРегл,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС КАК НалогообложениеНДС,
	|	ТаблицаВидыЗапасов.Номенклатура КАК Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика КАК Характеристика,
	|	&ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	|	ИСТИНА КАК Первичное,
	|	НЕОПРЕДЕЛЕНО КАК ДокументИсточник
	|ИЗ
	|	ВтТаблицаВидыЗапасовОприходование КАК ТаблицаВидыЗапасов
	|ГДЕ
	|	&ПартионныйУчетВерсии21
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаВидыЗапасов.ВидЗапасов КАК ВидЗапасов,
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий КАК АналитикаУчетаПартий,
	|	&ДокументОснование КАК ДокументПоступления,
	|	ТаблицаВидыЗапасов.Количество КАК Количество,
	|	ТаблицаВидыЗапасов.СуммаСНДСУпр КАК Стоимость,
	|	ТаблицаВидыЗапасов.СуммаБезНДСУпр КАК СтоимостьБезНДС,
	|	ТаблицаВидыЗапасов.СуммаБезНДСРегл КАК СтоимостьРегл,
	|	ВЫБОР 
	|		КОГДА ТаблицаВидыЗапасов.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|			ТОГДА 0
	|			ИНАЧЕ ТаблицаВидыЗапасов.СуммаНДСРегл
	|	КОНЕЦ КАК НДСРегл,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС КАК НалогообложениеНДС,
	|	ТаблицаВидыЗапасов.Номенклатура КАК Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика КАК Характеристика,
	|	&ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	|	ИСТИНА КАК Первичное,
	|	&ДокументОснование КАК ДокументИсточник
	|ИЗ
	|	ВтТаблицаВидыЗапасовСписание КАК ТаблицаВидыЗапасов
	|ГДЕ
	|	&ПартионныйУчетВерсии21
	|	И ТаблицаВидыЗапасов.ЭтоВозвратПоставщику
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|ВЫБРАТЬ
	|	ТаблицаВидыЗапасов.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаВидыЗапасов.ВидЗапасов КАК ВидЗапасов,
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий КАК АналитикаУчетаПартий,
	|	&ДокументОснование КАК ДокументПоступления,
	|	-ТаблицаВидыЗапасов.Количество КАК Количество,
	|	-ТаблицаВидыЗапасов.СуммаСНДСУпр КАК Стоимость,
	|	-ТаблицаВидыЗапасов.СуммаБезНДСУпр КАК СтоимостьБезНДС,
	|	-ТаблицаВидыЗапасов.СуммаБезНДСРегл КАК СтоимостьРегл,
	|	-ТаблицаВидыЗапасов.СуммаНДСРегл КАК НДСРегл,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС КАК НалогообложениеНДС,
	|	ТаблицаВидыЗапасов.Номенклатура КАК Номенклатура,
	|	ТаблицаВидыЗапасов.Характеристика КАК Характеристика,
	|	&ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	|	ИСТИНА КАК Первичное,
	|	&ДокументОснование КАК ДокументИсточник
	|ИЗ
	|	ВтТаблицаВидыЗапасовСписание КАК ТаблицаВидыЗапасов
	|ГДЕ
	|	&ПартионныйУчетВерсии21
	|	И НЕ ТаблицаВидыЗапасов.ЭтоВозвратПоставщику
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|ВЫБРАТЬ
	|	ТаблицаРасхождения.НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход),
	|	&Период,
	|	&Организация,
	|	ТаблицаРасхождения.АналитикаУчетаНоменклатуры,
	|	ТаблицаРасхождения.ВидЗапасов,
	|	ТаблицаРасхождения.АналитикаУчетаПартий,
	|	&ДокументОснование,
	|	ТаблицаРасхождения.Количество,
	|	ТаблицаРасхождения.СуммаСНДСУпр,
	|	ТаблицаРасхождения.СуммаБезНДСУпр,
	|	ТаблицаРасхождения.СуммаБезНДСРегл,
	|	ВЫБОР 
	|		КОГДА ТаблицаРасхождения.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|			ТОГДА 0
	|			ИНАЧЕ ТаблицаРасхождения.СуммаНДСРегл
	|	КОНЕЦ КАК НДСРегл,
	|	ТаблицаРасхождения.ВидДеятельностиНДС,
	|	ТаблицаРасхождения.Номенклатура,
	|	ТаблицаРасхождения.Характеристика,
	|	&ХозяйственнаяОперация,
	|	ИСТИНА КАК Первичное,
	|	НЕОПРЕДЕЛЕНО КАК ДокументИсточник
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ГДЕ
	|	&ПартионныйУчетВерсии21
	|	И ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара)
	|	И ТаблицаРасхождения.Номенклатура.ТипНоменклатуры В(ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар), ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки
	|";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции 

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

Процедура СформироватьСуммыДокументаВВалютахУчета(Запрос, ТекстыЗапроса, Регистры = Неопределено) Экспорт

	ТекстЗапросаДанных =
	"ВЫБРАТЬ
	|	""Расхождения"" КАК ИсточникДанных,
	|	ИСТИНА КАК РаспределятьОбщуюСумму,
	|	ТаблицаДокумента.Ссылка КАК Ссылка,
	|	ТаблицаДокумента.Ссылка.Дата КАК Дата,
	|	ТаблицаДокумента.Ссылка.Организация КАК Организация,
	|	ТаблицаДокумента.Ссылка.Валюта КАК ВалютаДокумента,
	|	ТаблицаДокумента.Ссылка.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	ТаблицаДокумента.Ссылка.ДокументОснование.Дата КАК ПериодБазыНДС,
	|	ТаблицаДокумента.Ссылка.Дата КАК ДатаКурса,
	|
	|	ТаблицаДокумента.НомерСтроки КАК НомерСтроки,
	|	ТаблицаДокумента.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаДокумента.СуммаСНДС - ТаблицаДокумента.СуммаНДС КАК СуммаБезНДС,
	|	ТаблицаДокумента.СтавкаНДС КАК СтавкаНДС,
	|	ТаблицаДокумента.СуммаНДС КАК СуммаНДС,
	|	ТаблицаДокумента.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	ТаблицаДокумента.СуммаНДСВзаиморасчетов КАК СуммаНДСВзаиморасчетов,
	|	0 КАК СуммаБезНДСРегл,
	|	0 КАК СуммаБезНДСУпр,
	|
	|	ВЫБОР 
	|		КОГДА ТаблицаДокумента.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|		ТОГДА ИСТИНА
	|		КОГДА ТаблицаДокумента.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|				И ТаблицаДокумента.Ссылка.ДокументОснование.ВернутьМногооборотнуюТару
	|				И НЕ ТаблицаДокумента.Ссылка.ДокументОснование.ТребуетсяЗалогЗаТару
	|		ТОГДА ЛОЖЬ
	|		ИНАЧЕ ИСТИНА
	|	КОНЕЦ КАК ОтражаетсяВРасчетах,
	|	ТаблицаДокумента.ОбъектРасчетов КАК ОбъектРасчетов,
	|	ИСТИНА КАК ПересчитыватьПоДаннымРасчетов
	|ИЗ
	|	Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаДокумента
	|
	|ГДЕ
	|	ТаблицаДокумента.Ссылка В (&Ссылка)
	|	И (НЕ &РаздельнаяЗакупка
	|		ИЛИ ТаблицаДокумента.Номенклатура.ТипНоменклатуры В (
	|				ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Услуга), 
	|				ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)))
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	""ВидыЗапасов"" КАК ИсточникДанных,
	|	ИСТИНА КАК РаспределятьОбщуюСумму,
	|	ТаблицаДокумента.Ссылка КАК Ссылка,
	|	ТаблицаДокумента.Ссылка.Дата КАК Дата,
	|	ТаблицаДокумента.Ссылка.Организация КАК Организация,
	|	ТаблицаДокумента.Ссылка.Валюта КАК ВалютаДокумента,
	|	ТаблицаДокумента.Ссылка.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	ТаблицаДокумента.Ссылка.ДокументОснование.Дата КАК ПериодБазыНДС,
	|	ТаблицаДокумента.Ссылка.Дата КАК ДатаКурса,
	|
	|	ТаблицаДокумента.НомерСтроки КАК НомерСтроки,
	|	ТаблицаДокумента.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаДокумента.СуммаСНДС - ТаблицаДокумента.СуммаНДС КАК СуммаБезНДС,
	|	ТаблицаДокумента.СтавкаНДС КАК СтавкаНДС,
	|	ТаблицаДокумента.СуммаНДС КАК СуммаНДС,
	|	ТаблицаДокумента.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	ТаблицаДокумента.СуммаНДСВзаиморасчетов КАК СуммаНДСВзаиморасчетов,
	|	0 КАК СуммаБезНДСРегл,
	|	0 КАК СуммаБезНДСУпр,
	|
	|	ВЫБОР 
	|		КОГДА ТаблицаДокумента.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|		ТОГДА ИСТИНА
	|		КОГДА ТаблицаДокумента.АналитикаУчетаНоменклатуры.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|				И ТаблицаДокумента.Ссылка.ДокументОснование.ВернутьМногооборотнуюТару
	|				И НЕ ТаблицаДокумента.Ссылка.ДокументОснование.ТребуетсяЗалогЗаТару
	|		ТОГДА ЛОЖЬ
	|		ИНАЧЕ ИСТИНА
	|	КОНЕЦ КАК ОтражаетсяВРасчетах,
	|	ТаблицаДокумента.ОбъектРасчетов КАК ОбъектРасчетов,
	|	ИСТИНА КАК ПересчитыватьПоДаннымРасчетов
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаДокумента
	|
	|ГДЕ
	|	ТаблицаДокумента.Ссылка В (&Ссылка)
	|	И &РаздельнаяЗакупка
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	""УменьшениеЗадолженности"" КАК ИсточникДанных,
	|	ИСТИНА КАК РаспределятьОбщуюСумму,
	|	КорректировкаЗадолженности.Ссылка КАК Ссылка,
	|	КорректировкаЗадолженности.Ссылка.Дата КАК Дата,
	|	КорректировкаЗадолженности.Ссылка.Организация КАК Организация,
	|	КорректировкаЗадолженности.Ссылка.Валюта КАК ВалютаДокумента,
	|	КорректировкаЗадолженности.Ссылка.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	КорректировкаЗадолженности.Ссылка.Дата КАК ПериодБазыНДС,
	|	КорректировкаЗадолженности.Ссылка.Дата КАК ДатаКурса,
	|
	|	КорректировкаЗадолженности.НомерСтроки КАК НомерСтроки,
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	-(КорректировкаЗадолженности.СуммаКорректировки - КорректировкаЗадолженности.СуммаНДСКорректировки) КАК СуммаБезНДС,
	|	КорректировкаЗадолженности.СтавкаНДС КАК СтавкаНДС,
	|	-(КорректировкаЗадолженности.СуммаНДСКорректировки) КАК СуммаНДС,
	|	-(КорректировкаЗадолженности.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
	|	-(КорректировкаЗадолженности.СуммаНДСВзаиморасчетов) КАК СуммаНДСВзаиморасчетов,
	|	0 КАК СуммаБезНДСРегл,
	|	0 КАК СуммаБезНДСУпр,
	|
	|	ИСТИНА КАК ОтражаетсяВРасчетах,
	|	КорректировкаЗадолженности.ОбъектРасчетов КАК ОбъектРасчетов,
	|	ИСТИНА КАК ПересчитыватьПоДаннымРасчетов
	|ИЗ
	|	Документ.КорректировкаПриобретения.КорректировкаЗадолженности КАК КорректировкаЗадолженности
	|
	|ГДЕ
	|	КорректировкаЗадолженности.Ссылка В (&Ссылка)
	|	И КорректировкаЗадолженности.Ссылка.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПриобретенияУменьшениеЗадолженностиСводно)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	""УвеличениеЗадолженности"" КАК ИсточникДанных,
	|	ИСТИНА КАК РаспределятьОбщуюСумму,
	|	КорректировкаЗадолженности.Ссылка КАК Ссылка,
	|	КорректировкаЗадолженности.Ссылка.Дата КАК Дата,
	|	КорректировкаЗадолженности.Ссылка.Организация КАК Организация,
	|	КорректировкаЗадолженности.Ссылка.Валюта КАК ВалютаДокумента,
	|	КорректировкаЗадолженности.Ссылка.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	КорректировкаЗадолженности.Ссылка.Дата КАК ПериодБазыНДС,
	|	КорректировкаЗадолженности.Ссылка.Дата КАК ДатаКурса,
	|
	|	КорректировкаЗадолженности.НомерСтроки КАК НомерСтроки,
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	КорректировкаЗадолженности.СуммаКорректировки - КорректировкаЗадолженности.СуммаНДСКорректировки КАК СуммаБезНДС,
	|	КорректировкаЗадолженности.СтавкаНДС КАК СтавкаНДС,
	|	КорректировкаЗадолженности.СуммаНДСКорректировки КАК СуммаНДС,
	|	КорректировкаЗадолженности.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	КорректировкаЗадолженности.СуммаНДСВзаиморасчетов КАК СуммаНДСВзаиморасчетов,
	|	0 КАК СуммаБезНДСРегл,
	|	0 КАК СуммаБезНДСУпр,
	|
	|	ИСТИНА КАК ОтражаетсяВРасчетах,
	|	КорректировкаЗадолженности.ОбъектРасчетов КАК ОбъектРасчетов,
	|	ИСТИНА КАК ПересчитыватьПоДаннымРасчетов
	|ИЗ
	|	Документ.КорректировкаПриобретения.КорректировкаЗадолженности КАК КорректировкаЗадолженности
	|
	|ГДЕ
	|	КорректировкаЗадолженности.Ссылка В (&Ссылка)
	|	И КорректировкаЗадолженности.Ссылка.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПриобретенияУвеличениеЗадолженностиСводно)
	|";
	
	РегистрыСведений.СуммыДокументовВВалютахУчета.СформироватьПоДаннымДокумента(
		Запрос, ТекстыЗапроса, Регистры, ТекстЗапросаДанных);
	
КонецПроцедуры

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

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

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

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

Функция ТекстЗапросаПартииПроизводственныхЗатрат(Запрос, ТекстыЗапроса, Регистры)
	ИмяРегистра = "ПартииПроизводственныхЗатрат";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли; 
	
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ТаблицаРасхождения.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	ТаблицаРасхождения.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаРасхождения.ВидЗапасов,
	|	ТаблицаРасхождения.АналитикаУчетаПартий КАК АналитикаУчетаПартий,
	|	&ДокументОснование КАК ДокументПоступления,
	|
	|	ТаблицаРасхождения.Количество КАК Количество,
	|	ТаблицаРасхождения.СуммаСНДСУпр КАК Стоимость,
	|	ТаблицаРасхождения.СуммаБезНДСУпр КАК СтоимостьБезНДС,
	|	ТаблицаРасхождения.СуммаБезНДСРегл КАК СтоимостьРегл,
	|	ВЫБОР 
	|		КОГДА ТаблицаРасхождения.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|			ТОГДА 0
	|		ИНАЧЕ ТаблицаРасхождения.СуммаНДСРегл
	|	КОНЕЦ КАК НДСРегл
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ГДЕ
	|	ТаблицаРасхождения.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
	|	И ТаблицаРасхождения.Количество >= 0
	|	И НЕ ТаблицаРасхождения.СписатьНаРасходы
	|	И НЕ &ПартионныйУчетВерсии22
	|	И НЕ ТаблицаРасхождения.ВариантОтражения В (
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы),
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах))
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаРасхождения.НомерСтроки КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|	ТаблицаРасхождения.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаРасхождения.ВидЗапасов,
	|	ТаблицаРасхождения.АналитикаУчетаПартий КАК АналитикаУчетаПартий,
	|	&ДокументОснование КАК ДокументПоступления,
	|
	|	-ТаблицаРасхождения.Количество КАК Количество,
	|	-ТаблицаРасхождения.СуммаСНДСУпр КАК Стоимость,
	|	-ТаблицаРасхождения.СуммаБезНДСУпр КАК СтоимостьБезНДС,
	|	-ТаблицаРасхождения.СуммаБезНДСРегл КАК СтоимостьРегл,
	|	ВЫБОР 
	|		КОГДА ТаблицаРасхождения.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|			ТОГДА 0
	|		ИНАЧЕ -ТаблицаРасхождения.СуммаНДСРегл
	|	КОНЕЦ КАК НДСРегл
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ГДЕ
	|	ТаблицаРасхождения.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
	|	И ТаблицаРасхождения.Количество < 0
	|	И НЕ ТаблицаРасхождения.СписатьНаРасходы
	|	И НЕ &ПартионныйУчетВерсии22
	|	И НЕ ТаблицаРасхождения.ВариантОтражения В (
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы),
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах))
	|
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки
	|";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

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

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

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

	ТекстЗапроса = УвеличениеЗакупки
		+ " ОБЪЕДИНИТЬ ВСЕ " + УменьшениеЗакупки
		+ " ОБЪЕДИНИТЬ ВСЕ " + ИзменениеСтоимости;
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаТаблицаПрочиеАктивыПассивы(Запрос, ТекстыЗапроса, Регистры)
	ИмяРегистра = "ПрочиеАктивыПассивы";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли; 
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПрочиеРасходы", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтПрочиеРасходы(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПартииПрочихРасходов", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтПартииПрочихРасходов(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаКорректировкаЗадолженности", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаКорректировкаЗадолженности(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	&Период											КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)			КАК ВидДвижения,
	|	&Организация									КАК Организация,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.Подразделение
	|	ИНАЧЕ
	|		&Подразделение
	|	КОНЕЦ											КАК Подразделение,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.НаправлениеДеятельности
	|	ИНАЧЕ
	|		&НаправлениеДеятельности
	|	КОНЕЦ КАК НаправлениеДеятельности,
	|	ТаблицаРасхождения.СтатьяАктивовПассивов		КАК Статья,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.АналитикаАктивовПассивов = ЗНАЧЕНИЕ(Перечисление.СтатьиБезАналитики.ПустаяСсылка)
	|			ТОГДА НЕОПРЕДЕЛЕНО
	|		ИНАЧЕ ТаблицаРасхождения.АналитикаАктивовПассивов
	|	КОНЕЦ 											КАК Аналитика,
	|	
	|	ТаблицаРасхождения.СуммаСНДСУпр					КАК Сумма
	|	
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|	
	|ГДЕ
	|	ТаблицаРасхождения.СтатьяАктивовПассивов <> НЕОПРЕДЕЛЕНО
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СуммаСНДСУпр < 0 ТОГДА
	|		ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
	|	КОНЕЦ КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.Подразделение
	|	ИНАЧЕ
	|		&Подразделение
	|	КОНЕЦ											КАК Подразделение,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.НаправлениеДеятельности
	|	ИНАЧЕ
	|		&НаправлениеДеятельности
	|	КОНЕЦ КАК НаправлениеДеятельности,
	|	&СтатьяАктивов КАК Статья,
	|	ВЫБОР
	|		КОГДА &АналитикаАктивов = ЗНАЧЕНИЕ(Перечисление.СтатьиБезАналитики.ПустаяСсылка)
	|			ТОГДА НЕОПРЕДЕЛЕНО
	|		ИНАЧЕ &АналитикаАктивов
	|	КОНЕЦ КАК Аналитика,
	|
	|	ТаблицаРасхождения.СуммаСНДСУпр КАК Сумма
	|
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ГДЕ
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.ВариантОтражения В (
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы),
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара),
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара))
	|	ИНАЧЕ
	|		ТаблицаРасхождения.ВариантОтражения В (
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы))
	|	КОНЕЦ
	|	И &ИспользоватьУчетПрочихАктивовПассивов
	|	И &СтатьяАктивов <> НЕОПРЕДЕЛЕНО
	|	И ТаблицаРасхождения.СтатьяРасходов <> НЕОПРЕДЕЛЕНО
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СуммаСНДСУпр < 0 ТОГДА
	|		ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	|	КОНЕЦ КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.Подразделение
	|	ИНАЧЕ
	|		&Подразделение
	|	КОНЕЦ											КАК Подразделение,
	|	ВЫБОР КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|		ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		ТаблицаРасхождения.НаправлениеДеятельности
	|	ИНАЧЕ
	|		&НаправлениеДеятельности
	|	КОНЕЦ КАК НаправлениеДеятельности,
	|	&СтатьяПассивов КАК Статья,
	|	ВЫБОР
	|		КОГДА &АналитикаПассивов = ЗНАЧЕНИЕ(Перечисление.СтатьиБезАналитики.ПустаяСсылка)
	|			ТОГДА НЕОПРЕДЕЛЕНО
	|		ИНАЧЕ &АналитикаПассивов
	|	КОНЕЦ КАК Аналитика,
	|
	|	ТаблицаРасхождения.СуммаСНДСУпр КАК Сумма
	|
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ГДЕ
	|	ТаблицаРасхождения.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах)
	|	И &ИспользоватьУчетПрочихАктивовПассивов
	|	И &СтатьяПассивов <> НЕОПРЕДЕЛЕНО
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период КАК Период,
	|	ВЫБОР 
	|		КОГДА КорректировкаЗадолженности.НаПрочиеАктивы
	|		ТОГДА ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
	|		ИНАЧЕ ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	|	КОНЕЦ КАК ВидДвижения,
	|	&Организация КАК Организация,
	|	&Подразделение КАК Подразделение,
	|	&НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	ВЫБОР 
	|		КОГДА КорректировкаЗадолженности.НаПрочиеАктивы
	|		ТОГДА &СтатьяАктивов
	|		ИНАЧЕ &СтатьяПассивов
	|	КОНЕЦ КАК Статья,
	|	ВЫБОР 
	|		КОГДА КорректировкаЗадолженности.НаПрочиеАктивы
	|			ТОГДА ВЫБОР
	|				КОГДА &АналитикаАктивов = ЗНАЧЕНИЕ(Перечисление.СтатьиБезАналитики.ПустаяСсылка)
	|					ТОГДА НЕОПРЕДЕЛЕНО
	|				ИНАЧЕ &АналитикаАктивов
	|			КОНЕЦ
	|		ИНАЧЕ ВЫБОР
	|				КОГДА &АналитикаПассивов = ЗНАЧЕНИЕ(Перечисление.СтатьиБезАналитики.ПустаяСсылка)
	|					ТОГДА НЕОПРЕДЕЛЕНО
	|				ИНАЧЕ &АналитикаПассивов
	|			КОНЕЦ
	|	КОНЕЦ КАК Аналитика,
	|	
	|	КорректировкаЗадолженности.СуммаСНДСУпр КАК Сумма
	|	
	|ИЗ
	|	ВтТаблицаКорректировкаЗадолженности КАК КорректировкаЗадолженности
	|ГДЕ
	|	(КорректировкаЗадолженности.НаПрочиеАктивы
	|		ИЛИ КорректировкаЗадолженности.НаПрочиеПассивы)
	|	И &ИспользоватьУчетПрочихАктивовПассивов
	|";
	ТекстЗапроса = ТекстЗапроса + "ОБЪЕДИНИТЬ ВСЕ"
		+ РегистрыНакопления.ПрочиеАктивыПассивы.ТекстЗапросаТаблицаПрочиеАктивыПассивы();
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаТаблицаВтДвиженияПоПрочимАктивамПассивам(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтДвиженияПоПрочимАктивамПассивам";
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтИсходныеДвиженияПоПрочимАктивамПассивам", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтИсходныеДвиженияПоПрочимАктивамПассивам(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = РегистрыНакопления.ДвиженияПоПрочимАктивамПассивам.ТекстЗапросаТаблицаВтДвиженияПоПрочимАктивамПассивам("ИдентификаторСтроки");
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаТаблицаДвиженияПоПрочимАктивамПассивам(Запрос, ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "ДвиженияПоПрочимАктивамПассивам";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтДвиженияПоПрочимАктивамПассивам", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтДвиженияПоПрочимАктивамПассивам(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = РегистрыНакопления.ДвиженияПоПрочимАктивамПассивам.ТекстЗапросаТаблицаДвиженияПоПрочимАктивамПассивам();
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
	
КонецФункции

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

Функция ТекстЗапросаТаблицаДвиженияКонтрагентДоходыРасходы(Запрос, ТекстыЗапроса, Регистры)
	ИмяРегистра = "ДвиженияКонтрагентДоходыРасходы";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли; 
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаКорректировкаЗадолженности", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаКорректировкаЗадолженности(Запрос, ТекстыЗапроса);
	КонецЕсли;
		
#Область КорректировкаПриобретенияСоСписаниемНаРасходы
	КорректировкаПриобретенияСоСписаниемНаРасходы = 
	"ВЫБРАТЬ
	|	&Период КАК Период,
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПриобретенияСоСписаниемНаРасходы) КАК ХозяйственнаяОперация,
	|	&Организация КАК Организация,
	|	ТаблицаРасхождения.Подразделение КАК Подразделение,
	|
	|	&Партнер КАК Партнер,
	|	&Контрагент КАК Контрагент,
	|	&Договор КАК Договор,
	|	ТаблицаРасхождения.ОбъектРасчетов КАК ОбъектРасчетов,
	|	&НаправлениеДеятельности КАК НаправлениеДеятельностиКонтрагента,
	|
	|	ТаблицаРасхождения.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
	|	ВЫБОР 
	|		КОГДА ТаблицаРасхождения.СтатьяАктивовПассивов <> НЕОПРЕДЕЛЕНО
	|			ТОГДА ТаблицаРасхождения.СтатьяАктивовПассивов
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|				ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
	|			ТОГДА ТаблицаРасхождения.СтатьяРасходов
	|		ИНАЧЕ 
	|			ВЫБОР
	|				КОГДА &СтатьяРасходов <> НЕОПРЕДЕЛЕНО
	|				ТОГДА &СтатьяРасходов
	|				ИНАЧЕ &СтатьяАктивов
	|			КОНЕЦ
	|	КОНЕЦ КАК СтатьяДоходовРасходов,
	|	НЕОПРЕДЕЛЕНО КАК АналитикаДоходов,
	|	
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|				ИЛИ ТаблицаРасхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
	|			ТОГДА ТаблицаРасхождения.АналитикаРасходов
	|		ИНАЧЕ &АналитикаРасходов
	|	КОНЕЦ КАК АналитикаРасходов,
	|	ВЫБОР
	|		КОГДА ТаблицаРасхождения.СтатьяАктивовПассивов <> НЕОПРЕДЕЛЕНО
	|		ТОГДА ТаблицаРасхождения.АналитикаАктивовПассивов
	|		ИНАЧЕ &АналитикаАктивов
	|	КОНЕЦ КАК АналитикаАктивовПассивов,
	|	
	|	ТаблицаРасхождения.СуммаСНДСУпр КАК Сумма,
	|	ТаблицаРасхождения.СуммаБезНДСУпр КАК СуммаБезНДС,
	|	ТаблицаРасхождения.СуммаСНДСРегл КАК СуммаРегл,
	|	ТаблицаРасхождения.СуммаБезНДСРегл КАК СуммаРеглБезНДС,
	|
	|	&Валюта КАК Валюта,
	|	ТаблицаРасхождения.СуммаСНДС КАК СуммаВВалюте,
	|	ТаблицаРасхождения.СуммаСНДС - ТаблицаРасхождения.СуммаНДС КАК СуммаБезНДСВВалюте,
	|		
	|	&ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	ТаблицаРасхождения.СуммаВзаиморасчетовСНДС КАК СуммаВВалютеВзаиморасчетов,
	|	ТаблицаРасхождения.СуммаВзаиморасчетовСНДС - ТаблицаРасхождения.СуммаНДСВзаиморасчетов КАК СуммаБезНДСВВалютеВзаиморасчетов,
	|
	|	ТаблицаРасхождения.ОбъектРасчетов КАК ИсточникГФУРасчетов,
	|	ТаблицаРасхождения.ИдентификаторСтроки КАК ИдентификаторФинЗаписи
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ГДЕ
	|	(ТаблицаРасхождения.СуммаСНДС <> 0
	|		ИЛИ ТаблицаРасхождения.СуммаНДС <> 0
	|		ИЛИ ТаблицаРасхождения.СуммаСНДСУпр <> 0
	|		ИЛИ ТаблицаРасхождения.СуммаБезНДСУпр <> 0
	|		ИЛИ ТаблицаРасхождения.СуммаСНДСРегл <> 0
	|		ИЛИ ТаблицаРасхождения.СуммаБезНДСРегл <> 0)
	|	И ВЫБОР 
	|		КОГДА ТаблицаРасхождения.СписатьНаРасходы
	|			И (ТаблицаРасхождения.СтатьяРасходов <> НЕОПРЕДЕЛЕНО 
	|					ИЛИ ТаблицаРасхождения.СтатьяАктивовПассивов <> НЕОПРЕДЕЛЕНО)
	|			ТОГДА
	|				ТаблицаРасхождения.ВариантОтражения В (
	|					ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы),
	|					ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара),
	|					ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара))
	|	ИНАЧЕ
	|		ТаблицаРасхождения.ВариантОтражения В (
	|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы))
	|	КОНЕЦ
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|";
#КонецОбласти

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

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

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

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

Функция ТекстЗапросаВтИсправляемыйДокументКорректировки(Запрос)

	ИсправляемыйДокументПустыеСсылки = Новый Массив;
	
	Для каждого Тип Из Метаданные.Документы.КорректировкаПриобретения.Реквизиты.ИсправляемыйДокумент.Тип.Типы() Цикл
		ИсправляемыйДокументПустыеСсылки.Добавить(Новый (Тип));
	КонецЦикла;
	
	Запрос.УстановитьПараметр("ИсправляемыйДокументПустыеСсылки", ИсправляемыйДокументПустыеСсылки);
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&ИсправляемыйДокумент КАК ИсправляемыйДокумент
	|
	|ПОМЕСТИТЬ ВТ_ИсправляемыйДокумент
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ ПЕРВЫЕ 1
	|	КорректировкаПриобретения.Ссылка КАК Корректировка,
	|	КорректировкаПриобретения.ДокументОснование КАК ДокументОснование
	|ПОМЕСТИТЬ ВТ_КорректировкаПоСогласованиюСторон
	|ИЗ
	|	Документ.КорректировкаПриобретения КАК КорректировкаПриобретения
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИсправленияДокументов КАК ИсправленияДокументов
	|		ПО ИсправленияДокументов.ИсправляемыйДокумент = КорректировкаПриобретения.Ссылка
	|		И ИсправленияДокументов.СторнированИсправляемыйДокумент
	|ГДЕ
	|	КорректировкаПриобретения.ДокументОснование = &ДокументОснование
	|	И КорректировкаПриобретения.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПоСогласованиюСторон)
	|	И КорректировкаПриобретения.Проведен
	|	И КорректировкаПриобретения.Дата < &Период
	|	И ИсправленияДокументов.ИсправляемыйДокумент ЕСТЬ NULL
	|
	|УПОРЯДОЧИТЬ ПО
	|	КорректировкаПриобретения.Дата УБЫВ
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ВЫБОР
	|		КОГДА ВТ_ИсправляемыйДокумент.ИсправляемыйДокумент = НЕОПРЕДЕЛЕНО
	|		ИЛИ ВТ_ИсправляемыйДокумент.ИсправляемыйДокумент В (&ИсправляемыйДокументПустыеСсылки)
	|			ТОГДА ЕСТЬNULL(ВТ_КорректировкаПоСогласованиюСторон.Корректировка, &ДокументОснование)
	|		ИНАЧЕ ВТ_ИсправляемыйДокумент.ИсправляемыйДокумент
	|	КОНЕЦ КАК ИсправляемыйДокумент
	|ПОМЕСТИТЬ ВТ_ИсправляемыйДокументКорректировки
	|ИЗ
	|	ВТ_ИсправляемыйДокумент КАК ВТ_ИсправляемыйДокумент
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_КорректировкаПоСогласованиюСторон КАК ВТ_КорректировкаПоСогласованиюСторон
	|		ПО (ВТ_КорректировкаПоСогласованиюСторон.ДокументОснование = &ДокументОснование)
	|ГДЕ
	|	&ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТ_КорректировкаПоСогласованиюСторон
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТ_ИсправляемыйДокумент" + ОбщегоНазначения.РазделительПакетаЗапросов();

	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаВтТаблицаИсправленияДокументов(Запрос, ТекстыЗапроса) Экспорт

	ИмяРегистра = "ВтТаблицаИсправленияДокументов";

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

Функция ТекстЗапросаТаблицаИсправленияДокументов(Запрос, ТекстыЗапроса, Регистры) Экспорт
	
	ИмяРегистра = "ИсправленияДокументов";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;

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

	Возврат ТекстЗапроса;
	
КонецФункции

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

//++ НЕ УТ

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

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

//-- НЕ УТ

Функция АдаптированныйТекстЗапросаДвиженийПоРегистру(ИмяРегистра) Экспорт
	
	Запрос = Новый Запрос;
	ТекстыЗапроса = Новый СписокЗначений;
	
	ПолноеИмяДокумента           = "Документ.КорректировкаПриобретения";
	СинонимТаблицыДокумента      = "";
	ВЗапросеЕстьИсточник         = Истина;
	ТекстыЗапросаВременныхТаблиц = Новый Соответствие();
	
	ПереопределениеРасчетаПараметров = Новый Структура;
	ПереопределениеРасчетаПараметров.Вставить("ИнформацияПоДоговору",    """""");
	ПереопределениеРасчетаПараметров.Вставить("НомерВходящегоДокумента", """""");
	ПереопределениеРасчетаПараметров.Вставить(
		"ХозОперацияОснования",
		"ДанныеДокумента.ХозяйственнаяОперация");
	ПереопределениеРасчетаПараметров.Вставить("ХозяйственнаяОперация", "ДанныеДокумента.ВидКорректировки");
	
	ЗначенияПараметров = Новый Структура;
	ЗначенияПараметров.Вставить("ИдентификаторМетаданных",
		ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ПолноеИмяДокумента));  
	ЗначенияПараметров.Вставить("КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям",
		ПолучитьФункциональнуюОпцию("КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям"));
	ЗначенияПараметров.Вставить("ИспользоватьУчетПрослеживаемыхИмпортныхТоваров",
		УчетПрослеживаемыхТоваровЛокализация.ИспользоватьУчетПрослеживаемыхИмпортныхТоваров(Дата(1,1,1)));
	ЗначенияПараметров.Вставить("ДатаНачалаУчетаПрослеживаемыхИмпортныхТоваров",
		УчетПрослеживаемыхТоваровЛокализация.ДатаНачалаУчетаПрослеживаемыхИмпортныхТоваров());
	
	Если ИмяРегистра = "ДвиженияСерийТоваров" Тогда
		
		ТекстЗапроса = ТекстЗапросаТаблицаДвиженияСерийТоваров(Запрос, ТекстыЗапроса, ИмяРегистра);
		СинонимТаблицыДокумента = "ТаблицаСерии";
		
	ИначеЕсли ИмяРегистра = "РеестрДокументов" Тогда
		
		ТекстЗапроса = ТекстЗапросаТаблицаРеестрДокументов(Запрос, ТекстыЗапроса, ИмяРегистра);
		СинонимТаблицыДокумента = "ДанныеДокумента";
		
	Иначе
		ТекстИсключения = НСтр("ru = 'В документе %ПолноеИмяДокумента% не реализована адаптация текста запроса формирования движений по регистру %ИмяРегистра%.'");
		ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ПолноеИмяДокумента%", ПолноеИмяДокумента);
		ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИмяРегистра%", ИмяРегистра);
		
		ВызватьИсключение ТекстИсключения;
	КонецЕсли;
	
	Если ИмяРегистра = "РеестрДокументов" Тогда
		
		ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросПроведенияПоНезависимомуРегистру(
			ТекстЗапроса,
			ПолноеИмяДокумента,
			СинонимТаблицыДокумента,
			ВЗапросеЕстьИсточник,
			ПереопределениеРасчетаПараметров);
		
	Иначе
		
		ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросМеханизмаПроведения(
			ТекстЗапроса,
			ПолноеИмяДокумента,
			СинонимТаблицыДокумента,
			ПереопределениеРасчетаПараметров,
			ТекстыЗапросаВременныхТаблиц);
		
	КонецЕсли;
	
	Результат = ОбновлениеИнформационнойБазыУТ.РезультатАдаптацииЗапроса();
	Результат.ЗначенияПараметров = ЗначенияПараметров;
	Результат.ТекстЗапроса = ТекстЗапроса;
	
	Возврат Результат;
	
КонецФункции

Процедура ОтразитьВУчетеНДС(Запрос, ТекстыЗапроса, Регистры)
	
	Если Не УчетНДСУП.ТребуетсяПроведениеПоРегистрамНДС(Регистры) Тогда
		Возврат;
	КонецЕсли;
	
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	//++ НЕ УТ
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПартииПроизводства", ТекстыЗапроса) Тогда
		ТекстЗапросаВтПартииПроизводства(Запрос, ТекстыЗапроса);
	КонецЕсли;
	//-- НЕ УТ
	
	УстановитьПараметрЗапросаДокументПоступленияНДС(Запрос);
	
	ТекстЦенности =
	"ВЫБРАТЬ
	|	Расхождения.Ссылка.Дата КАК Период,
	|	Расхождения.Ссылка КАК Ссылка,
	|	Расхождения.Ссылка.Организация КАК Организация,
	|	Расхождения.Ссылка.Подразделение КАК Подразделение,
	|	Расхождения.Ссылка.Контрагент КАК Контрагент,
	|	Расхождения.Ссылка.Договор КАК Договор,
	|	ВЫБОР
	|		КОГДА Расхождения.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|			ТОГДА НЕОПРЕДЕЛЕНО
	|		ИНАЧЕ
	|			Расхождения.Ссылка.ДокументОснование.Грузоотправитель
	|	КОНЕЦ КАК Грузоотправитель,
	|	&ДокументПоступленияНДС КАК ДокументПриобретения,
	|	Расхождения.Ссылка.ДокументОснование КАК ИсходныйТорговыйДокумент,
	|	ВЫБОР
	|		КОГДА Расхождения.Ссылка.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК ИсправлениеОшибок,
	|	ВЫБОР
	|		КОГДА Расхождения.Ссылка.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПоСогласованиюСторон)
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК КорректировкаПоСогласованиюСторон,
	|	Расхождения.Ссылка.УменьшитьСуммуНДСКВычету КАК УменьшитьСуммуНДСКВычету,
	|	Расхождения.Ссылка КАК ДокументКорректировкиПриобретения,
	|	Расхождения.Ссылка.НалогообложениеНДС КАК НалогообложениеНДС,
	|	ВЫБОР
	|		КОГДА Расхождения.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|			ТОГДА Расхождения.Ссылка.ЗакупкаПодДеятельность
	|		ИНАЧЕ
	|			Расхождения.Ссылка.ДокументОснование.ЗакупкаПодДеятельность
	|	КОНЕЦ КАК ВидДеятельностиНДС,
	|
	|	Расхождения.СтавкаНДС КАК СтавкаНДС,
	|	ВЫБОР КОГДА Расхождения.СписатьНаРасходы
	|		ТОГДА НЕОПРЕДЕЛЕНО
	|		ИНАЧЕ Расхождения.Номенклатура
	|	КОНЕЦ КАК Номенклатура,
	|	Расхождения.ВидЗапасов КАК ВидЗапасов,
	|	Расхождения.НомерГТД КАК НомерГТД,
	|	Расхождения.Подразделение КАК ПодразделениеУчета,
	|	ВЫБОР
	|		КОГДА &ИспользуетсяДокументПриобретениеУслугПрочихАктивов
	|			ТОГДА ТаблицаРасхождения.НаправлениеДеятельности
	|		КОГДА ТаблицаРасхождения.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) ТОГДА
	|			&НаправлениеДеятельности
	|		ИНАЧЕ ТаблицаРасхождения.НаправлениеДеятельности
	|	КОНЕЦ КАК НаправлениеДеятельности,
	|	ВЫБОР
	|		КОГДА ЛОЖЬ
	|			ТОГДА ЛОЖЬ
	//++ НЕ УТ
	|		КОГДА НЕ ПартииПроизводства.НаправлениеДеятельности ЕСТЬ NULL
	|			ТОГДА ИСТИНА
	//-- НЕ УТ
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК ПриобретениеНаПартиюПроизводства,
	|	ВЫБОР
	|		КОГДА ЛОЖЬ
	|			ТОГДА НЕОПРЕДЕЛЕНО
	//++ НЕ УТ
	|		КОГДА НЕ ПартииПроизводства.НаправлениеДеятельности ЕСТЬ NULL
	|			ТОГДА ПартииПроизводства.НаправлениеДеятельности
	//-- НЕ УТ
	|		ИНАЧЕ НЕОПРЕДЕЛЕНО
	|	КОНЕЦ КАК НаправлениеДеятельностиПартииПроизводства,
	|	Расхождения.СписатьНаРасходы КАК СписатьНаРасходы,
	|	ВЫБОР КОГДА Расхождения.СписатьНаРасходы
	|			ИЛИ Расхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|			Расхождения.СтатьяРасходов
	|		ИНАЧЕ
	|			&СтатьяРасходов
	|	КОНЕЦ КАК СтатьяРасходов,
	|	ВЫБОР КОГДА Расхождения.СписатьНаРасходы
	|		ИЛИ Расхождения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) ТОГДА
	|		Расхождения.АналитикаРасходов
	|	ИНАЧЕ
	|		&АналитикаРасходов
	|	КОНЕЦ КАК АналитикаРасходов,
	|	Расхождения.СтатьяАктивовПассивов КАК СтатьяПрочихАктивов,
	|	Расхождения.АналитикаАктивовПассивов КАК АналитикаПрочихАктивов,
	|	Расхождения.Назначение КАК Назначение,
	|	Расхождения.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	Расхождения.ИдентификаторФинЗаписи КАК ИдентификаторФинЗаписи,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВходящийНДСПоПриобретению) КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК Расхождения
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаРасхождения
	|		ПО Расхождения.Ссылка = ТаблицаРасхождения.Ссылка
	|		И Расхождения.НомерСтроки = ТаблицаРасхождения.НомерСтроки
	//++ НЕ УТ
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		ВтПартииПроизводства КАК ПартииПроизводства
	|		ПО ПартииПроизводства.ПартияВыпуска = &ДокументОснование
	|		И ПартииПроизводства.НомерГруппыЗатрат = ТаблицаРасхождения.НомерГруппыЗатрат
	//-- НЕ УТ
	|ГДЕ
	|	Расхождения.Ссылка = &Ссылка
	|	И (ВЫБОР
	|		КОГДА НЕ Расхождения.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
	|			И ЕСТЬNULL(Расхождения.Ссылка.ДокументОснование.ВернутьМногооборотнуюТару, ЛОЖЬ)
	|			ТОГДА Расхождения.Номенклатура.ТипНоменклатуры <> ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|		ИНАЧЕ
	|			ИСТИНА
	|		КОНЕЦ)
	|	И Расхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	КорректировкаЗадолженности.Ссылка.Дата КАК Период,
	|	КорректировкаЗадолженности.Ссылка КАК Ссылка,
	|	КорректировкаЗадолженности.Ссылка.Организация КАК Организация,
	|	КорректировкаЗадолженности.Ссылка.Подразделение КАК Подразделение,
	|	КорректировкаЗадолженности.Ссылка.Контрагент КАК Контрагент,
	|	КорректировкаЗадолженности.Ссылка.Договор КАК Договор,
	|	НЕОПРЕДЕЛЕНО КАК Грузоотправитель,
	|	КорректировкаЗадолженности.ДокументПриобретения КАК ДокументПриобретения,
	|	КорректировкаЗадолженности.ДокументПриобретения КАК ИсходныйТорговыйДокумент,
	|	ЛОЖЬ КАК ИсправлениеОшибок,
	|	ИСТИНА КАК КорректировкаПоСогласованиюСторон,
	|	КорректировкаЗадолженности.Ссылка.УменьшитьСуммуНДСКВычету КАК УменьшитьСуммуНДСКВычету,
	|	КорректировкаЗадолженности.Ссылка КАК ДокументКорректировкиПриобретения,
	|	КорректировкаЗадолженности.Ссылка.НалогообложениеНДС КАК НалогообложениеНДС,
	|	КорректировкаЗадолженности.Ссылка.ЗакупкаПодДеятельность КАК ВидДеятельностиНДС,
	|	КорректировкаЗадолженности.СтавкаНДС КАК СтавкаНДС,
	|	НЕОПРЕДЕЛЕНО КАК Номенклатура,
	|	НЕОПРЕДЕЛЕНО КАК ВидЗапасов,
	|	НЕОПРЕДЕЛЕНО КАК НомерГТД,
	|	КорректировкаЗадолженности.Ссылка.Подразделение КАК ПодразделениеУчета,
	|	КорректировкаЗадолженности.Ссылка.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	ЛОЖЬ КАК ПриобретениеНаПартиюПроизводства,
	|	НЕОПРЕДЕЛЕНО КАК НаправлениеДеятельностиПартииПроизводства,
	|	ЛОЖЬ КАК СписатьНаРасходы,
	|	КорректировкаЗадолженности.Ссылка.СтатьяРасходов КАК СтатьяРасходов,
	|	КорректировкаЗадолженности.Ссылка.АналитикаРасходов КАК АналитикаРасходов,
	|	КорректировкаЗадолженности.Ссылка.СтатьяРасходов КАК СтатьяПрочихАктивов,
	|	КорректировкаЗадолженности.Ссылка.АналитикаАктивов КАК АналитикаПрочихАктивов,
	|	НЕОПРЕДЕЛЕНО КАК Назначение,
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	КорректировкаЗадолженности.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВходящийНДСПоПриобретению) КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	Документ.КорректировкаПриобретения.КорректировкаЗадолженности КАК КорректировкаЗадолженности
	|ГДЕ
	|	КорректировкаЗадолженности.Ссылка В (&Ссылка)
	|";
	
	УчетНДСУП.ОтразитьПриобретениеУПоставщика(Запрос, ТекстыЗапроса, Регистры, ТекстЦенности);
	
	ОтразитьВвозТоваровИзТаможенногоСоюза(Запрос, ТекстыЗапроса, Регистры);
	
КонецПроцедуры

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

			УчетИмпорта.ОтразитьВвозТоваровИзТаможенногоСоюзаНоваяМеханика(Запрос, ТекстыЗапроса, Регистры, ТекстТовары);	
		
		КонецЕсли;
		
	КонецЕсли;
	
КонецПроцедуры

Процедура ДобавитьТекстыОтраженияВзаиморасчетов(Запрос, ТекстыЗапроса, Регистры)
	
	#Область КурсыВалютДокумента
	
	ИмяРегистра = "ВременнаяТаблицаКурсыВалютДокумента";

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

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

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

Функция ТекстЗапросаТаблицаТоварыУслугиКОформлениюОтчетовКомитентуОЗакупках(Запрос, ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "ТоварыУслугиКОформлениюОтчетовКомитентуОЗакупках";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;
	
	Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтТаблицаРасхожденияТоваров", ТекстыЗапроса) Тогда
		ТекстЗапросаВтТаблицаРасхожденияТоваров(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	&Период КАК Период,
	|	&Организация КАК Организация,
	|  ТаблицаРасхождения.Номенклатура КАК Номенклатура,
	|  ТаблицаРасхождения.Характеристика КАК Характеристика,
	|	&Ссылка КАК ДокументПриобретения,
	|	ТаблицаРасхождения.Назначение КАК Назначение,
	|	ТаблицаРасхождения.Количество КАК Количество,
	|	ТаблицаРасхождения.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
	|	&ВалютаВзаиморасчетов КАК Валюта,
	|	ТаблицаРасхождения.НомерГТД КАК НомерГТД,
	|	ТаблицаРасхождения.СуммаСНДС КАК СуммаСНДС,
	|	ТаблицаРасхождения.СуммаНДС КАК СуммаНДС,
	|	ВЫБОР
	|		КОГДА ЕСТЬNULL(Назначения.Договор.ПереоцениватьТоварыУслугиКОтчетуКомитенту, ЛОЖЬ)
	|			ТОГДА ТаблицаРасхождения.СуммаБезНДСРегл + ТаблицаРасхождения.СуммаНДСРегл
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СуммаРегл,
	|	ВЫБОР
	|		КОГДА ЕСТЬNULL(Назначения.Договор.ПереоцениватьТоварыУслугиКОтчетуКомитенту, ЛОЖЬ)
	|			ТОГДА ТаблицаРасхождения.СуммаБезНДСУпр + ТаблицаРасхождения.СуммаНДСУпр
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СуммаУпр,
	|	ЛОЖЬ КАК Первичное,
	|	ТаблицаРасхождения.ИдентификаторФинЗаписи КАК ИдентификаторФинЗаписи,
	|	ТаблицаРасхождения.НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации,
	|	ТаблицаРасхождения.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ВЫБОР
	|		КОГДА ЕСТЬNULL(Назначения.УчитыватьСтавкиНДС, ЛОЖЬ)
	|			ТОГДА ТаблицаРасхождения.СтавкаНДС
	|		ИНАЧЕ ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка)
	|	КОНЕЦ КАК СтавкаНДС
	|ИЗ
	|	ВтТаблицаРасхожденияТоваров КАК ТаблицаРасхождения
	|ЛЕВОЕ СОЕДИНЕНИЕ
	|	Справочник.Назначения КАК Назначения
	|ПО
	|	ТаблицаРасхождения.Назначение = Назначения.Ссылка
	|ГДЕ
	|	&ДокументОснованиеЯвляетсяПриобретением
	|	И &ХозОперацияОснования В (&ХозОперацииПоставкаПодПринципала)
	|	И ТаблицаРасхождения.Назначение.ТипНазначения = ЗНАЧЕНИЕ(Перечисление.ТипыНазначений.ПоставкаПодПринципала)
	|	И (ВЫБОР ТаблицаРасхождения.ТипНоменклатуры 
	|			КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар) ТОГДА ИСТИНА
	|			КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа) ТОГДА ИСТИНА
	|			КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара) ТОГДА НЕ &ВернутьМногооборотнуюТару
	|			ИНАЧЕ ЛОЖЬ
	|		КОНЕЦ)	
	|	И НЕ &ИспользуетсяДокументПоступлениеТоваров
	|	И ТаблицаРасхождения.НастройкаХозяйственнойОперации <> ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВключениеНДСВСтоимость)
	|";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
КонецФункции

Процедура ОтразитьРаспределениеЗапасовДвижения(Запрос, ТекстыЗапроса, Регистры)
	
	ТекстЗапросаТабЧасть =
		"ВЫБРАТЬ
		|	ТабЧасть.Ссылка         КАК Ссылка,
		|	ТабЧасть.Ссылка.Дата    КАК Период,
		|	ТабЧасть.Номенклатура   КАК Номенклатура,
		|	ТабЧасть.Характеристика КАК Характеристика,
		|	
		|	ВЫБОР КОГДА ТабЧасть.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа) ТОГДА
		|				ТабЧасть.Подразделение
		|			ИНАЧЕ
		|				ТабЧасть.Склад
		|		КОНЕЦ КАК Склад,
		|	
		|	ТабЧасть.Назначение     КАК Назначение,
		|	ТабЧасть.Количество     КАК Количество,
		|	ЛОЖЬ                    КАК ПоГрафику,
		|	НЕОПРЕДЕЛЕНО            КАК РаспоряжениеВГрафике
		|ИЗ
		|	Документ.КорректировкаПриобретения.Расхождения КАК ТабЧасть
		|ГДЕ
		|	ТабЧасть.ВариантОтражения В(
		|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьЗакупкуУвеличитьСкладскиеОстатки),
		|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьСкладскиеОстатки))
		|		ИЛИ ТабЧасть.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
		|			И ТабЧасть.ВариантОтражения В(
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара),
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара))
		|			И НЕ (ТабЧасть.Ссылка.ХозяйственнаяОперация В(
		|					ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаФактуровкаПоставки),
		|					ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСФактуровкаПоставки))
		|				И ЕСТЬNULL(ТабЧасть.Ссылка.Договор.ВариантОформленияЗакупок = ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваровИУслуг),
		|					ЛОЖЬ))
		//++ НЕ УТ
		|			И НЕ ТабЧасть.Ссылка.ХозяйственнаяОперация В(
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаОтчетаПереработчика))
		//-- НЕ УТ
		|			И НЕ ТабЧасть.СписатьНаРасходы
		|";
	
	РаспределениеЗапасовДвижения.ПриходЗапаса(Запрос, ТекстыЗапроса, Регистры, ТекстЗапросаТабЧасть, Неопределено, Ложь);
	
	ТекстЗапросаТабЧасть =
		"ВЫБРАТЬ
		|	ТабЧасть.Ссылка КАК Ссылка,
		|	ТабЧасть.Ссылка.Дата КАК Период,
		|	ТабЧасть.Номенклатура КАК Номенклатура,
		|	ТабЧасть.Характеристика КАК Характеристика,
		|	ТабЧасть.Склад КАК Склад,
		|	ТабЧасть.Назначение КАК Назначение,
		|	-ТабЧасть.Количество КАК Количество,
		|	ВЫБОР
		|		КОГДА
		|			ТабЧасть.Ссылка.ВариантПриемкиТоваров В(
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.НеРазделенаПоЗаказамИНакладным),
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.МожетПроисходитьБезЗаказовИНакладных),
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.НеРазделенаПоНакладным))
		|			ТОГДА ТабЧасть.Ссылка.Соглашение
		|		КОГДА ТабЧасть.Ссылка.ВариантПриемкиТоваров В(
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.ПоДоговорамБезЗаказовИНакладных),
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.ПоДоговорамПослеЗаказовИлиНакладных),
		|				ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.ПоДоговорамПослеНакладных))
		|			ТОГДА ТабЧасть.Ссылка.Договор
		|		КОГДА ТабЧасть.Ссылка.ВариантПриемкиТоваров = ЗНАЧЕНИЕ(Перечисление.ВариантыПриемкиТоваров.РазделенаТолькоПоНакладным)
		|				ИЛИ НЕ ТабЧасть.Ссылка.ПоступлениеПоЗаказам
		|			ТОГДА ТабЧасть.Ссылка.ДокументОснование
		|		ИНАЧЕ ТабЧасть.ЗаказПоставщику
		|	КОНЕЦ КАК РаспоряжениеВГрафике
		|ИЗ
		|	Документ.КорректировкаПриобретения.Расхождения КАК ТабЧасть
		|ГДЕ
		|	ТабЧасть.ВариантОтражения В(
		|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара),
		|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара),
		|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьЗакупкуУвеличитьТоварыУПартнеров),
		|			ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьТоварыУПартнеров))
		|	И (ТабЧасть.Номенклатура.ТипНоменклатуры В(
		|			ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар),
		|			ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
		|		И ТабЧасть.Ссылка.ХозяйственнаяОперация В(
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаТоварыВПути),
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаФактуровкаПоставки),
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСТоварыВПути),
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСФактуровкаПоставки),
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаПоИмпортуТоварыВПути))
		|		ИЛИ ТабЧасть.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа)
		|			И ТабЧасть.Ссылка.ХозяйственнаяОперация В(
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаФактуровкаПоставки),
		|				ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСФактуровкаПоставки))
		|			И ЕСТЬNULL(ТабЧасть.Ссылка.Договор.ВариантОформленияЗакупок = ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеотфактурованныеПоставкиТоваровИУслуг),
		|				ЛОЖЬ))";
	
	РаспределениеЗапасовДвижения.ОтменитьЗапланированныйПриходЗапаса(Запрос, ТекстыЗапроса, Регистры, ТекстЗапросаТабЧасть);
	
КонецПроцедуры

#Область ПартионныйУчет

Функция ОписаниеРегистровУчетаЗатратИСебестоимости(Документ) Экспорт
	
	ОписаниеРегистров = Новый Массив;
	ОписаниеРегистров.Добавить(Метаданные.РегистрыНакопления.СебестоимостьТоваров);
	
	Возврат ОписаниеРегистров;
	
КонецФункции

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

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

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

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

	#Область ВнешнееПоступление_Корректировка
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	// Описание документа
	|	ТаблицаДокумента.Дата 		КАК Период,
	|	ТаблицаДокумента.Ссылка 	КАК Ссылка,
	|	&ДокументОснование			КАК ДокументИсточник,
	|	(ВЫБОР
	// При использовании среднескользящей корректировка до вводе остатков отражается периодом документа, т.к.
	// в периоде документа - основания не будет движений по регистру "Себестоимость товаров" и отклонения
	// в стоимости не будут распределены.
	|		КОГДА &СреднеСкользящая
	|		 И ТаблицаДокумента.ТипКорректировки = ЗНАЧЕНИЕ(ПеречислениЕ.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|			ТОГДА ТаблицаДокумента.Дата
	|		ИНАЧЕ &ПериодПоступления
	|	КОНЕЦ)						КАК ПериодДокументаИсточника,
	|	НЕОПРЕДЕЛЕНО 				КАК КорректируемыйДокумент,
	|
	// Поля учета номенклатуры
	|	ТаблицаДокумента.Организация						КАК Организация,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры		КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаВидыЗапасов.ВидЗапасов						КАК ВидЗапасов,
	|	&ДокументОснование									КАК Партия,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС				КАК ВидДеятельностиНДС,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС				КАК ВидДеятельностиНДСДокумента,
	|
	// Корреспондирующие поля
	|	НЕОПРЕДЕЛЕНО 								  		КАК КорАналитикаУчетаНоменклатуры,
	|	НЕОПРЕДЕЛЕНО 								  		КАК КорВидЗапасов,
	|
	// Поля аналитики учета партий
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий			КАК АналитикаУчетаПартий,
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий			КАК КорАналитикаУчетаПартий,
	|	ТаблицаДокумента.Партнер		КАК Поставщик,
	|	ТаблицаДокумента.Контрагент 	КАК Контрагент,
	|	ТаблицаВидыЗапасов.СтавкаНДС	КАК СтавкаНДС,
	|
	// Поля аналитики финансового учета
	|	ТаблицаДокумента.Сделка			КАК Сделка,
	|	ТаблицаДокумента.Подразделение 	КАК Подразделение,
	|	ТаблицаДокумента.Менеджер 		КАК Менеджер,
	|
	// Количественные и суммовые показатели
	|	0												КАК Количество,
	|	ТаблицаВидыЗапасов.ИдентификаторСтроки			КАК ИдентификаторСтроки,
	|	ВЫБОР КОГДА НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) = НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	// При среднескользящей суммовые корректировки любого периода отражаются в регистре "Отклонения в стоимости товаров" через поля доп расходв,
	// кроме корректировки стоимости фактуровки поставки.
	|	 И (НЕ &СреднеСкользящая
	|		ИЛИ ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварПоНеотфактурованнойПоставке))
	|	 ИЛИ НЕ &ПартионныйУчетВерсии22
	|		ТОГДА ТаблицаВидыЗапасов.СуммаСНДСУпр
	|		ИНАЧЕ 0
	|	КОНЕЦ 											КАК Стоимость,
	|	ВЫБОР КОГДА НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) = НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	|	 И (НЕ &СреднеСкользящая
	|		ИЛИ ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварПоНеотфактурованнойПоставке))
	|	  ИЛИ НЕ &ПартионныйУчетВерсии22
	|		ТОГДА ТаблицаВидыЗапасов.СуммаБезНДСУпр
	|		ИНАЧЕ 0
	|	КОНЕЦ 											КАК СтоимостьБезНДС,
	|	ТаблицаВидыЗапасов.СтоимостьРегл 				КАК СтоимостьРегл,
	|	ВЫБОР КОГДА ТаблицаВидыЗапасов.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|		ТОГДА 0
	|		ИНАЧЕ ТаблицаВидыЗапасов.СуммаНДСРегл
	|	КОНЕЦ								 			КАК НДСРегл,
	|	ТаблицаВидыЗапасов.СтоимостьУпр 				КАК СтоимостьУпр,
	|	ВЫБОР КОГДА ТаблицаВидыЗапасов.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|		ТОГДА 0
	|		ИНАЧЕ ТаблицаВидыЗапасов.СуммаСНДСУпр - ТаблицаВидыЗапасов.СуммаБезНДСУпр
	|	КОНЕЦ 											КАК НДСУпр,
	|	0												КАК СтоимостьЗабалансовая,
	|	0												КАК СтоимостьЗабалансоваяРегл,
	|	ВЫБОР КОГДА НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) = НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	|	  И (НЕ &СреднеСкользящая
	|		ИЛИ ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварПоНеотфактурованнойПоставке))
	|	  ИЛИ НЕ &ПартионныйУчетВерсии22
	|		ТОГДА 0
	|		ИНАЧЕ ТаблицаВидыЗапасов.СуммаСНДСУпр
	|	КОНЕЦ 											КАК ДопРасходы,
	|	ВЫБОР КОГДА НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) = НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	|	  И (НЕ &СреднеСкользящая
	|		ИЛИ ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварПоНеотфактурованнойПоставке))
	|	  ИЛИ НЕ &ПартионныйУчетВерсии22
	|		ТОГДА 0
	|		ИНАЧЕ ТаблицаВидыЗапасов.СуммаБезНДСУпр
	|	КОНЕЦ 											КАК ДопРасходыБезНДС,
	|	ТаблицаВидыЗапасов.ДопРасходыРегл 				КАК ДопРасходыРегл,
	|	ТаблицаВидыЗапасов.ДопРасходыУпр 				КАК ДопРасходыУпр,
	|	0 												КАК ПостояннаяРазница,
	|	ТаблицаВидыЗапасов.ВременнаяРазница 			КАК ВременнаяРазница,
	|	0												КАК КорСтоимость,
	|
	// Прочие поля
	|	ВЫБОР КОГДА НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) = НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	|	 ИЛИ &СреднеСкользящая
	|	  И ТаблицаДокумента.ТипКорректировки = ЗНАЧЕНИЕ(ПеречислениЕ.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|		ТОГДА ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщика)
	|		ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПриобретенияПрошлогоПериода)
	|	КОНЕЦ 												КАК ХозяйственнаяОперация,
	|	ТаблицаВидыЗапасов.ИдентификаторФинЗаписи			КАК ИдентификаторФинЗаписи,
	|	ТаблицаВидыЗапасов.НастройкаХозяйственнойОперации	КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	Документ.КорректировкаПриобретения КАК ТаблицаДокумента
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтТаблицаРасхожденияТоваров КАК ТаблицаВидыЗапасов
	|		ПО ИСТИНА
	|ГДЕ
	|	ТаблицаДокумента.Ссылка В (&Ссылка)
	|	И (ТаблицаВидыЗапасов.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара)
	|		ИЛИ (ТаблицаВидыЗапасов.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара)
	|			И &ПартионныйУчетВерсии22)
	|		ИЛИ (НАЧАЛОПЕРИОДА(&ПериодПоступления, МЕСЯЦ) <> НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
	|			И ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварВПути)
	|			И ТаблицаВидыЗапасов.Количество = 0
	|			И ТаблицаВидыЗапасов.НастройкаХозяйственнойОперации = ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ЗакупкаУПоставщика)
	|			)
	|		)
	|	И ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов В (
	|		ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар),
	|		ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварПоНеотфактурованнойПоставке),
	|		ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.СобственныйТоварВПути))
	|	И НЕ ТаблицаВидыЗапасов.СписатьНаРасходы";
	
	РасчетСебестоимостиПроведениеДокументов.ДобавитьОписаниеОперацииДляОтраженияВУчетеСебестоимости(
		ОписаниеОпераций,
		Перечисления.ОперацииУчетаСебестоимости.ВнешнееПоступление,
		ТекстЗапроса);
	
	#КонецОбласти

	#Область ВнешнееПоступление_Корректировка_ПУ21
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	// Описание документа
	|	ТаблицаДокумента.Дата 		КАК Период,
	|	ТаблицаДокумента.Ссылка 	КАК Ссылка,
	|	НЕОПРЕДЕЛЕНО				КАК ДокументИсточник,
	|	НЕОПРЕДЕЛЕНО				КАК ПериодДокументаИсточника,
	|	НЕОПРЕДЕЛЕНО 				КАК КорректируемыйДокумент,
	|
	// Поля учета номенклатуры
	|	ТаблицаДокумента.Организация						КАК Организация,
	|	ТаблицаВидыЗапасов.АналитикаУчетаНоменклатуры		КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаВидыЗапасов.ВидЗапасов						КАК ВидЗапасов,
	|	&ДокументОснование 									КАК Партия,
	|	ТаблицаВидыЗапасов.ВидДеятельностиНДС				КАК ВидДеятельностиНДС,
	|	ТаблицаДокумента.НалогообложениеНДС					КАК ВидДеятельностиНДСДокумента,
	|
	// Корреспондирующие поля
	|	НЕОПРЕДЕЛЕНО 								  		КАК КорАналитикаУчетаНоменклатуры,
	|	НЕОПРЕДЕЛЕНО 								  		КАК КорВидЗапасов,
	|
	// Поля аналитики учета партий
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий			КАК АналитикаУчетаПартий,
	|	ТаблицаВидыЗапасов.АналитикаУчетаПартий			КАК КорАналитикаУчетаПартий,
	|	ТаблицаДокумента.Партнер		КАК Поставщик,
	|	ТаблицаДокумента.Контрагент 	КАК Контрагент,
	|	ТаблицаВидыЗапасов.СтавкаНДС	КАК СтавкаНДС,
	|
	// Поля аналитики финансового учета
	|	ТаблицаДокумента.Сделка			КАК Сделка,
	|	ТаблицаДокумента.Подразделение 	КАК Подразделение,
	|	ТаблицаДокумента.Менеджер 		КАК Менеджер,
	|
	// Количественные и суммовые показатели
	|	0												КАК Количество,
	|	ТаблицаВидыЗапасов.ИдентификаторСтроки			КАК ИдентификаторСтроки,
	|	0 												КАК Стоимость,
	|	0 												КАК СтоимостьБезНДС,
	|	ТаблицаВидыЗапасов.СтоимостьРегл 				КАК СтоимостьРегл,
	|	ВЫБОР КОГДА ТаблицаВидыЗапасов.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
	|		ТОГДА 0
	|		ИНАЧЕ ТаблицаВидыЗапасов.СуммаНДСРегл
	|	КОНЕЦ								 			КАК НДСРегл,
	|	0 												КАК СтоимостьУпр,
	|	0 												КАК НДСУпр,
	|	0												КАК СтоимостьЗабалансовая,
	|	0												КАК СтоимостьЗабалансоваяРегл,
	|	ТаблицаВидыЗапасов.СуммаСНДСУпр					КАК ДопРасходы,
	|	ТаблицаВидыЗапасов.СуммаБезНДСУпр				КАК ДопРасходыБезНДС,
	|	0 												КАК ДопРасходыРегл,
	|	0 												КАК ДопРасходыУпр,
	|	0 												КАК ПостояннаяРазница,
	|	ТаблицаВидыЗапасов.ВременнаяРазница 			КАК ВременнаяРазница,
	|	0												КАК КорСтоимость,
	|
	// Прочие поля
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщика)	КАК ХозяйственнаяОперация,
	|	ТаблицаВидыЗапасов.ИдентификаторФинЗаписи						КАК ИдентификаторФинЗаписи,
	|	ТаблицаВидыЗапасов.НастройкаХозяйственнойОперации				КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	Документ.КорректировкаПриобретения КАК ТаблицаДокумента
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтТаблицаРасхожденияТоваров КАК ТаблицаВидыЗапасов
	|		ПО ИСТИНА
	|ГДЕ
	|	ТаблицаДокумента.Ссылка В (&Ссылка)
	|	И ТаблицаВидыЗапасов.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара)
	|	И ТаблицаВидыЗапасов.ВидЗапасов.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
	|	И НЕ ТаблицаВидыЗапасов.СписатьНаРасходы
	|	И НЕ &ПартионныйУчетВерсии22";
	
	РасчетСебестоимостиПроведениеДокументов.ДобавитьОписаниеОперацииДляОтраженияВУчетеСебестоимости(
		ОписаниеОпераций,
		Перечисления.ОперацииУчетаСебестоимости.ВнешнееПоступление,
		ТекстЗапроса);
	
	#КонецОбласти

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

//++ НЕ УТ
Функция ТекстЗапросаВтПартииПроизводства(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтПартииПроизводства";
	
	ТекстЗапроса = Документы.ОтчетПереработчика2_5.ТекстЗапросаВтПартииПроизводства(Запрос);
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Ссылка", "&ДокументОснование");
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции
//-- НЕ УТ

#КонецОбласти

Процедура ОформитьКорректировкуТоваровПоДвухходовке(Запрос, ТекстыЗапроса, Регистры)

	ТекстЗапросаДокумента = "
	|ВЫБРАТЬ
	|	ИсточникДанных.Ссылка                        КАК Ссылка,
	|	ИсточникДанных.Ссылка.ДокументОснование      КАК Накладная,
	|	ЛОЖЬ                                         КАК Исправление,
	|	НЕОПРЕДЕЛЕНО                                 КАК ИсправляемыйДокумент,
	|	ИсточникДанных.ЗаказПоставщику               КАК Заказ,
	|	ИсточникДанных.Ссылка.Договор                КАК Договор,
	|	ИсточникДанных.Ссылка.Соглашение             КАК Соглашение,
	|	ЕСТЬNULL(ДанныеОснование.ВариантПриемкиТоваров, НЕОПРЕДЕЛЕНО) КАК ВариантПриемкиТоваров,
	|	ИсточникДанных.Ссылка.Дата                   КАК Дата,
	|	
	|	ВЫБОР КОГДА ЕСТЬNULL(ДанныеОснование.ДатаПоступления, ДАТАВРЕМЯ(1, 1, 1)) <> ДАТАВРЕМЯ(1, 1, 1) ТОГДА
	|				ЕСТЬNULL(ДанныеОснование.ДатаПоступления, ДАТАВРЕМЯ(1, 1, 1))
	|			ИНАЧЕ
	|				ИсточникДанных.Ссылка.Дата
	|		КОНЕЦ КАК ДатаПланируемогоПоступления,
	|	
	|	ИсточникДанных.Номенклатура                  КАК Номенклатура,
	|	ИсточникДанных.Характеристика                КАК Характеристика,
	|	ИсточникДанных.Назначение                    КАК Назначение,
	|	ИсточникДанных.Серия                         КАК Серия,
	|	ИсточникДанных.СтатусУказанияСерий           КАК СтатусУказанияСерий,
	|	ИСТИНА								         КАК СверхЗаказа,
	|	ИсточникДанных.Склад                         КАК Склад,
	|	ВЫБОР
	|		КОГДА ИсточникДанных.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаЧерезПодотчетноеЛицо)
	|			ТОГДА ЕСТЬNULL(ДанныеОснование.ПодотчетноеЛицо, ИсточникДанных.Ссылка.Партнер)
	|		ИНАЧЕ ИсточникДанных.Ссылка.Партнер
	|	КОНЕЦ                                        КАК Отправитель,
	|	ИсточникДанных.Ссылка.ХозяйственнаяОперация  КАК ХозяйственнаяОперация,
	|	ИсточникДанных.Количество                    КАК Количество,
	|	ИСТИНА                                       КАК ЭтоНакладная,
	|	ИсточникДанных.Ссылка.ПоступлениеПоЗаказам   КАК ПоступлениеПоЗаказам
	|ИЗ
	|	Документ.КорректировкаПриобретения.Расхождения КАК ИсточникДанных
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		Документ.ПриобретениеТоваровУслуг КАК ДанныеОснование
	|		ПО ИсточникДанных.Ссылка.ДокументОснование = ДанныеОснование.Ссылка
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		Справочник.Номенклатура КАК СпрНоменклатура
	|		ПО ИсточникДанных.Номенклатура = СпрНоменклатура.Ссылка
	|ГДЕ
	|	ИсточникДанных.Ссылка В (&Ссылка)
	|	И ИсточникДанных.ВариантОтражения В (
	|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьЗакупкуУвеличитьТоварыУПартнеров),
	|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьЗакупкуУменьшитьТоварыУПартнеров),
	|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УвеличитьСтоимостьТовара),
	|		ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.УменьшитьСтоимостьТовара))
	|	И (ВЫБОР
	|		КОГДА ИсточникДанных.Ссылка.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			ТОГДА ЛОЖЬ
	|		КОГДА НЕ ИсточникДанных.Ссылка.Договор.ВариантОформленияЗакупок ЕСТЬ NULL
	|				И ИсточникДанных.Ссылка.Договор.ВариантОформленияЗакупок <> ЗНАЧЕНИЕ(Перечисление.ВариантыОформленияЗакупок.НеРазделять)
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ)
	// Двухходовка.
	|	И ВЫБОР
	|		КОГДА ИсточникДанных.Ссылка.ДокументОснование ССЫЛКА Документ.ПриобретениеТоваровУслуг
	|			ТОГДА ВЫБОР
	|				КОГДА ЕСТЬNULL(ДанныеОснование.ХозяйственнаяОперация, НЕОПРЕДЕЛЕНО) В
	|						(ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаТоварыВПути),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаУПоставщикаФактуровкаПоставки),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСТоварыВПути),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаВСтранахЕАЭСФактуровкаПоставки),
	|						ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ЗакупкаПоИмпортуТоварыВПути))
	|					ТОГДА ИСТИНА
	|				ИНАЧЕ ЛОЖЬ
	|			КОНЕЦ
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ
	|";
	
	СкладыСервер.ОформитьПриобретениеТоваровПоДвухходовке(Запрос, ТекстыЗапроса, Регистры, ТекстЗапросаДокумента);

	СкладыСервер.ЗапланироватьПоступлениеТоваров(Запрос, ТекстыЗапроса, Регистры, ТекстЗапросаДокумента,
		"ИсточникДанных", Истина);

КонецПроцедуры

#КонецОбласти

#Область Печать

// Заполняет список команд печати.
//
// Параметры:
//   КомандыПечати - см. УправлениеПечатью.СоздатьКоллекциюКомандПечати
//
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
	
	// Задание на размещение товаров
	Обработки.ПечатьЗаданияНаОтборРазмещениеТоваров.ДобавитьКомандуПечати(КомандыПечати, "ЗаданиеНаРазмещение");
	
	КорректировкаПриобретенияЛокализация.ДобавитьКомандыПечати(КомандыПечати);
	
КонецПроцедуры

#КонецОбласти

#Область Прочее

Процедура ЗаполнитьТоварыПоИсходнымДанным(ДокументОснование, Товары, ДокументСсылка = Неопределено) Экспорт
	
	МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
	
	СформироватьВременнуюТаблицуИсходныхДанных(МенеджерВременныхТаблиц, ДокументОснование, ДокументСсылка);
	
	Запрос = Новый Запрос;
	Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
	Запрос.Текст = "
	|ВЫБРАТЬ
	|	*
	|ИЗ ИсходныеДанные КАК ИсходныеДанные
	|
	|УПОРЯДОЧИТЬ ПО
	|	ИсходныеДанные.НомерСтроки
	|";
	
	ДанныеПоТоварам = Запрос.Выполнить().Выгрузить();
	
	Если Не ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ПервичныйДокумент")
		Или ДанныеПоТоварам.Количество() > 0 Тогда
		Товары.Загрузить(ДанныеПоТоварам);
	КонецЕсли;
	
КонецПроцедуры

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

Функция ТекстЗапросаПоИсходнымДаннымПриобретениеТоваровУслуг()
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ТаблицаТовары.НомерСтроки			 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение		 	 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ВЫБОР КОГДА ТаблицаТовары.СтатусУказанияСерий = 14
	|		ТОГДА 14
	|		ИНАЧЕ 0
	|	КОНЕЦ							 	 КАК СтатусУказанияСерий,
	|	""""							 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	
	|	ВЫБОР
	|		КОГДА ВЫРАЗИТЬ(ТаблицаТовары.Цена * ТаблицаТовары.КоличествоУпаковок КАК ЧИСЛО(31,2)) = ТаблицаТовары.Сумма
	|			ТОГДА ТаблицаТовары.Цена
	|		КОГДА ВЫРАЗИТЬ(ТаблицаТовары.КоличествоУпаковок КАК ЧИСЛО(31,3)) > 0
	|			ТОГДА ВЫРАЗИТЬ(ТаблицаТовары.Сумма / ТаблицаТовары.КоличествоУпаковок КАК ЧИСЛО(31,2))
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК Цена,
	|	
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ЗНАЧЕНИЕ(Справочник.КлассификаторТНВЭД.ПустаяСсылка) КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	0                                    КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ЗНАЧЕНИЕ(Справочник.СтатьиКалькуляции.ПустаяСсылка) КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ЗНАЧЕНИЕ(Справочник.НастройкиСчетовУчетаПрочихОпераций.ПустаяСсылка) КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
	|	НЕОПРЕДЕЛЕНО КАК АналитикаДоходов
	|ИЗ
	|	Документ.ПриобретениеТоваровУслуг.Товары КАК ТаблицаТовары
	|		ЛЕВОЕ СОЕДИНЕНИЕ ДанныеПоследнейКорректировки КАК ДанныеПоследнейКорректировки
	|		ПО ИСТИНА
	|ГДЕ
	|	ДанныеПоследнейКорректировки.Ссылка ЕСТЬ NULL 
	|	И ТаблицаТовары.Ссылка = &ДокументОснование
	|";
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПоИсходнымДаннымПриобретениеУслугПрочихАктивов()
	
	ТекстЗапроса = "	
	|ВЫБРАТЬ
	|	ТаблицаРасходы.НомерСтроки                                   КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(Справочник.НоменклатураКонтрагентов.ПустаяСсылка)    КАК НоменклатураПартнера,
	|	ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)               КАК Номенклатура,
	|	ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка)                 КАК Назначение,
	|	ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) КАК Характеристика,
	|	ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)          КАК Серия,
	|	0                                                            КАК СтатусУказанияСерий,
	|	ТаблицаРасходы.Содержание                                    КАК Содержание,
	|	ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)   КАК Упаковка,
	|	ТаблицаРасходы.Количество                                    КАК КоличествоУпаковок,
	|	ТаблицаРасходы.Количество                                    КАК Количество,
	|	ТаблицаРасходы.КоличествоПоРНПТ                              КАК КоличествоПоРНПТ,
	|	ТаблицаРасходы.Цена                                          КАК Цена,
	|	ТаблицаРасходы.Сумма                                         КАК Сумма,
	|	ТаблицаРасходы.СтавкаНДС                                     КАК СтавкаНДС,
	|	ТаблицаРасходы.СуммаНДС                                      КАК СуммаНДС,
	|	ТаблицаРасходы.СуммаСНДС                                     КАК СуммаСНДС,
	|	ЗНАЧЕНИЕ(Документ.ЗаказПоставщику.ПустаяСсылка)              КАК ЗаказПоставщику,
	|	0                                                            КАК КодСтроки,
	|	ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)                     КАК Склад,
	|	ТаблицаРасходы.НомерГТД                                      КАК НомерГТД,
	|	ТаблицаРасходы.КодТНВЭД                                      КАК КодТНВЭД,
	|	ЗНАЧЕНИЕ(Справочник.СделкиСКлиентами.ПустаяСсылка)           КАК Сделка,
	|	ТаблицаРасходы.Подразделение                                 КАК Подразделение,
	|	0                                                            КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ЗНАЧЕНИЕ(Справочник.СтатьиКалькуляции.ПустаяСсылка)          КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ИСТИНА                                                       КАК СписатьНаРасходы,
	|	ТаблицаРасходы.СтатьяРасходов                                КАК СтатьяРасходов,
	|	ТаблицаРасходы.АналитикаРасходов                             КАК АналитикаРасходов,
	|	ТаблицаРасходы.НаправлениеДеятельности                       КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаРасходы.НастройкаСчетовУчета                          КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаРасходы.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаРасходы.АналитикаДоходов КАК АналитикаДоходов
	|ИЗ
	|	Документ.ПриобретениеУслугПрочихАктивов.Расходы КАК ТаблицаРасходы
	|		ЛЕВОЕ СОЕДИНЕНИЕ ДанныеПоследнейКорректировки КАК ДанныеПоследнейКорректировки
	|		ПО ИСТИНА
	|ГДЕ
	|	ДанныеПоследнейКорректировки.Ссылка ЕСТЬ NULL 
	|	И ТаблицаРасходы.Ссылка = &ДокументОснование
	|";
	Возврат ТекстЗапроса;
	
КонецФункции

//++ НЕ УТ

Функция ТекстЗапросаПоИсходнымДаннымОтчетаПереработчика()
	
	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ТаблицаУслуги.НомерСтроки                                    КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(Справочник.НоменклатураКонтрагентов.ПустаяСсылка)   КАК НоменклатураПартнера,
	|	ТаблицаУслуги.Номенклатура                                   КАК Номенклатура,
	|	АналитикаНоменклатуры.Назначение                             КАК Назначение,
	|	АналитикаНоменклатуры.Характеристика                         КАК Характеристика,
	|	АналитикаНоменклатуры.Серия                                  КАК Серия,
	|	0                                                            КАК СтатусУказанияСерий,
	|	""""                                                         КАК Содержание,
	|	ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)   КАК Упаковка,
	|	ТаблицаУслуги.Количество                                     КАК КоличествоУпаковок,
	|	ТаблицаУслуги.Количество                                     КАК Количество,
	|	0                                                            КАК КоличествоПоРНПТ,
	|	ТаблицаУслуги.Цена                                           КАК Цена,
	|	ТаблицаУслуги.Сумма                                          КАК Сумма,
	|	ТаблицаУслуги.СтавкаНДС                                      КАК СтавкаНДС,
	|	ТаблицаУслуги.СуммаНДС                                       КАК СуммаНДС,
	|	ТаблицаУслуги.СуммаСНДС                                      КАК СуммаСНДС,
	|	ОтчетПереработчика2_5.ЗаказПереработчику                     КАК ЗаказПоставщику,
	|	ТаблицаУслуги.КодСтроки                                      КАК КодСтроки,
	|	ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)                     КАК Склад,
	|	ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка)                  КАК НомерГТД,
	|	ЗНАЧЕНИЕ(Справочник.КлассификаторТНВЭД.ПустаяСсылка)         КАК КодТНВЭД,
	|	ЗНАЧЕНИЕ(Справочник.СделкиСКлиентами.ПустаяСсылка)           КАК Сделка,
	|	ОтчетПереработчика2_5.Подразделение                          КАК Подразделение,
	|	ТаблицаУслуги.НомерГруппыЗатрат                              КАК НомерГруппыЗатрат,
	|	ТаблицаУслуги.СтатьяКалькуляции                              КАК СтатьяКалькуляции,
	|	ЛОЖЬ                                                         КАК СписатьНаРасходы,
	|	ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.ПустаяСсылка) КАК СтатьяРасходов,
	|	НЕОПРЕДЕЛЕНО                                                 КАК АналитикаРасходов,
	|	ОтчетПереработчика2_5.НаправлениеДеятельности                КАК НаправлениеДеятельности,
	|	ЗНАЧЕНИЕ(Справочник.НастройкиСчетовУчетаПрочихОпераций.ПустаяСсылка) КАК НастройкаСчетовУчета,
	|	НЕОПРЕДЕЛЕНО                                                 КАК АналитикаАктивовПассивов,
	|	НЕОПРЕДЕЛЕНО                                                 КАК АналитикаДоходов
	|ИЗ
	|	Документ.ОтчетПереработчика2_5.Услуги КАК ТаблицаУслуги
	|	
	|	ЛЕВОЕ СОЕДИНЕНИЕ ДанныеПоследнейКорректировки КАК ДанныеПоследнейКорректировки
	|	ПО ИСТИНА
	|	
	|	ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОтчетПереработчика2_5 КАК ОтчетПереработчика2_5
	|	ПО ОтчетПереработчика2_5.Ссылка = ТаблицаУслуги.Ссылка
	|	
	|	ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КлючиАналитикиУчетаНоменклатуры КАК АналитикаНоменклатуры
	|	ПО АналитикаНоменклатуры.Ссылка = ТаблицаУслуги.АналитикаУчетаНоменклатуры
	|
	|ГДЕ
	|	ДанныеПоследнейКорректировки.Ссылка ЕСТЬ NULL 
	|	И ТаблицаУслуги.Ссылка = &ДокументОснование
	|";
	Возврат ТекстЗапроса;
	
КонецФункции

//-- НЕ УТ

Функция ТекстЗапросаПоИсходнымДаннымКорректировокПервичногоДокумента()
	
	ТекстЗапроса = "
	|ВЫБРАТЬ ПЕРВЫЕ 1
	|	КорректировкаПриобретения.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ТипКорректировки КАК ТипКорректировки,
	|	КорректировкаПриобретения.ЦенаВключаетНДС КАК ЦенаВключаетНДС
	|ПОМЕСТИТЬ ДанныеПоследнейИсправительнойКорректировки
	|ИЗ
	|	Документ.КорректировкаПриобретения КАК КорректировкаПриобретения
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		РегистрСведений.РеестрДокументов КАК РеестрДокументовСторноИсправление
	|	ПО
	|		КорректировкаПриобретения.Ссылка = РеестрДокументовСторноИсправление.СторнируемыйДокумент
	|		И РеестрДокументовСторноИсправление.Проведен
	|		И НЕ РеестрДокументовСторноИсправление.ДополнительнаяЗапись
	|ГДЕ
	|	КорректировкаПриобретения.Проведен
	|	И КорректировкаПриобретения.Ссылка <> &ДокументСсылка
	|	И КорректировкаПриобретения.ДокументОснование = &ДокументОснование
	|	И КорректировкаПриобретения.МоментВремени < &ТекущийМоментВремени
	|	И КорректировкаПриобретения.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
	|	И РеестрДокументовСторноИсправление.Ссылка ЕСТЬ NULL
	|
	|УПОРЯДОЧИТЬ ПО
	|	КорректировкаПриобретения.МоментВремени УБЫВ
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	КорректировкаПриобретения.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ТипКорректировки КАК ТипКорректировки,
	|	КорректировкаПриобретения.ЦенаВключаетНДС КАК ЦенаВключаетНДС
	|ПОМЕСТИТЬ ДанныеПредыдущейКорректировки
	|ИЗ
	|	Документ.КорректировкаПриобретения КАК КорректировкаПриобретения
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РеестрДокументов КАК РеестрДокументовСторноИсправление
	|		ПО КорректировкаПриобретения.Ссылка = РеестрДокументовСторноИсправление.СторнируемыйДокумент
	|			И РеестрДокументовСторноИсправление.Проведен
	|			И НЕ РеестрДокументовСторноИсправление.ДополнительнаяЗапись
	|		ЛЕВОЕ СОЕДИНЕНИЕ ДанныеПоследнейИсправительнойКорректировки КАК ДанныеПоследнейИсправительнойКорректировки
	|		ПО (ИСТИНА)
	|ГДЕ
	|	КорректировкаПриобретения.Проведен
	|	И КорректировкаПриобретения.Ссылка <> &ДокументСсылка
	|	И КорректировкаПриобретения.ДокументОснование = &ДокументОснование
	|	И КорректировкаПриобретения.МоментВремени < &ТекущийМоментВремени
	|	И (ДанныеПоследнейИсправительнойКорректировки.МоментВремени ЕСТЬ NULL
	|			ИЛИ КорректировкаПриобретения.МоментВремени > ДанныеПоследнейИсправительнойКорректировки.МоментВремени)
	|	И КорректировкаПриобретения.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПоСогласованиюСторон)
	|	И РеестрДокументовСторноИсправление.Ссылка ЕСТЬ NULL
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
	|	КорректировкаПриобретения.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов,
	|	ЕСТЬNULL(ДанныеНоменклатуры.ВестиУчетПоГТД, ЛОЖЬ) КАК ВестиУчетПоГТД
	|	
	|ПОМЕСТИТЬ ВТТоварыПредыдущейКорректировки
	|ИЗ
	|	Документ.КорректировкаПриобретения.Товары КАК ТаблицаТовары
	|	
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеПредыдущейКорректировки КАК КорректировкаПриобретения
	|	ПО ТаблицаТовары.Ссылка = КорректировкаПриобретения.Ссылка
	|	
	|	ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК ДанныеНоменклатуры
	|	ПО ТаблицаТовары.Номенклатура = ДанныеНоменклатуры.Ссылка
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
	|	КорректировкаПриобретения.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(Справочник.НоменклатураКонтрагентов.ПустаяСсылка) КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	0									 КАК КоличествоУпаковок,
	|	0									 КАК Количество,
	|	0									 КАК КоличествоПоРНПТ,
	|	0									 КАК Цена,
	|	0									 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС				 КАК СтавкаНДС,
	|	0									 КАК СуммаНДС,
	|	0									 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов,
	|	ЕСТЬNULL(ДанныеНоменклатуры.ВестиУчетПоГТД, ЛОЖЬ) КАК ВестиУчетПоГТД
	|ИЗ
	|	Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаТовары
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеПредыдущейКорректировки КАК КорректировкаПриобретения
	|		ПО ТаблицаТовары.Ссылка = КорректировкаПриобретения.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК ДанныеНоменклатуры
	|		ПО ТаблицаТовары.Номенклатура = ДанныеНоменклатуры.Ссылка
	|ГДЕ
	|	НЕ (ТаблицаТовары.Номенклатура, ТаблицаТовары.Характеристика, ТаблицаТовары.Содержание, ТаблицаТовары.Серия, ТаблицаТовары.Упаковка, ТаблицаТовары.Склад, ТаблицаТовары.НомерГТД, ТаблицаТовары.КодТНВЭД, ТаблицаТовары.Подразделение, ТаблицаТовары.СтатьяРасходов, ТаблицаТовары.АналитикаРасходов) В
	|				(ВЫБРАТЬ
	|					ТоварыПредыдущейКорректировки.Номенклатура,
	|					ТоварыПредыдущейКорректировки.Характеристика,
	|					ТоварыПредыдущейКорректировки.Содержание,
	|					ТоварыПредыдущейКорректировки.Серия,
	|					ТоварыПредыдущейКорректировки.Упаковка,
	|					ТоварыПредыдущейКорректировки.Склад,
	|					ТоварыПредыдущейКорректировки.НомерГТД,
	|					ТоварыПредыдущейКорректировки.КодТНВЭД,
	|					ТоварыПредыдущейКорректировки.Подразделение,
	|					ТоварыПредыдущейКорректировки.СтатьяРасходов,
	|					ТоварыПредыдущейКорректировки.АналитикаРасходов
	|				ИЗ
	|					Документ.КорректировкаПриобретения.Товары КАК ТоварыПредыдущейКорректировки
	|				ГДЕ
	|					ТоварыПредыдущейКорректировки.Ссылка = ТаблицаТовары.Ссылка)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
	|	КорректировкаПриобретения.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов,
	|	ЕСТЬNULL(ДанныеНоменклатуры.ВестиУчетПоГТД, ЛОЖЬ) КАК ВестиУчетПоГТД
	|	
	|ПОМЕСТИТЬ ВТТоварыПоследнейИсправительнойКорректировки
	|ИЗ
	|	Документ.КорректировкаПриобретения.Товары КАК ТаблицаТовары
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеПоследнейИсправительнойКорректировки КАК КорректировкаПриобретения
	|		ПО ТаблицаТовары.Ссылка = КорректировкаПриобретения.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК ДанныеНоменклатуры
	|		ПО ТаблицаТовары.Номенклатура = ДанныеНоменклатуры.Ссылка
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
	|	КорректировкаПриобретения.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ЗНАЧЕНИЕ(Справочник.НоменклатураКонтрагентов.ПустаяСсылка) КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	0									 КАК КоличествоУпаковок,
	|	0									 КАК Количество,
	|	0									 КАК КоличествоПоРНПТ,
	|	0									 КАК Цена,
	|	0									 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС				 КАК СтавкаНДС,
	|	0									 КАК СуммаНДС,
	|	0									 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов,
	|	ЕСТЬNULL(ДанныеНоменклатуры.ВестиУчетПоГТД, ЛОЖЬ) КАК ВестиУчетПоГТД
	|ИЗ
	|	Документ.КорректировкаПриобретения.Расхождения КАК ТаблицаТовары
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеПоследнейИсправительнойКорректировки КАК КорректировкаПриобретения
	|		ПО ТаблицаТовары.Ссылка = КорректировкаПриобретения.Ссылка
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК ДанныеНоменклатуры
	|		ПО ТаблицаТовары.Номенклатура = ДанныеНоменклатуры.Ссылка
	|ГДЕ
	|	НЕ (ТаблицаТовары.Номенклатура, ТаблицаТовары.Характеристика, ТаблицаТовары.Содержание, ТаблицаТовары.Серия, ТаблицаТовары.Упаковка, ТаблицаТовары.Склад, ТаблицаТовары.НомерГТД, ТаблицаТовары.КодТНВЭД, ТаблицаТовары.Подразделение, ТаблицаТовары.СтатьяРасходов, ТаблицаТовары.АналитикаРасходов) В
	|				(ВЫБРАТЬ
	|					ТоварыПредыдущейКорректировки.Номенклатура,
	|					ТоварыПредыдущейКорректировки.Характеристика,
	|					ТоварыПредыдущейКорректировки.Содержание,
	|					ТоварыПредыдущейКорректировки.Серия,
	|					ТоварыПредыдущейКорректировки.Упаковка,
	|					ТоварыПредыдущейКорректировки.Склад,
	|					ТоварыПредыдущейКорректировки.НомерГТД,
	|					ТоварыПредыдущейКорректировки.КодТНВЭД,
	|					ТоварыПредыдущейКорректировки.Подразделение,
	|					ТоварыПредыдущейКорректировки.СтатьяРасходов,
	|					ТоварыПредыдущейКорректировки.АналитикаРасходов
	|				ИЗ
	|					Документ.КорректировкаПриобретения.Товары КАК ТоварыПредыдущейКорректировки
	|				ГДЕ
	|					ТоварыПредыдущейКорректировки.Ссылка = ТаблицаТовары.Ссылка)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	ТаблицаТовары.МоментВремени КАК МоментВремени,
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ВТТоварыПредыдущейКорректировкиСГТД_1
	|ИЗ
	|	ВТТоварыПредыдущейКорректировки КАК ТаблицаТовары
	|ГДЕ
	|	(НЕ ТаблицаТовары.ВестиУчетПоГТД
	|			ИЛИ ТаблицаТовары.НомерГТД <> ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка))
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	ТаблицаТовары.МоментВремени КАК МоментВремени,
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ВТТоварыПредыдущейКорректировкиСГТД_3
	|ИЗ
	|	ВТТоварыПредыдущейКорректировкиСГТД_1 КАК ТаблицаТовары
	|ГДЕ
	|	ТаблицаТовары.Ссылка В
	|			(ВЫБРАТЬ ПЕРВЫЕ 1
	|				ТоварыПредыдущейКорректировки.Ссылка
	|			ИЗ
	|				ВТТоварыПредыдущейКорректировкиСГТД_1 КАК ТоварыПредыдущейКорректировки
	|			ГДЕ
	|				ТоварыПредыдущейКорректировки.Номенклатура = ТаблицаТовары.Номенклатура
	|				И ТоварыПредыдущейКорректировки.Характеристика = ТаблицаТовары.Характеристика
	|				И ТоварыПредыдущейКорректировки.Содержание = ТаблицаТовары.Содержание
	|				И ТоварыПредыдущейКорректировки.Серия = ТаблицаТовары.Серия
	|				И ТоварыПредыдущейКорректировки.Упаковка = ТаблицаТовары.Упаковка
	|				И ТоварыПредыдущейКорректировки.Склад = ТаблицаТовары.Склад
	|				И ТоварыПредыдущейКорректировки.НомерГТД = ТаблицаТовары.НомерГТД
	|				И ТоварыПредыдущейКорректировки.КодТНВЭД = ТаблицаТовары.КодТНВЭД
	|				И ТоварыПредыдущейКорректировки.Подразделение = ТаблицаТовары.Подразделение
	|				И ТоварыПредыдущейКорректировки.СтатьяРасходов = ТаблицаТовары.СтатьяРасходов
	|				И ТоварыПредыдущейКорректировки.АналитикаРасходов = ТаблицаТовары.АналитикаРасходов
	|			УПОРЯДОЧИТЬ ПО
	|				ТоварыПредыдущейКорректировки.МоментВремени УБЫВ)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ТипКорректировки		 КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки						 КАК НомерСтроки,
	|	КорректировкаПриобретения.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ЕСТЬNULL(ТаблицаТовары.АналитикаУчетаНоменклатуры.Номенклатура, ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)) КАК Номенклатура,
	|	КорректировкаПриобретения.Назначение			 КАК Назначение,
	|	ЕСТЬNULL(ТаблицаТовары.АналитикаУчетаНоменклатуры.Характеристика, ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)) КАК Характеристика,
	|	КорректировкаПриобретения.Серия				 	 КАК Серия,
	|	КорректировкаПриобретения.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	КорректировкаПриобретения.Содержание		 	 КАК Содержание,
	|	КорректировкаПриобретения.Упаковка			 	 КАК Упаковка,
	|	КорректировкаПриобретения.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество						 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ					 КАК КоличествоПоРНПТ,
	|	ВЫБОР
	|		КОГДА КорректировкаПриобретения.ЦенаВключаетНДС
	|				И ТаблицаТовары.СуммаСНДС > 0
	|				И ТаблицаТовары.Количество > 0
	|			ТОГДА ТаблицаТовары.СуммаСНДС / ТаблицаТовары.Количество
	|		КОГДА НЕ КорректировкаПриобретения.ЦенаВключаетНДС
	|				И ТаблицаТовары.СуммаСНДС - ТаблицаТовары.СуммаНДС > 0
	|				И ТаблицаТовары.Количество > 0
	|			ТОГДА (ТаблицаТовары.СуммаСНДС - ТаблицаТовары.СуммаНДС) / ТаблицаТовары.Количество
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК Цена,
	|	ВЫБОР
	|		КОГДА КорректировкаПриобретения.ЦенаВключаетНДС
	|			ТОГДА ТаблицаТовары.СуммаСНДС
	|		ИНАЧЕ ТаблицаТовары.СуммаСНДС - ТаблицаТовары.СуммаНДС
	|	КОНЕЦ КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС							 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС							 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС							 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику					 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки							 КАК КодСтроки,
	|	КорректировкаПриобретения.Склад					 КАК Склад,
	|	ТаблицаТовары.НомерГТД							 КАК НомерГТД,
	|	КорректировкаПриобретения.КодТНВЭД				 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка							 КАК Сделка,
	|	КорректировкаПриобретения.Подразделение			 КАК Подразделение,
	|	КорректировкаПриобретения.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	КорректировкаПриобретения.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	КорректировкаПриобретения.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	КорректировкаПриобретения.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ВТТоварыПредыдущейКорректировкиСГТД_2
	|ИЗ
	|	Документ.КорректировкаПриобретения.ВидыЗапасов КАК ТаблицаТовары
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТТоварыПредыдущейКорректировки КАК КорректировкаПриобретения
	|		ПО (КорректировкаПриобретения.Ссылка = ТаблицаТовары.Ссылка)
	|			И (КорректировкаПриобретения.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
	|				ИЛИ КорректировкаПриобретения.Номенклатура = ТаблицаТовары.АналитикаУчетаНоменклатуры.Номенклатура)
	|			И (КорректировкаПриобретения.Характеристика = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
	|				ИЛИ КорректировкаПриобретения.Характеристика = ТаблицаТовары.АналитикаУчетаНоменклатуры.Характеристика)
	|			И (КорректировкаПриобретения.Серия = ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|				ИЛИ КорректировкаПриобретения.Серия = ТаблицаТовары.АналитикаУчетаНоменклатуры.Серия)
	|			И (КорректировкаПриобретения.Подразделение = ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка)
	|				ИЛИ КорректировкаПриобретения.Подразделение = ТаблицаТовары.АналитикаУчетаНоменклатуры.Подразделение)
	|			И (КорректировкаПриобретения.ЗаказПоставщику = ТаблицаТовары.ЗаказПоставщику)
	|			И (КорректировкаПриобретения.Сделка = ТаблицаТовары.Сделка)
	|ГДЕ
	|	КорректировкаПриобретения.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|	И КорректировкаПриобретения.ВестиУчетПоГТД
	|	И КорректировкаПриобретения.НомерГТД = ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка)
	|	И КорректировкаПриобретения.Количество > 0
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	ТаблицаТовары.МоментВремени КАК МоментВремени,
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ВТТоварыПредыдущейКорректировкиСГТД_4
	|ИЗ
	|	ВТТоварыПредыдущейКорректировкиСГТД_2 КАК ТаблицаТовары
	|ГДЕ
	|	ТаблицаТовары.Ссылка В
	|			(ВЫБРАТЬ ПЕРВЫЕ 1
	|				ТоварыПредыдущейКорректировки.Ссылка
	|			ИЗ
	|				ВТТоварыПредыдущейКорректировкиСГТД_2 КАК ТоварыПредыдущейКорректировки
	|			ГДЕ
	|				ТоварыПредыдущейКорректировки.Номенклатура = ТаблицаТовары.Номенклатура
	|				И ТоварыПредыдущейКорректировки.Характеристика = ТаблицаТовары.Характеристика
	|				И ТоварыПредыдущейКорректировки.Содержание = ТаблицаТовары.Содержание
	|				И ТоварыПредыдущейКорректировки.Серия = ТаблицаТовары.Серия
	|				И ТоварыПредыдущейКорректировки.Упаковка = ТаблицаТовары.Упаковка
	|				И ТоварыПредыдущейКорректировки.Склад = ТаблицаТовары.Склад
	|				И ТоварыПредыдущейКорректировки.НомерГТД = ТаблицаТовары.НомерГТД
	|				И ТоварыПредыдущейКорректировки.КодТНВЭД = ТаблицаТовары.КодТНВЭД
	|				И ТоварыПредыдущейКорректировки.Подразделение = ТаблицаТовары.Подразделение
	|				И ТоварыПредыдущейКорректировки.СтатьяРасходов = ТаблицаТовары.СтатьяРасходов
	|				И ТоварыПредыдущейКорректировки.АналитикаРасходов = ТаблицаТовары.АналитикаРасходов
	|			УПОРЯДОЧИТЬ ПО
	|				ТоварыПредыдущейКорректировки.МоментВремени УБЫВ)
	|	И ТаблицаТовары.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ВТТоварыПредыдущейКорректировкиИтог
	|ИЗ
	|	ВТТоварыПредыдущейКорректировкиСГТД_3 КАК ТаблицаТовары
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ИЗ
	|	ВТТоварыПредыдущейКорректировкиСГТД_4 КАК ТаблицаТовары
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТТоварыПредыдущейКорректировкиСГТД_3 КАК ТоварыПредыдущейКорректировки
	|		ПО ТоварыПредыдущейКорректировки.Номенклатура = ТаблицаТовары.Номенклатура
	|			И ТоварыПредыдущейКорректировки.Характеристика = ТаблицаТовары.Характеристика
	|			И ТоварыПредыдущейКорректировки.Содержание = ТаблицаТовары.Содержание
	|			И ТоварыПредыдущейКорректировки.Серия = ТаблицаТовары.Серия
	|			И ТоварыПредыдущейКорректировки.Упаковка = ТаблицаТовары.Упаковка
	|			И ТоварыПредыдущейКорректировки.Склад = ТаблицаТовары.Склад
	|			И ТоварыПредыдущейКорректировки.НомерГТД = ТаблицаТовары.НомерГТД
	|			И ТоварыПредыдущейКорректировки.КодТНВЭД = ТаблицаТовары.КодТНВЭД
	|			И ТоварыПредыдущейКорректировки.Подразделение = ТаблицаТовары.Подразделение
	|			И ТоварыПредыдущейКорректировки.СтатьяРасходов = ТаблицаТовары.СтатьяРасходов
	|			И ТоварыПредыдущейКорректировки.АналитикаРасходов = ТаблицаТовары.АналитикаРасходов
	|			И ТаблицаТовары.МоментВремени >= ТоварыПредыдущейКорректировки.МоментВремени
	|ГДЕ
	|	ТаблицаТовары.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|	И ТоварыПредыдущейКорректировки.Количество > 0
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ИЗ
	|	ВТТоварыПредыдущейКорректировкиСГТД_4 КАК ТаблицаТовары
	|ГДЕ
	|	ТаблицаТовары.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|	И НЕ (ТаблицаТовары.Номенклатура, ТаблицаТовары.Характеристика, ТаблицаТовары.Содержание, ТаблицаТовары.Серия, ТаблицаТовары.Упаковка, ТаблицаТовары.Склад, ТаблицаТовары.НомерГТД, ТаблицаТовары.КодТНВЭД, ТаблицаТовары.Подразделение, ТаблицаТовары.СтатьяРасходов, ТаблицаТовары.АналитикаРасходов) В
	|				(ВЫБРАТЬ
	|					ТоварыПредыдущейКорректировки.Номенклатура,
	|					ТоварыПредыдущейКорректировки.Характеристика,
	|					ТоварыПредыдущейКорректировки.Содержание,
	|					ТоварыПредыдущейКорректировки.Серия,
	|					ТоварыПредыдущейКорректировки.Упаковка,
	|					ТоварыПредыдущейКорректировки.Склад,
	|					ТоварыПредыдущейКорректировки.НомерГТД,
	|					ТоварыПредыдущейКорректировки.КодТНВЭД,
	|					ТоварыПредыдущейКорректировки.Подразделение,
	|					ТоварыПредыдущейКорректировки.СтатьяРасходов,
	|					ТоварыПредыдущейКорректировки.АналитикаРасходов
	|				ИЗ
	|					ВТТоварыПредыдущейКорректировкиСГТД_3 КАК ТоварыПредыдущейКорректировки)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	ТаблицаТовары.МоментВремени КАК МоментВремени,
	|	ТаблицаТовары.ТипКорректировки КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ВТТоварыИсправительнойКорректировкиСГТД
	|ИЗ
	|	ВТТоварыПоследнейИсправительнойКорректировки КАК ТаблицаТовары
	|ГДЕ
	|	(НЕ ТаблицаТовары.ВестиУчетПоГТД
	|			ИЛИ ТаблицаТовары.НомерГТД <> ЗНАЧЕНИЕ(Справочник.НомераГТД.ПустаяСсылка))
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТовары.Ссылка КАК Ссылка,
	|	КорректировкаПриобретения.МоментВремени КАК МоментВремени,
	|	КорректировкаПриобретения.ТипКорректировки		 КАК ТипКорректировки,
	|	ТаблицаТовары.НомерСтроки						 КАК НомерСтроки,
	|	КорректировкаПриобретения.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	КорректировкаПриобретения.Номенклатура			 КАК Номенклатура,
	|	КорректировкаПриобретения.Назначение			 КАК Назначение,
	|	КорректировкаПриобретения.Характеристика		 КАК Характеристика,
	|	КорректировкаПриобретения.Серия				 	 КАК Серия,
	|	КорректировкаПриобретения.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	КорректировкаПриобретения.Содержание		 	 КАК Содержание,
	|	КорректировкаПриобретения.Упаковка			 	 КАК Упаковка,
	|	КорректировкаПриобретения.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество						 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ					 КАК КоличествоПоРНПТ,
	|	ВЫБОР
	|		КОГДА КорректировкаПриобретения.ЦенаВключаетНДС
	|				И ТаблицаТовары.СуммаСНДС > 0
	|				И ТаблицаТовары.Количество > 0
	|			ТОГДА ТаблицаТовары.СуммаСНДС / ТаблицаТовары.Количество
	|		КОГДА НЕ КорректировкаПриобретения.ЦенаВключаетНДС
	|				И ТаблицаТовары.СуммаСНДС - ТаблицаТовары.СуммаНДС > 0
	|				И ТаблицаТовары.Количество > 0
	|			ТОГДА (ТаблицаТовары.СуммаСНДС - ТаблицаТовары.СуммаНДС) / ТаблицаТовары.Количество
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК Цена,
	|	ВЫБОР
	|		КОГДА КорректировкаПриобретения.ЦенаВключаетНДС
	|			ТОГДА ТаблицаТовары.СуммаСНДС
	|		ИНАЧЕ ТаблицаТовары.СуммаСНДС - ТаблицаТовары.СуммаНДС
	|	КОНЕЦ КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС							 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС							 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС							 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику					 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки							 КАК КодСтроки,
	|	КорректировкаПриобретения.Склад					 КАК Склад,
	|	ТаблицаТовары.НомерГТД							 КАК НомерГТД,
	|	КорректировкаПриобретения.КодТНВЭД				 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка							 КАК Сделка,
	|	КорректировкаПриобретения.Подразделение			 КАК Подразделение,
	|	КорректировкаПриобретения.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	КорректировкаПриобретения.СтатьяКалькуляции      КАК СтатьяКалькуляции,

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

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ПОМЕСТИТЬ ИсходныеДанные
	|ИЗ
	|	ВТТоварыИсправительнойКорректировкиСГТД КАК ТаблицаТовары
	|ГДЕ
	|	ВЫБОР
	|			КОГДА ТаблицаТовары.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов)
	|				ТОГДА НЕ (ТаблицаТовары.Содержание, ТаблицаТовары.Подразделение, ТаблицаТовары.СтатьяРасходов, ТаблицаТовары.АналитикаРасходов) В
	|								(ВЫБРАТЬ
	|									ТоварыПредыдущейКорректировки.Содержание,
	|									ТоварыПредыдущейКорректировки.Подразделение,
	|									ТоварыПредыдущейКорректировки.СтатьяРасходов,
	|									ТоварыПредыдущейКорректировки.АналитикаРасходов
	|								ИЗ
	|									ВТТоварыПредыдущейКорректировкиИтог КАК ТоварыПредыдущейКорректировки)
	|						И ТаблицаТовары.Сумма > 0
	|			ИНАЧЕ НЕ (ТаблицаТовары.Номенклатура, ТаблицаТовары.Характеристика, ТаблицаТовары.Содержание, ТаблицаТовары.Серия, ТаблицаТовары.Упаковка, ТаблицаТовары.Склад, ТаблицаТовары.НомерГТД, ТаблицаТовары.КодТНВЭД, ТаблицаТовары.Подразделение, ТаблицаТовары.СтатьяРасходов, ТаблицаТовары.АналитикаРасходов) В
	|							(ВЫБРАТЬ
	|								ТоварыПредыдущейКорректировки.Номенклатура,
	|								ТоварыПредыдущейКорректировки.Характеристика,
	|								ТоварыПредыдущейКорректировки.Содержание,
	|								ТоварыПредыдущейКорректировки.Серия,
	|								ТоварыПредыдущейКорректировки.Упаковка,
	|								ТоварыПредыдущейКорректировки.Склад,
	|								ТоварыПредыдущейКорректировки.НомерГТД,
	|								ТоварыПредыдущейКорректировки.КодТНВЭД,
	|								ТоварыПредыдущейКорректировки.Подразделение,
	|								ТоварыПредыдущейКорректировки.СтатьяРасходов,
	|								ТоварыПредыдущейКорректировки.АналитикаРасходов
	|							ИЗ
	|								ВТТоварыПредыдущейКорректировкиИтог КАК ТоварыПредыдущейКорректировки)
	|					И ТаблицаТовары.Количество > 0
	|		КОНЕЦ
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТовары.НомерСтроки		 	 КАК НомерСтроки,
	|	ТаблицаТовары.НоменклатураПартнера	 КАК НоменклатураПартнера,
	|	ТаблицаТовары.Номенклатура		 	 КАК Номенклатура,
	|	ТаблицаТовары.Назначение			 КАК Назначение,
	|	ТаблицаТовары.Характеристика	 	 КАК Характеристика,
	|	ТаблицаТовары.Серия				 	 КАК Серия,
	|	ТаблицаТовары.СтатусУказанияСерий	 КАК СтатусУказанияСерий,
	|	ТаблицаТовары.Содержание		 	 КАК Содержание,
	|	ТаблицаТовары.Упаковка			 	 КАК Упаковка,
	|	ТаблицаТовары.КоличествоУпаковок 	 КАК КоличествоУпаковок,
	|	ТаблицаТовары.Количество		 	 КАК Количество,
	|	ТаблицаТовары.КоличествоПоРНПТ	 	 КАК КоличествоПоРНПТ,
	|	ТаблицаТовары.Цена				 	 КАК Цена,
	|	ТаблицаТовары.Сумма				 	 КАК Сумма,
	|	ТаблицаТовары.СтавкаНДС			 	 КАК СтавкаНДС,
	|	ТаблицаТовары.СуммаНДС			 	 КАК СуммаНДС,
	|	ТаблицаТовары.СуммаСНДС			 	 КАК СуммаСНДС,
	|	ТаблицаТовары.ЗаказПоставщику	 	 КАК ЗаказПоставщику,
	|	ТаблицаТовары.КодСтроки			 	 КАК КодСтроки,
	|	ТаблицаТовары.Склад				 	 КАК Склад,
	|	ТаблицаТовары.НомерГТД			 	 КАК НомерГТД,
	|	ТаблицаТовары.КодТНВЭД			 	 КАК КодТНВЭД,
	|	ТаблицаТовары.Сделка			 	 КАК Сделка,
	|	ТаблицаТовары.Подразделение			 КАК Подразделение,
	|	ТаблицаТовары.НомерГруппыЗатрат      КАК НомерГруппыЗатрат,
	//++ НЕ УТ
	|	ТаблицаТовары.СтатьяКалькуляции      КАК СтатьяКалькуляции,

	//-- НЕ УТ
	|	ТаблицаТовары.СписатьНаРасходы		 КАК СписатьНаРасходы,
	|	ТаблицаТовары.СтатьяРасходов		 КАК СтатьяРасходов,
	|	ТаблицаТовары.АналитикаРасходов		 КАК АналитикаРасходов,
	|	ТаблицаТовары.НаправлениеДеятельности КАК НаправлениеДеятельности,
	//++ НЕ УТ
	|	ТаблицаТовары.НастройкаСчетовУчета	 КАК НастройкаСчетовУчета,
	//-- НЕ УТ
	|	ТаблицаТовары.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
	|	ТаблицаТовары.АналитикаДоходов КАК АналитикаДоходов
	|ИЗ
	|	ВТТоварыПредыдущейКорректировкиИтог КАК ТаблицаТовары
	|ГДЕ
	|	(ТаблицаТовары.ТипКорректировки = ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|				И ТаблицаТовары.Количество > 0
	|			ИЛИ ТаблицаТовары.ТипКорректировки <> ЗНАЧЕНИЕ(Перечисление.ТипыКорректировки.КорректировкаДоВводаОстатковТоваровИУслуг)
	|				И ТаблицаТовары.Сумма > 0)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ДанныеПредыдущейКорректировки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПредыдущейКорректировки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПоследнейИсправительнойКорректировки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПредыдущейКорректировкиСГТД_1
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПредыдущейКорректировкиСГТД_3
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПредыдущейКорректировкиСГТД_2
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПредыдущейКорректировкиСГТД_4
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыПредыдущейКорректировкиИтог
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ВТТоварыИсправительнойКорректировкиСГТД";
	
	Возврат ТекстЗапроса;
	
КонецФункции

// Возвращает таблицу сумм взаиморасчетов с разбивкой на тару/ не тару и с разбивкой по заказам.
// 
// Параметры:
//  СсылкаОбъект - ДокументСсылка.КорректировкаПриобретения - Документ, по которому нужно получить данные.
//  ЗначенияРеквизитов - Структура
// 
// Возвращаемое значение:
//  ТаблицаЗначений - ТаблицаЗначений:
// 		* Заказ - ДокументСсылка - Заказ
// 		* Дата - Дата - Дата документа
// 		* ДатаСогласования - Дата - Дата согласования (для заказов)
// 		* ДатаОтгрузки - Дата - Дата плановой отгрузки
// 		* СуммаВзаиморасчетов - Число - Сумма взаиморасчетов по строке
// 		* СуммаВзаиморасчетовПоТаре - Число - Сумма взаиморасчетов по таре по строке
Функция СуммыПоЗаказам(СсылкаОбъект, ЗначенияРеквизитов = Неопределено) Экспорт
	
	Запрос = Новый Запрос;
	
	Запрос.Текст = "
	|ВЫБРАТЬ
	|	Товары.СуммаСНДС           КАК Сумма,
	|	Товары.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	ВЫРАЗИТЬ(Товары.Номенклатура КАК Справочник.Номенклатура) КАК Номенклатура,
	|	&ВернутьМногооборотнуюТару КАК ВернутьМногооборотнуюТару,
	|	&ТребуетсяЗалогЗаТару      КАК ТребуетсяЗалогЗаТару
	|ПОМЕСТИТЬ ВТТовары
	|ИЗ &ТаблицаЗначений КАК Товары
	|ГДЕ &УсловиеСсылка
	|;
	|ВЫБРАТЬ 
	|	Неопределено                                     КАК Заказ,
	|	ДАТАВРЕМЯ(1,1,1)                                 КАК ДатаЗаказа,
	|	ДАТАВРЕМЯ(1,1,1)                                 КАК ДатаСогласования,
	|	ЛОЖЬ                                             КАК СверхЗаказа,
	|	СУММА(ВложенныйЗапрос.СуммаПлатежа)              КАК СуммаПлатежа,
	|	СУММА(ВложенныйЗапрос.СуммаВзаиморасчетов)       КАК СуммаВзаиморасчетов,
	|	СУММА(ВложенныйЗапрос.СуммаЗалогаЗаТару)         КАК СуммаЗалогаЗаТару,
	|	СУММА(ВложенныйЗапрос.СуммаВзаиморасчетовПоТаре) КАК СуммаВзаиморасчетовПоТаре
	|ИЗ (ВЫБРАТЬ
	|		ВЫБОР
	|			КОГДА (Товары.Номенклатура.ТипНоменклатуры <> ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|					ИЛИ НЕ Товары.ВернутьМногооборотнуюТару)
	|					И Товары.Сумма > 0
	|				ТОГДА Товары.Сумма
	|			ИНАЧЕ 0 
	|		КОНЕЦ                             КАК СуммаПлатежа,
	|		ВЫБОР
	|			КОГДА (Товары.Номенклатура.ТипНоменклатуры <> ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|					ИЛИ НЕ Товары.ВернутьМногооборотнуюТару)
	|					И Товары.СуммаВзаиморасчетов > 0
	|				ТОГДА Товары.СуммаВзаиморасчетов
	|			ИНАЧЕ 0 
	|		КОНЕЦ                             КАК СуммаВзаиморасчетов,
	|		ВЫБОР 
	|			КОГДА Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|				И Товары.ТребуетсяЗалогЗаТару
	|				И Товары.Сумма > 0
	|				ТОГДА Товары.Сумма
	|			ИНАЧЕ 0 
	|		КОНЕЦ                            КАК СуммаЗалогаЗаТару,
	|		ВЫБОР 
	|			КОГДА Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
	|				И Товары.ТребуетсяЗалогЗаТару
	|				И Товары.СуммаВзаиморасчетов > 0
	|				ТОГДА Товары.СуммаВзаиморасчетов
	|			ИНАЧЕ 0 
	|		КОНЕЦ                            КАК СуммаВзаиморасчетовПоТаре
	|	ИЗ ВТТовары КАК Товары) КАК ВложенныйЗапрос
	|";
	
	Если ЗначенияРеквизитов = Неопределено Тогда
		ВидКорректировки = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СсылкаОбъект, "ВидКорректировки");
		Запрос.УстановитьПараметр("Ссылка", СсылкаОбъект);
		
		Если ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПриобретенияУвеличениеЗадолженностиСводно
			ИЛИ ВидКорректировки = Перечисления.ХозяйственныеОперации.КорректировкаПриобретенияУменьшениеЗадолженностиСводно Тогда
				
			Запрос.Текст = "
			|ВЫБРАТЬ 
			|	Неопределено                                     КАК Заказ,
			|	ДАТАВРЕМЯ(1,1,1)                                 КАК ДатаЗаказа,
			|	ДАТАВРЕМЯ(1,1,1)                                 КАК ДатаСогласования,
			|	ЛОЖЬ                                             КАК СверхЗаказа,
			|	СУММА(ВЫБОР 
			|		КОГДА КорректировкаЗадолженности.СуммаСНДС > 0
			|			ТОГДА КорректировкаЗадолженности.СуммаСНДС
			|		ИНАЧЕ 0 
			|	КОНЕЦ)                                           КАК СуммаПлатежа,
			|	СУММА(ВЫБОР 
			|		КОГДА КорректировкаЗадолженности.СуммаВзаиморасчетов > 0
			|			ТОГДА КорректировкаЗадолженности.СуммаВзаиморасчетов
			|		ИНАЧЕ 0 
			|	КОНЕЦ)                                           КАК СуммаВзаиморасчетов,
			|	0                                                КАК СуммаЗалогаЗаТару,
			|	0                                                КАК СуммаВзаиморасчетовПоТаре
			|ИЗ 
			|	Документ.КорректировкаПриобретения.КорректировкаЗадолженности КАК КорректировкаЗадолженности
			|ГДЕ
			|	КорректировкаЗадолженности.Ссылка = &Ссылка";
			
		Иначе
			
			Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ТаблицаЗначений", "Документ.КорректировкаПриобретения.Расхождения");
			Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ВернутьМногооборотнуюТару", "ВЫБОР
			|КОГДА Товары.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
			|	ТОГДА ЛОЖЬ
			|ИНАЧЕ
			|	ЕСТЬNULL(Товары.Ссылка.ДокументОснование.ВернутьМногооборотнуюТару,ЛОЖЬ)");
			Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ТребуетсяЗалогЗаТару", "ВЫБОР
			|КОГДА Товары.Ссылка.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент
			|	ТОГДА ЛОЖЬ
			|ИНАЧЕ
			|	ЕСТЬNULL(Товары.Ссылка.ДокументОснование.ТребуетсяЗалогЗаТару,ЛОЖЬ)");
			Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеСсылка", "Товары.Ссылка = &Ссылка");
		КонецЕсли;
	Иначе
		
		Для Каждого КлючЗначение Из ЗначенияРеквизитов Цикл
			Запрос.УстановитьПараметр(КлючЗначение.Ключ, КлючЗначение.Значение);
		КонецЦикла;
		
		Если ЗначенияРеквизитов.ТаблицаЗначений.Количество() = 0
			Или НЕ ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ЗначенияРеквизитов.ТаблицаЗначений[0],"Номенклатура") Тогда
			Запрос.Текст = "
			|ВЫБРАТЬ
			|	Товары.СуммаСНДС           КАК Сумма,
			|	Товары.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов
			|ПОМЕСТИТЬ ВТТовары
			|ИЗ &ТаблицаЗначений КАК Товары
			|;
			|ВЫБРАТЬ 
			|	Неопределено                                     КАК Заказ,
			|	ДАТАВРЕМЯ(1,1,1)                                 КАК ДатаЗаказа,
			|	ДАТАВРЕМЯ(1,1,1)                                 КАК ДатаСогласования,
			|	ЛОЖЬ                                             КАК СверхЗаказа,
			|	СУММА(ВЫБОР 
			|		КОГДА ВТТовары.Сумма > 0
			|			ТОГДА ВТТовары.Сумма
			|		ИНАЧЕ 0 
			|	КОНЕЦ)                                           КАК СуммаПлатежа,
			|	СУММА(ВЫБОР 
			|		КОГДА ВТТовары.СуммаВзаиморасчетов > 0
			|			ТОГДА ВТТовары.СуммаВзаиморасчетов
			|		ИНАЧЕ 0 
			|	КОНЕЦ)                                           КАК СуммаВзаиморасчетов,
			|	0                                                КАК СуммаЗалогаЗаТару,
			|	0                                                КАК СуммаВзаиморасчетовПоТаре
			|ИЗ ВТТовары КАК ВТТовары";
		Иначе
			Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеСсылка", "ИСТИНА");
		КонецЕсли;
	КонецЕсли;
	
	Возврат Запрос.Выполнить().Выгрузить();
	
КонецФункции

#Область ПроверкаЗаполненияДокументаДоВводаОстатков

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

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

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

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

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

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

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

Функция ТекстЗапросаПроверкиЗаполненияКоличества()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	ВЫБОР
	|		КОГДА ТаблицаТоваров.Количество = 0
	|				И ТаблицаТоваров.КоличествоУпаковок <> 0
	|			ТОГДА ""ОшибкаПересчетаКоличества""
	|		ИНАЧЕ ""НеУказаноКоличествоУпаковок""
	|	КОНЕЦ						КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	&ЭтоКорректировкаДоВводаОстатковТоваровИУслуг
	|	И ((ТаблицаТоваров.Количество = 0
	|		И ТаблицаТоваров.КоличествоУпаковок <> 0)
	|	ИЛИ (НЕ (ТаблицаТоваров.КоличествоПосле = 0
	|			И ТаблицаТоваров.КоличествоУпаковокПосле <> 0)
	|		И ((ТаблицаТоваров.Количество = 0
	|				И ТаблицаТоваров.КоличествоПосле = 0)
	|			ИЛИ (ТаблицаТоваров.КоличествоУпаковок = 0
	|				И ТаблицаТоваров.КоличествоУпаковокПосле = 0))
	|		ИЛИ (ТаблицаТоваров.КоличествоУпаковок = 0
	|			И ТаблицаТоваров.Цена > 0)))
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	ВЫБОР
	|		КОГДА ТаблицаТоваров.КоличествоПосле = 0
	|				И ТаблицаТоваров.КоличествоУпаковокПосле <> 0
	|			ТОГДА ""ОшибкаПересчетаКоличестваПосле""
	|		ИНАЧЕ ""НеУказаноКоличествоУпаковокПосле""
	|	КОНЕЦ						КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	&ЭтоКорректировкаДоВводаОстатковТоваровИУслуг
	|	И ((ТаблицаТоваров.КоличествоПосле = 0
	|		И ТаблицаТоваров.КоличествоУпаковокПосле <> 0)
	|	ИЛИ (НЕ (ТаблицаТоваров.Количество = 0
	|			И ТаблицаТоваров.КоличествоУпаковок <> 0)
	|		И ((ТаблицаТоваров.Количество = 0
	|				И ТаблицаТоваров.КоличествоПосле = 0)
	|			ИЛИ (ТаблицаТоваров.КоличествоУпаковок = 0
	|				И ТаблицаТоваров.КоличествоУпаковокПосле = 0))
	|		ИЛИ (ТаблицаТоваров.КоличествоУпаковокПосле = 0
	|			И ТаблицаТоваров.ЦенаПосле > 0)))
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки		КАК НомерСтроки,
	|	""НеУказаноКоличествоПоРНПТ""	КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК ДанныеНоменклатуры
	|		ПО ТаблицаТоваров.Номенклатура = ДанныеНоменклатуры.Ссылка
	|ГДЕ
	|	ТаблицаТоваров.КоличествоПоРНПТ = 0
	|	И (ТаблицаТоваров.Цена > 0
	|		ИЛИ ТаблицаТоваров.Количество <> 0
	|		ИЛИ ТаблицаТоваров.КоличествоУпаковок <> 0)
	|	И &ЭтоКорректировкаДоВводаОстатковТоваровИУслуг
	|	И &ИспользоватьУчетПрослеживаемыхИмпортныхТоваров
	|	И ЕСТЬNULL(ДанныеНоменклатуры.ВестиУчетПоГТД, ЛОЖЬ)
	|	И ЕСТЬNULL(ДанныеНоменклатуры.ПрослеживаемыйТовар, ЛОЖЬ)
	|	И ЕСТЬNULL(ДанныеНоменклатуры.ТипНоменклатуры, НЕОПРЕДЕЛЕНО) В
	|			(ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар),
	|			ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара),
	|			ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа))	
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки			КАК НомерСтроки,
	|	""НеУказаноКоличествоПоРНПТПосле""	КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК ДанныеНоменклатуры
	|		ПО ТаблицаТоваров.Номенклатура = ДанныеНоменклатуры.Ссылка
	|ГДЕ
	|	ТаблицаТоваров.КоличествоПоРНПТПосле = 0
	|	И (ТаблицаТоваров.ЦенаПосле > 0
	|		ИЛИ ТаблицаТоваров.КоличествоПосле <> 0
	|		ИЛИ ТаблицаТоваров.КоличествоУпаковокПосле <> 0)
	|	И &ЭтоКорректировкаДоВводаОстатковТоваровИУслуг
	|	И &ИспользоватьУчетПрослеживаемыхИмпортныхТоваров
	|	И ЕСТЬNULL(ДанныеНоменклатуры.ВестиУчетПоГТД, ЛОЖЬ)
	|	И ЕСТЬNULL(ДанныеНоменклатуры.ПрослеживаемыйТовар, ЛОЖЬ)
	|	И ЕСТЬNULL(ДанныеНоменклатуры.ТипНоменклатуры, НЕОПРЕДЕЛЕНО) В
	|			(ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар),
	|			ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара),
	|			ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Работа))	
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки		КАК НомерСтроки,
	|	""НеУказаноКоличествоПоРНПТ""	КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КлассификаторТНВЭД КАК КлассификаторТНВЭД
	|		ПО ТаблицаТоваров.КодТНВЭД = КлассификаторТНВЭД.Ссылка
	|ГДЕ
	|	ТаблицаТоваров.КоличествоПоРНПТ = 0
	|	И (ТаблицаТоваров.Цена > 0
	|		ИЛИ ТаблицаТоваров.Количество <> 0
	|		ИЛИ ТаблицаТоваров.КоличествоУпаковок <> 0)
	|	И &ИспользоватьУчетПрослеживаемыхИмпортныхТоваров
	|	И НЕ &ЭтоКорректировкаДоВводаОстатковТоваровИУслуг
	|	И ЕСТЬNULL(КлассификаторТНВЭД.ПрослеживаемыйТовар, ЛОЖЬ)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки			КАК НомерСтроки,
	|	""НеУказаноКоличествоПоРНПТПосле""	КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КлассификаторТНВЭД КАК КлассификаторТНВЭД
	|		ПО ТаблицаТоваров.КодТНВЭД = КлассификаторТНВЭД.Ссылка
	|ГДЕ
	|	ТаблицаТоваров.КоличествоПоРНПТПосле = 0
	|	И (ТаблицаТоваров.ЦенаПосле > 0
	|		ИЛИ ТаблицаТоваров.КоличествоПосле <> 0
	|		ИЛИ ТаблицаТоваров.КоличествоУпаковокПосле <> 0)
	|	И &ИспользоватьУчетПрослеживаемыхИмпортныхТоваров
	|	И НЕ &ЭтоКорректировкаДоВводаОстатковТоваровИУслуг
	|	И ЕСТЬNULL(КлассификаторТНВЭД.ПрослеживаемыйТовар, ЛОЖЬ)";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиЗаполненияСуммовыхПоказателей()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	""НеУказанаЦена""			КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	(ТаблицаТоваров.Цена = 0 И ТаблицаТоваров.Количество > 0)
	|	ИЛИ (ТаблицаТоваров.Цена = 0 И ТаблицаТоваров.ЦенаПосле = 0)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	""НеУказанаЦенаПосле""			КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	(ТаблицаТоваров.ЦенаПосле = 0 И ТаблицаТоваров.КоличествоПосле > 0)
	|	ИЛИ (ТаблицаТоваров.Цена = 0 И ТаблицаТоваров.ЦенаПосле = 0)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	""НеУказанаСумма""			КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	(ТаблицаТоваров.Сумма = 0 И ТаблицаТоваров.Количество > 0)
	|	ИЛИ (ТаблицаТоваров.Сумма = 0 И ТаблицаТоваров.СуммаПосле = 0)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	""НеУказанаСуммаПосле""			КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	(ТаблицаТоваров.СуммаПосле = 0 И ТаблицаТоваров.КоличествоПосле > 0)
	|	ИЛИ (ТаблицаТоваров.Сумма = 0 И ТаблицаТоваров.СуммаПосле = 0)";
	
	
	Возврат ТекстЗапроса;
	
КонецФункции

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

Функция ТекстЗапросаПроверкиВариантовОтражения()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки				КАК НомерСтроки,
	|	""НеУказанаВариантОтраженияСписания""	КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.СуммаНДС <> 0
	|	И ТаблицаТоваров.СуммаСНДС <> 0
	|	И ТаблицаТоваров.Количество <> 0
	|	И ТаблицаТоваров.СтавкаНДС <> ТаблицаТоваров.СтавкаНДСПосле
	|	И ТаблицаТоваров.СтавкаНДС <> ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка)
	|	И ТаблицаТоваров.СтавкаНДСПосле <> ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка)
	|	И ТаблицаТоваров.ВариантОтраженияСписания = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ПустаяСсылка)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки					КАК НомерСтроки,
	|	""НеУказанаВариантОтраженияРасхождения""	КАК ТипПроверки
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	(ТаблицаТоваров.СуммаНДС <> ТаблицаТоваров.СуммаНДСПосле
	|		ИЛИ ТаблицаТоваров.СуммаСНДС <> ТаблицаТоваров.СуммаСНДСПосле
	|		ИЛИ ТаблицаТоваров.Количество <> ТаблицаТоваров.КоличествоПосле)
	|	И ТаблицаТоваров.ВариантОтражения = ЗНАЧЕНИЕ(Перечисление.ВариантыОтраженияКорректировокПоступлений.ПустаяСсылка)";
	
	Возврат ТекстЗапроса;
	
КонецФункции

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

Функция ТекстЗапросаПроверкиНалогообложениеНДССоответствуетОснованию()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""НалогообложениеНДСНеСоответствуетОснованию"" КАК ТипПроверки
	|ИЗ
	|	ДанныеДокументаОснования КАК ДокументОснование
	|ГДЕ ДокументОснование.НалогообложениеНДС <> &НалогообложениеНДС";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиОрганизацияСоответствуетОснованию()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""ОрганизацияНеСоответствуетОснованию"" КАК ТипПроверки
	|ИЗ
	|	ДанныеДокументаОснования КАК ДокументОснование
	|ГДЕ ДокументОснование.Организация <> &Организация";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиДоговорСоответствуетОснованию()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""ДоговорНеСоответствуетОснованию"" КАК ТипПроверки
	|ИЗ
	|	ДанныеДокументаОснования КАК ДокументОснование
	|ГДЕ ДокументОснование.Договор <> &Договор";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиПартнерСоответствуетОснованию()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""ПартнерНеСоответствуетОснованию"" КАК ТипПроверки
	|ИЗ
	|	ДанныеДокументаОснования КАК ДокументОснование
	|ГДЕ ДокументОснование.Партнер <> &Партнер";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиКонтрагентСоответствуетОснованию()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""КонтрагентНеСоответствуетОснованию"" КАК ТипПроверки
	|ИЗ
	|	ДанныеДокументаОснования КАК ДокументОснование
	|ГДЕ ДокументОснование.Контрагент <> &Контрагент";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиПорядокРасчетовСоответствуетОснованию()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""ПорядокРасчетовНеСоответствуетОснованию"" КАК ТипПроверки
	|ИЗ
	|	ДанныеДокументаОснования КАК ДокументОснование
	|ГДЕ ДокументОснование.ПорядокРасчетов <> &ПорядокРасчетов";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиТипКорректировкиНеСоответствуетПредыдущей()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	0 КАК НомерСтроки,
	|	""ТипКорректировкиНеСоответствуетПредыдущей"" КАК ТипПроверки
	|ИЗ
	|	ВТПредыдущаяКорректировка КАК ПредыдущаяКорректировка
	|ГДЕ ПредыдущаяКорректировка.ТипКорректировки <> &ТипКорректировки";
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаПроверкиДанныхПоПоследнейКорректировке()
	
ТекстЗапроса = "ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки КАК НомерСтроки,
	|	""ОшибкаКоличествоПоИсходнойКорректировки"" КАК ТипПроверки,
	|	ТаблицаТоваров.ИсходноеКоличество КАК ИсходноеЗначение
	|ИЗ
	|	ВТПроверкиДанныхПоПоследнейКорректировке КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.Количество <> 0
	|	И ТаблицаТоваров.КоличествоУпаковок = 0
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки,
	|	""ОшибкаКоличествоУпаковокПоИсходнойКорректировки"",
	|	ТаблицаТоваров.ИсходноеКоличествоУпаковок
	|ИЗ
	|	ВТПроверкиДанныхПоПоследнейКорректировке КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.КоличествоУпаковок <> 0
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки,
	|	""ОшибкаСуммыПоИсходнойКорректировки"",
	|	ТаблицаТоваров.ИсходнаяСумма
	|ИЗ
	|	ВТПроверкиДанныхПоПоследнейКорректировке КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.Сумма <> 0
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки,
	|	""ОшибкаСуммыНДСПоИсходнойКорректировки"",
	|	ТаблицаТоваров.ИсходнаяСуммаНДС
	|ИЗ
	|	ВТПроверкиДанныхПоПоследнейКорректировке КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.СуммаНДС <> 0
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки,
	|	""ОшибкаСуммыСНДСПоИсходнойКорректировки"",
	|	ТаблицаТоваров.ИсходнаяСуммаСНДС
	|ИЗ
	|	ВТПроверкиДанныхПоПоследнейКорректировке КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.СуммаСНДС <> 0
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки,
	|	""ОшибкаСтавкиНДС"",
	|	ТаблицаТоваров.ИсходнаяСтавкаНДС
	|ИЗ
	|	ВТПроверкиДанныхПоПоследнейКорректировке КАК ТаблицаТоваров
	|ГДЕ
	|	ТаблицаТоваров.ЕстьОшибкаПоНДС ";

	Возврат ТекстЗапроса;
	
КонецФункции

Процедура СообщитьОшибкиЗаполнения(Выборка, Отказ)
	
	ИмяТЧ			= "ТаблицаКорректировки";
	ПредставлениеТЧ	= НСтр("ru = 'Данные корректировки'");
	
	ШаблонСообщенияНеЗаполненоПоле						= НСтр("ru = 'Поле ""%1"" не заполнено'");
	ШаблонСообщенияНеЗаполненаКолонка					= НСтр("ru = 'Не заполнена колонка ""%1"" в строке %2 списка ""%3""'");
	ШаблонСообщенияОшибкаПересчетаКоличества			= НСтр("ru = 'Обнаружено нулевое %1 при пересчете в единицу хранения в строке %2 списка ""%3""'");
	ШаблонСообщенияНеУказанаВариантОтраженияСписания	= НСтр("ru = 'Не указан вариант списания принятых позиций в строке %1 списка ""%2""'");
	ШаблонСообщенияНеУказанаВариантОтраженияРасхождения = НСтр("ru = 'Не указан вариант отражения расхождений по строке %1 списка ""%2""'");
	ШаблонСообщенияНеСоответствуетОснованию				= НСтр("ru = 'Поле ""%1"" не соответствует аналогичному полю документа основания'");
	ШаблонСообщенияНеСоответствуетПерыдущейКорректировке= НСтр("ru = 'Поле ""%1"" не соответствует аналогичному полю предыдущей корректировки'");
	
	Пока Выборка.Следующий() Цикл
		
		Если Выборка.ТипПроверки = "НеУказанСклад" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненоПоле, НСтр("ru = 'Склад'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Склад",
													"Объект",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаНоменклатура" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Номенклатура'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Номенклатура");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказаноСодержание" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Содержание'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Содержание");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаХарактеристика" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Характеристика'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Характеристика");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ОшибкаПересчетаКоличества" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияОшибкаПересчетаКоличества,
										НСтр("ru = 'количество до корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоУпаковок");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказаноКоличествоУпаковок" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Количество упаковок до корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоУпаковок");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ОшибкаПересчетаКоличестваПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияОшибкаПересчетаКоличества,
										НСтр("ru = 'количество после корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоУпаковокПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказаноКоличествоУпаковокПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Количество упаковок после корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоУпаковокПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказаноКоличествоПоРНПТ" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Количество по РНПТ до корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоПоРНПТ");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказаноКоличествоПоРНПТПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Количество по РНПТ после корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоПоРНПТПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаЦена" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Цена до корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Цена");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаЦенаПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Цена после корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"ЦенаПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаСумма" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Сумма до корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Сумма");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаСуммаПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Сумма после корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СуммаПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаСтавкаНДС" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Ставка НДС до корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СтавкаНДС");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаСтавкаНДСПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Ставка НДС после корректировки'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СтавкаНДСПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаВариантОтраженияСписания" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеУказанаВариантОтраженияСписания,
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"ВариантОтраженияСписания");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанаВариантОтраженияРасхождения" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеУказанаВариантОтраженияРасхождения,
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"ВариантОтражения");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НеУказанСкладВТабличнойЧасти" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеЗаполненаКолонка,
										НСтр("ru = 'Склад'"),
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Склад");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "НалогообложениеНДСНеСоответствуетОснованию" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетОснованию, НСтр("ru = 'Налогообложение'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.НалогообложениеНДС",
													"",
													Отказ);
			
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ОрганизацияНеСоответствуетОснованию" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетОснованию, НСтр("ru = 'Организация'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.Организация",
													"",
													Отказ);
			
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ПартнерНеСоответствуетОснованию" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетОснованию, НСтр("ru = 'Поставщик'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.Партнер",
													"",
													Отказ);
			
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "КонтрагентНеСоответствуетОснованию" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетОснованию, НСтр("ru = 'Контрагент'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.Контрагент",
													"",
													Отказ);
			
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ДоговорНеСоответствуетОснованию" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетОснованию, НСтр("ru = 'Договор'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.Договор",
													"",
													Отказ);
			
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ПорядокРасчетовНеСоответствуетОснованию" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетОснованию, НСтр("ru = 'Порядок расчетов'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.ПорядокРасчетов",
													"",
													Отказ);
			
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ТипКорректировкиНеСоответствуетПредыдущей" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияНеСоответствуетПерыдущейКорректировке, НСтр("ru = 'Тип корректировки'"));
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													"Объект.ТипКорректировки",
													"",
													Отказ);
			
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры

Процедура СообщитьОшибкиПоЦепочкеКорректировок(Выборка, Отказ)
	
	ИмяТЧ			= "ТаблицаКорректировки";
	ПредставлениеТЧ	= НСтр("ru = 'Данные корректировки'");
	
	ШаблонСообщенияРасходитсяЗначениеКоличество	= НСтр("ru = 'Предупреждение: в поле ""%1"" в строке %2 указано количество отличное от количества %3 после последней корректировки'");
	ШаблонСообщенияРасходитсяЗначениеСумма		= НСтр("ru = 'Предупреждение: в поле ""%1"" в строке %2 указана сумма отличная от суммы %3 после последней корректировки'");
	ШаблонСообщенияРасходитсяСтавкаНДС			= НСтр("ru = 'Предупреждение: ставка НДС в строке %1 отличается от ставки НДС %2 после последней корректировки'");
	
	Пока Выборка.Следующий() Цикл
	
		Если Выборка.ТипПроверки = "ОшибкаКоличествоПоИсходнойКорректировки" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияРасходитсяЗначениеКоличество,
										НСтр("ru = 'Количество'"),
										Выборка.НомерСтроки,
										Выборка.ИсходноеЗначение);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Количество");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ОшибкаКоличествоУпаковокПоИсходнойКорректировки" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияРасходитсяЗначениеКоличество,
										НСтр("ru = 'Количество упаковок'"),
										Выборка.НомерСтроки,
										Выборка.ИсходноеЗначение);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"КоличествоУпаковок");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ОшибкаСуммыПоИсходнойКорректировки" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияРасходитсяЗначениеСумма,
										НСтр("ru = 'Сумма'"),
										Выборка.НомерСтроки,
										Выборка.ИсходноеЗначение);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"Сумма");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													);
		КонецЕсли;

		Если Выборка.ТипПроверки = "ОшибкаСуммыНДСПоИсходнойКорректировки" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияРасходитсяЗначениеСумма,
										НСтр("ru = 'Сумма НДС'"),
										Выборка.НомерСтроки,
										Выборка.ИсходноеЗначение);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СуммаНДС");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													);
		КонецЕсли;

		Если Выборка.ТипПроверки = "ОшибкаСуммыСНДСПоИсходнойКорректировки" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияРасходитсяЗначениеСумма,
										НСтр("ru = 'Сумма с НДС'"),
										Выборка.НомерСтроки,
										Выборка.ИсходноеЗначение);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СуммаСНДС");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													);
		КонецЕсли;

		Если Выборка.ТипПроверки = "ОшибкаСтавкиНДС" Тогда
			
			ТекстСообщения = СтрШаблон(ШаблонСообщенияРасходитсяСтавкаНДС,
										Выборка.НомерСтроки,
										Выборка.ИсходноеЗначение);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СтавкаСНДС");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													);
		КонецЕсли;
		
	КонецЦикла;

КонецПроцедуры

Процедура ПроверитьУказаниеСуммыИСуммыНДС(Объект, МенеджерВременныхТаблиц, Отказ)
	
	Запрос = Новый Запрос;
	Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
	Запрос.Текст = ТекстЗапросаПроверкиУказанияСуммыИСуммыНДС();
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Если РезультатЗапроса.Пустой() Тогда
		Возврат;
	КонецЕсли;
	
	Выборка = РезультатЗапроса.Выбрать();
	
	ИмяТЧ			= "ТаблицаКорректировки";
	ПредставлениеТЧ	= НСтр("ru = 'Данные корректировки'");
	
	ШаблонСообщенияОшибкаУказанияСуммы		= НСтр("ru = 'Сумма НДС до корректировки %1 %2 при ставке ""%3"" больше общей суммы до корректировки по строке %4 %5 в строке %6 списка ""%7""'");
	ШаблонСообщенияОшибкаУказанияСуммыПосле	= НСтр("ru = 'Сумма НДС после корректировки %1 %2 при ставке ""%3"" больше общей суммы после корректировки по строке %4 %5 в строке %6 списка ""%7""'");
	
	Пока Выборка.Следующий() Цикл
		
		Если Выборка.ТипПроверки = "ОшибкаУказанияСуммы" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияОшибкаУказанияСуммы,
										Выборка.СуммаНДС,
										Объект.Валюта,
										Выборка.СтавкаНДС,
										Выборка.Сумма,
										Объект.Валюта,
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СуммаНДС");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
		Если Выборка.ТипПроверки = "ОшибкаУказанияСуммыПосле" Тогда
			ТекстСообщения = СтрШаблон(ШаблонСообщенияОшибкаУказанияСуммы,
										Выборка.СуммаНДС,
										Объект.Валюта,
										Выборка.СтавкаНДС,
										Выборка.Сумма,
										Объект.Валюта,
										Выборка.НомерСтроки,
										ПредставлениеТЧ);
			
			Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти(ИмяТЧ,
																	Выборка.НомерСтроки,
																	"СуммаНДСПосле");
			
			ОбщегоНазначения.СообщитьПользователю(ТекстСообщения,
													Неопределено,
													Поле,
													"",
													Отказ);
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры

Функция ТекстЗапросаПроверкиУказанияСуммыИСуммыНДС()
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки	КАК НомерСтроки,
	|	""ОшибкаУказанияСуммы""		КАК ТипПроверки,
	|	ТаблицаТоваров.Сумма		КАК Сумма,
	|	ТаблицаТоваров.СуммаНДС		КАК СуммаНДС,
	|	ТаблицаТоваров.СтавкаНДС	КАК СтавкаНДС,
	|	ВЫБОР
	|		КОГДА ТаблицаТоваров.Сумма < 0
	|				И ТаблицаТоваров.Сумма - ТаблицаТоваров.СуммаНДС <= 0
	|			ТОГДА ЛОЖЬ
	|		КОГДА ТаблицаТоваров.Сумма >= 0
	|				И ТаблицаТоваров.Сумма - ТаблицаТоваров.СуммаНДС >= 0
	|			ТОГДА ЛОЖЬ
	|		ИНАЧЕ ИСТИНА
	|	КОНЕЦ						КАК ЕстьОшибкиСуммыНДС
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	ВЫБОР
	|		КОГДА ТаблицаТоваров.Сумма < 0
	|				И ТаблицаТоваров.Сумма - ТаблицаТоваров.СуммаНДС <= 0
	|			ТОГДА ЛОЖЬ
	|		КОГДА ТаблицаТоваров.Сумма >= 0
	|				И ТаблицаТоваров.Сумма - ТаблицаТоваров.СуммаНДС >= 0
	|			ТОГДА ЛОЖЬ
	|		ИНАЧЕ ИСТИНА
	|	КОНЕЦ
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТаблицаТоваров.НомерСтроки		КАК НомерСтроки,
	|	""ОшибкаУказанияСуммыПосле""	КАК ТипПроверки,
	|	ТаблицаТоваров.СуммаПосле		КАК Сумма,
	|	ТаблицаТоваров.СуммаНДСПосле	КАК СуммаНДС,
	|	ТаблицаТоваров.СтавкаНДСПосле	КАК СтавкаНДС,
	|	ВЫБОР
	|		КОГДА ТаблицаТоваров.СуммаПосле < 0
	|				И ТаблицаТоваров.СуммаПосле - ТаблицаТоваров.СуммаНДСПосле <= 0
	|			ТОГДА ЛОЖЬ
	|		КОГДА ТаблицаТоваров.СуммаПосле >= 0
	|				И ТаблицаТоваров.СуммаПосле - ТаблицаТоваров.СуммаНДСПосле >= 0
	|			ТОГДА ЛОЖЬ
	|		ИНАЧЕ ИСТИНА
	|	КОНЕЦ							КАК ЕстьОшибкиСуммыНДС
	|ИЗ
	|	ТаблицаТоваровДляЗапроса КАК ТаблицаТоваров
	|ГДЕ
	|	ВЫБОР
	|		КОГДА ТаблицаТоваров.СуммаПосле < 0
	|				И ТаблицаТоваров.СуммаПосле - ТаблицаТоваров.СуммаНДСПосле <= 0
	|			ТОГДА ЛОЖЬ
	|		КОГДА ТаблицаТоваров.СуммаПосле >= 0
	|				И ТаблицаТоваров.СуммаПосле - ТаблицаТоваров.СуммаНДСПосле >= 0
	|			ТОГДА ЛОЖЬ
	|		ИНАЧЕ ИСТИНА
	|	КОНЕЦ
	|
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки";
	
	Возврат ТекстЗапроса;
	
КонецФункции

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

Процедура РассчитатьСуммыОтраженияРасходовИДоходов(ДанныеСумм,
													РасхождениеСуммаСНДС,
													РасхождениеСуммаНДС,
													ВариантОтражения,
													СписатьНаРасходы)
	
	Если ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокПоступлений.ОтразитьНаПрочихДоходах Тогда
		ДанныеСумм.СуммаНаПрочиеДоходы = ДанныеСумм.СуммаНаПрочиеДоходы + ?(РасхождениеСуммаСНДС < 0,
																			-РасхождениеСуммаСНДС,
																			РасхождениеСуммаСНДС);
	ИначеЕсли Не СписатьНаРасходы
		И ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокПоступлений.СписатьНаРасходы Тогда
		
		ДанныеСумм.СуммаНаПрочиеРасходы = ДанныеСумм.СуммаНаПрочиеРасходы + ?(РасхождениеСуммаСНДС < 0,
																				-РасхождениеСуммаСНДС,
																				РасхождениеСуммаСНДС);
		
	КонецЕсли;
	
КонецПроцедуры

#КонецОбласти

#КонецОбласти

#КонецОбласти

#КонецЕсли

Связанные материалы