Ввод начальных остатков / Модуль менеджера

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

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

#Область СозданиеНаОсновании

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

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

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

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

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

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

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

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

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

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

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

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

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

//++ Локализация

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

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

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

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

#Область ЗаполнениеПоДаннымОперативногоУчета

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

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

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

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

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

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

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

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

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

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

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

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

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

//++ Локализация

#Область ИнициализацияДокументаИПараметровДокумента

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

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

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

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

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

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

#КонецОбласти
//-- Локализация

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

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

#КонецЕсли

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

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

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

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

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

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

#Область СлужебныеПроцедурыИФункции
//++ Локализация
#Область Проведение

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

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

//-- Локализация

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

//--Локализация

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

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

//++ Устарело_Переработка24

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

	Возврат ТекстЗапроса;
	
КонецФункции
//-- Устарело_Переработка24

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

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

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

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

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

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

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

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

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

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

//++ Локализация

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

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

//++ Локализация
#Область ПартионныйУчет

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

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

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

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

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

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

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

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

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

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

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

Функция ТипДокументаРасчетовПоХозяйственнойОперации(ХозяйственнаяОперация) Экспорт
	
	ОбъектРасчетов = Неопределено;
	
	Возврат ОбъектРасчетов;
	
КонецФункции

Функция ХозяйственнаяОперацияДоговораПоТипуОперации(ХозяйственнаяОперация) Экспорт

	Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВводОстатковЗадолженностиКлиентов
		Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВводОстатковАвансовКлиентов Тогда
		ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияКлиенту;
	ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВводОстатковЗадолженностиПоставщикам
		Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВводОстатковАвансовПоставщикам Тогда
		ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ЗакупкаУПоставщика;
	Иначе
		ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПустаяСсылка();
	КонецЕсли;
	
	Возврат ХозяйственнаяОперация;

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

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

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

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

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

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

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

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

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

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

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

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

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

#КонецОбласти
//-- Локализация
#Область Печать

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

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

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

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

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

