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