Продажи / Модуль объекта

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

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

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

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

	//++ НЕ УТ	
	БухгалтерскиеОтчеты.ИнициализироватьРежимВыгрузкиБСП(ЭтаФорма);
	//-- НЕ УТ

	//-- Локализация
КонецПроцедуры

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

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

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

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

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

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

	//++ НЕ УТ
	БухгалтерскиеОтчеты.ПриЗагрузкеПользовательскихНастроекНаСервере(Форма, НовыеПользовательскиеНастройкиКД, КомпоновщикНастроек);
	//-- НЕ УТ

	//-- Локализация	
КонецПроцедуры

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

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

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

	ТекстЗапроса = СтрЗаменить(
		ТекстЗапроса, 
		"&ТекстЗапросаВесНоменклатуры1", 
		Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаВесУпаковки("Таблица.Номенклатура.ЕдиницаИзмерения", "Таблица.Номенклатура"));
		
	ТекстЗапроса = СтрЗаменить(
		ТекстЗапроса, 
		"&ТекстЗапросаОбъемНоменклатуры1", 
		Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаОбъемУпаковки("Таблица.Номенклатура.ЕдиницаИзмерения", "Таблица.Номенклатура"));

	СхемаКомпоновкиДанных.НаборыДанных.ВыручкаИСебестоимостьПродажСДетализацией.Запрос = ТекстЗапроса;

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

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

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

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

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

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

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

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

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

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

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

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

Процедура СформироватьПараметрыФормыПродажи(ПараметрКоманды, ПараметрыФормы)

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

Процедура ДобавитьНижестоящихПартнеровВМассив(Знач МассивПартнеров, НовыйМассивПартнеров)
	
	Для Каждого Партнер Из МассивПартнеров Цикл
		
		МассивНижестоящихПартнеров = ПартнерыИКонтрагенты.ПолучитьНижестоящихПартнеров(Партнер);
		Для Каждого НижестоящийПартнер Из МассивНижестоящихПартнеров Цикл
			Если НижестоящийПартнер <> Партнер Тогда
				НовыйМассивПартнеров.Добавить(НижестоящийПартнер);
			КонецЕсли;
		КонецЦикла;
		
	КонецЦикла;
	
КонецПроцедуры

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

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

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

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

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

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

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

#КонецЕсли

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