Функция ТекстЗапросаЗаполненияСтатусовУказанияСерийСклад(ПараметрыУказанияСерий)

	Если ПараметрыУказанияСерий.ПоляСвязи.Найти("Упаковка") <> Неопределено Тогда
		ТекстЗапроса = 
		"ВЫБРАТЬ
		|	Товары.Номенклатура,
		|	Товары.Характеристика,
		|	Товары.Назначение,
		|	Товары.Упаковка КАК Упаковка,
		|	Товары.Серия,
		|	Товары.КоличествоУпаковок КАК Количество,
		|	Товары.НомерСтроки,
		|	Товары.СтатусУказанияСерий
		|ПОМЕСТИТЬ Товары
		|ИЗ
		|	&Товары КАК Товары
		|;
		|
		|////////////////////////////////////////////////////////////////////////////////
		|ВЫБРАТЬ
		|	Серии.Номенклатура,
		|	Серии.Характеристика,
		|	Серии.Назначение,
		|	Серии.Упаковка КАК Упаковка,
		|	Серии.КоличествоУпаковок КАК Количество
		|ПОМЕСТИТЬ Серии
		|ИЗ
		|	&Серии КАК Серии";
	Иначе
		ТекстЗапроса = 
		"ВЫБРАТЬ
		|	Товары.Номенклатура,
		|	Товары.Характеристика,
		|	Товары.Назначение,
		|	ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка) КАК Упаковка,
		|	Товары.Серия,
		|	Товары.Количество,
		|	Товары.НомерСтроки,
		|	Товары.СтатусУказанияСерий
		|ПОМЕСТИТЬ Товары
		|ИЗ
		|	&Товары КАК Товары
		|;
		|
		|////////////////////////////////////////////////////////////////////////////////
		|ВЫБРАТЬ
		|	Серии.Номенклатура,
		|	Серии.Характеристика,
		|	Серии.Назначение,
		|	ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка) КАК Упаковка,
		|	Серии.Количество
		|ПОМЕСТИТЬ Серии
		|ИЗ
		|	&Серии КАК Серии";
	КонецЕсли;	
	
	ТекстЗапроса = ТекстЗапроса + "
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|";
	
	ТекстЗапроса = ТекстЗапроса + 
	"ВЫБРАТЬ
	|	Товары.Номенклатура,
	|	Товары.Характеристика,
	|	Товары.Назначение,
	|	Товары.Упаковка,
	|	СУММА(Товары.Количество) КАК Количество,
	|	ВЫРАЗИТЬ(Товары.Номенклатура КАК Справочник.Номенклатура).ВидНоменклатуры КАК ВидНоменклатуры
	|ПОМЕСТИТЬ ТоварыДляЗапроса
	|ИЗ
	|	Товары КАК Товары
	|
	|СГРУППИРОВАТЬ ПО
	|	Товары.Номенклатура,
	|	Товары.Упаковка,
	|	Товары.Характеристика,
	|	Товары.Назначение
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Серии.Номенклатура,
	|	Серии.Характеристика,
	|	Серии.Назначение,
	|	Серии.Упаковка,
	|	СУММА(Серии.Количество) КАК Количество
	|ПОМЕСТИТЬ СерииДляЗапроса
	|ИЗ
	|	Серии КАК Серии
	|
	|СГРУППИРОВАТЬ ПО
	|	Серии.Номенклатура,
	|	Серии.Упаковка,
	|	Серии.Характеристика,
	|	Серии.Назначение
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Товары.НомерСтроки КАК НомерСтроки,
	|	Товары.СтатусУказанияСерий КАК СтатусУказанияСерийСтарый,
	|	ВЫБОР
	|		КОГДА НЕ ПолитикиУчетаСерий.ПолитикаУчетаСерий ЕСТЬ NULL 
	|			ТОГДА ВЫБОР
	|					КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий.УчитыватьСебестоимостьПоСериям
	|						ТОГДА ВЫБОР
	|								КОГДА Товары.Серия <> ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|									ТОГДА 14
	|								ИНАЧЕ 13
	|							КОНЕЦ
	|					КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий.УказыватьПриПланированииОтгрузки
	|						ТОГДА ВЫБОР
	|								КОГДА ТоварыДляЗапроса.Количество = ЕСТЬNULL(СерииДляЗапроса.Количество, 0)
	|										И ТоварыДляЗапроса.Количество > 0
	|									ТОГДА 10
	|								ИНАЧЕ 9
	|							КОНЕЦ
	|					КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий.УказыватьПриПланированииОтбора
	|						ТОГДА ВЫБОР
	|								КОГДА ТоварыДляЗапроса.Количество = ЕСТЬNULL(СерииДляЗапроса.Количество, 0)
	|										И ТоварыДляЗапроса.Количество > 0
	|									ТОГДА 8
	|								ИНАЧЕ 7
	|							КОНЕЦ
	|					КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий.УказыватьПоФактуОтбора
	|							И ПолитикиУчетаСерий.ПолитикаУчетаСерий.УчитыватьОстаткиСерий
	|						ТОГДА ВЫБОР
	|								КОГДА ТоварыДляЗапроса.Количество = ЕСТЬNULL(СерииДляЗапроса.Количество, 0)
	|										И ТоварыДляЗапроса.Количество > 0
	|									ТОГДА 4
	|								ИНАЧЕ 3
	|							КОНЕЦ
	|					КОГДА ПолитикиУчетаСерий.ПолитикаУчетаСерий.ТипПолитики = ЗНАЧЕНИЕ(Перечисление.ТипыПолитикУказанияСерий.АвторасчетПоFEFOОстатковСерий)
	|                          И НЕ &ТолькоСерииСУчетомОстатков
	|						ТОГДА ВЫБОР
	|								КОГДА ТоварыДляЗапроса.Количество = ЕСТЬNULL(СерииДляЗапроса.Количество, 0)
	|										И ТоварыДляЗапроса.Количество > 0
	|									ТОГДА 2
	|								ИНАЧЕ 1
	|							КОНЕЦ
	|					ИНАЧЕ 0
	|				КОНЕЦ
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СтатусУказанияСерий
	|ПОМЕСТИТЬ Статусы
	|ИЗ
	|	Товары КАК Товары
	|		ЛЕВОЕ СОЕДИНЕНИЕ ТоварыДляЗапроса КАК ТоварыДляЗапроса
	|			ЛЕВОЕ СОЕДИНЕНИЕ СерииДляЗапроса КАК СерииДляЗапроса
	|			ПО ТоварыДляЗапроса.Номенклатура = СерииДляЗапроса.Номенклатура
	|				И ТоварыДляЗапроса.Характеристика = СерииДляЗапроса.Характеристика
	|				И ТоварыДляЗапроса.Назначение = СерииДляЗапроса.Назначение
	|				И ТоварыДляЗапроса.Упаковка = СерииДляЗапроса.Упаковка
	|			ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыНоменклатуры.ПолитикиУчетаСерий КАК ПолитикиУчетаСерий
	|				ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Склады КАК Склады
	|				ПО ПолитикиУчетаСерий.Склад = Склады.Ссылка
	|			ПО (ПолитикиУчетаСерий.Склад = &Склад)
	|				И ТоварыДляЗапроса.ВидНоменклатуры = ПолитикиУчетаСерий.Ссылка
	|		ПО Товары.Номенклатура = ТоварыДляЗапроса.Номенклатура
	|			И Товары.Характеристика = ТоварыДляЗапроса.Характеристика
	|			И Товары.Назначение = ТоварыДляЗапроса.Назначение
	|			И Товары.Упаковка = ТоварыДляЗапроса.Упаковка
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ТаблицаСтатусов.НомерСтроки КАК НомерСтроки,
	|	ТаблицаСтатусов.СтатусУказанияСерий
	|ИЗ
	|	Статусы КАК ТаблицаСтатусов
	|ГДЕ
	|	ТаблицаСтатусов.СтатусУказанияСерийСтарый <> ТаблицаСтатусов.СтатусУказанияСерий
	|
	|УПОРЯДОЧИТЬ ПО
	|	НомерСтроки";
	
	Возврат ТекстЗапроса;

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

//++ НЕ УТ

Функция ТекстЗапросаЗаполненияСтатусовУказанияСерийПроизводство()

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

КонецФункции
//-- НЕ УТ

#КонецОбласти
//++ Локализация

//++ НЕ УТ
#Область СлужебныеПроцедурыЗаполненияПоДаннымОперативногоУчета

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

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

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

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

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

	Результат = Запрос.Выполнить().Выгрузить();
	
	Возврат Результат;
	
КонецФункции

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

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

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

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

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

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

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

//-- Локализация
#КонецОбласти

#КонецЕсли

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