Передача товаров между организациями / Модуль менеджера

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#КонецЕсли

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

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

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

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

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

#Область СлужебныеПроцедурыИФункции

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#Область ШаблоныСообщений

// Вызывается при подготовке шаблонов сообщений и позволяет переопределить список реквизитов и вложений.
//
// Параметры:
//  Реквизиты               - ДеревоЗначений - список реквизитов шаблона:
//         * Имя            - Строка - Уникальное имя общего реквизита.
//         * Представление  - Строка - Представление общего реквизита.
//         * Тип            - Тип    - Тип реквизита. По умолчанию строка.
//         * Формат         - Строка - Формат вывода значения для чисел, дат, строк и булевых значений.
//  Вложения                - ТаблицаЗначений - печатные формы и вложения:
//         * Имя            - Строка - Уникальное имя вложения.
//         * Представление  - Строка - Представление варианта.
//         * ТипФайла       - Строка - Тип вложения, который соответствует расширению файла: "pdf", "png", "jpg", mxl"
//                                      и др.
//  ДополнительныеПараметры - Структура - дополнительные сведения о шаблоне сообщений.
//
Процедура ПриПодготовкеШаблонаСообщения(Реквизиты, Вложения, ДополнительныеПараметры) Экспорт
	
КонецПроцедуры

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

// Заполняет список получателей SMS при отправке сообщения сформированного по шаблону.
//
// Параметры:
//   ПолучателиSMS - ТаблицаЗначений - список получается SMS:
//     * НомерТелефона - Строка - номер телефона, куда будет отправлено сообщение SMS.
//     * Представление - Строка - представление получателя сообщения SMS.
//     * Контакт       - СправочникСсылка - контакт, которому принадлежит номер телефона.
//  ПредметСообщения - ЛюбаяСсылка - ссылка на объект являющийся источником данных.
//
Процедура ПриЗаполненииТелефоновПолучателейВСообщении(ПолучателиSMS, ПредметСообщения) Экспорт
	
КонецПроцедуры

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

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

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

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

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

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

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

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

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

Функция ПолучитьДанныеДляПечатнойФормыСчетаНаОплату(ПараметрыПечати, МассивОбъектов, КодЯзыка = Неопределено) Экспорт
	
	Возврат ДанныеДляПечатныхФормСчетаНаОплатуИзвещения(ПараметрыПечати, МассивОбъектов, КодЯзыка);
	
КонецФункции

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

#Область Состояние

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

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

// Осуществляет инициализацию структуры состояния расчетов.
//
Функция СтруктураСостоянияРасчетовПолучатель()
	
	СтруктураСостоянияРасчетов = Новый Структура;
	СтруктураСостоянияРасчетов.Вставить("СуммаОплатыПолучатель", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаПоступления", 0);
	СтруктураСостоянияРасчетов.Вставить("ПроцентОплатыПолучатель", 0);
	СтруктураСостоянияРасчетов.Вставить("ПроцентПоступления", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаПросроченнойОплатыПолучатель", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаДолгаПолучатель", 0);
	СтруктураСостоянияРасчетов.Вставить("ПроцентДолгаПолучатель", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаКОплатеПолучатель", 0);
	
	Возврат СтруктураСостоянияРасчетов
	
КонецФункции

// Осуществляет инициализацию структуры состояния расчетов.
//
Функция СтруктураСостоянияРасчетовОтправитель()
	
	СтруктураСостоянияРасчетов = Новый Структура;
	СтруктураСостоянияРасчетов.Вставить("СуммаОплатыОтправитель", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаОтгрузки", 0);
	СтруктураСостоянияРасчетов.Вставить("ПроцентОплатыОтправитель", 0);
	СтруктураСостоянияРасчетов.Вставить("ПроцентОтгрузки", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаПросроченнойОплатыОтправитель", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаДолгаОтправитель", 0);
	СтруктураСостоянияРасчетов.Вставить("ПроцентДолгаОтправитель", 0);
	СтруктураСостоянияРасчетов.Вставить("СуммаКОплатеОтправитель", 0);
	
	Возврат СтруктураСостоянияРасчетов
	
КонецФункции

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

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

#Область ФормированиеГиперссылкиВЖурналеДокументовИнтеркампани

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

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

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

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

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

#КонецЕсли

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