Разработка отчета в 1С: Предприятие ERP для выдачи дебиторской задолженности по критериям
В разработке работаю 18 лет из них 10 специализируюсь на ERP. Ко мне часто обращаются с разработкой сложных отчетов. Сейчас разберем один из них на примере одной из организации ООО «Ромашка».
Более года сопровождаем эту организацию и вот какой интересный запрос поступил от бизнеса.
1. Запрос от организации
Задача:
Требуется разработать отчет для выдачи дебиторской задолженности по выбранным счетам на определенную дату с полями Счет, Организация, Контрагент, КодРодителя, СуммаДебиторки, СуммаПросрочено, ДатаВозникновения, НДС.
Конфигурация ERP 2.5.
2. Код для разработки
Ниже я расписал код для разработки данного отчета. Разобрав все нюансы и риски данного отчета. При пошаговом просмотре моего документа, вы не допустите ошибок и сдадите вашу работу быстрее заявленного срока.
Процедуры и функции отчета:
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
// Возвращает сведения о внешней обработке.
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(“2.3.4.30”);
ПараметрыРегистрации.Наименование = “Перечень предприятий-дебиторов (расшифровка к бухгалтерскому балансу)”;
ПараметрыРегистрации.Информация = НСтр(“ru = ‘Перечень предприятий-дебиторов'”);
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
ПараметрыРегистрации.Версия = “1.2.1”;
//ПараметрыРегистрации.Назначение.Добавить(“Документ.НаименованиеДокумента”);
Команда = ПараметрыРегистрации.Команды.Добавить();
Команда.Представление = НСтр(“ru = ‘Перечень предприятий-дебиторов'”);
Команда.Идентификатор = “ПереченьПредприятийДебиторов”;
Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
Команда.ПоказыватьОповещение = Ложь;
Команда.Модификатор = “ПечатьMXL”;
Возврат ПараметрыРегистрации;
КонецФункции
#КонецОбласти
Процедура Печать(КоллекцияПечатныхФорм) Экспорт
ПечатнаяФорма = УправлениеПечатью.СведенияОПечатнойФорме(КоллекцияПечатныхФорм, “ПереченьПредприятийДебиторов”);
Если ПечатнаяФорма <> Неопределено Тогда
ПечатнаяФорма.ТабличныйДокумент = ПолучитьТабДок(Организация, ДатаСостояние);
ПечатнаяФорма.СинонимМакета = НСтр(“ru = ‘Перечень предприятий-дебиторов'”);
КонецЕсли;
КонецПроцедуры
Функция ПолучитьТабДок(Организация, ДатаСостояние) Экспорт
#Область ОбозначениеПеременных
Табдок = Новый ТабличныйДокумент;
Табдок.ОтображатьСетку = Ложь;
Макет = ПолучитьМакет(“ПФ_MXL_ПереченьПредприятийДебиторов”);
//Получение данных Наименование = Новый Структура;
Шапка = Новый Структура;
Строка = Новый Структура;
СтрокаПустая = Новый Структура; СтрокаЗаголовок = Новый Структура;
Подвал = Новый Структура; СчетаДебиторки = Новый Массив;
ИскСчета = Новый Массив; НаименованиеЗаголовок = “”;
СуммаЗаголовок = 0;
//СуммаПросроченоЗаголовок = 0;
СуммаЗаголовокНДС = 0;
НДСЗаголовок = 0;
НомерСтроки = 1;
Если ВариантФормирования = 1 Тогда
Валюта = “рублях”;
ИначеЕсли ВариантФормирования = 2 Тогда
Валюта = “тыс. рублей”;
ИначеЕсли ВариантФормирования = 3 Тогда
Валюта = “млн. рублей”;
КонецЕсли;
СтрокаПустая.Вставить(“НомерСтроки”, Неопределено);
СтрокаПустая.Вставить(“Код”, Неопределено);
СтрокаПустая.Вставить(“Контрагент”, Неопределено);
СтрокаПустая.Вставить(“ИННКПП”, Неопределено);
СтрокаПустая.Вставить(“Сумма”, Неопределено);
СтрокаПустая.Вставить(“СуммаПросрочено”, Неопределено);
СтрокаПустая.Вставить(“ДатаВЗ”, Неопределено);
СтрокаПустая.Вставить(“Счет”, Неопределено);
СтрокаПустая.Вставить(“НДС”, Неопределено);
Папка_ТНГ =
Справочники.Контрагенты.НайтиПоКоду(“Ц00018756”);
СчетаДебиторки = Новый Массив;
СчетаДебиторки.Добавить(ПредопределенноеЗначение(“
ПланСчетов.Хозрасчетный.РасчетыСРазнымиДебиторамиИКредиторами”));
СчетаДебиторки.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыСПокупателямиВал”));
СчетаДебиторки.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыСПокупателямиИЗаказчиками”));
СчетаДебиторки.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоАвансамВыданным”));
СчетаДебиторки.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоАвансамВыданнымВал”));
ИскСчета = Новый Массив;
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыНДСНалоговогоАгента”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоНДСотложенномуДляУплатыВБюджет”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.КорректировкаРасчетовПрошлогоПериода”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.НДСпоАвансамИПредоплатам”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.НДСпоАвансамИПредоплатамВыданным”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоИсполнительнымДокументамРаботников”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоДепонированнымСуммам”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоБронированию”));
ИскСчета.Добавить(ПредопределенноеЗначение(“ПланСчетов.Хозрасчетный.РасчетыПоПричитающимсяДивидендам”));
Наименование.Вставить(“ОрганизацияПолноеНаименование”,
Организация.НаименованиеПолное);
Наименование.Вставить(“ИННКПП”, “” + Организация.ИНН + “/” + Организация.КПП);
Шапка.Вставить(“ДатаСостояние”,
Формат(ДатаСостояние, “ДЛФ=DD”));
#КонецОбласти
#Область ПолучениеДанныхТаблицы
//Получение данных табличной части Граница = Новый Граница(КонецДня(ДатаСостояние),
ВидГраницы.Включая);
Запрос = Новый Запрос;
Запрос.УстановитьПараметр(“Период”, Граница);
Запрос.УстановитьПараметр(“Организация”, Организация);
Запрос.УстановитьПараметр(“ПериодДата”,
КонецДня(ДатаСостояние));
Запрос.УстановитьПараметр(“КонецМесяца”, КонецМесяца(ДатаСостояние));
Запрос.УстановитьПараметр(“СчетаДебиторки”, СчетаДебиторки);
Запрос.УстановитьПараметр(“ИскСчета”, ИскСчета);
Запрос.УстановитьПараметр(“Папка_ТНГ”, Папка_ТНГ);
Запрос.УстановитьПараметр(“Контрагент”, Контрагент);
Запрос.УстановитьПараметр(“ПоВсемКонтрагентам”, ПоВсемКонтрагентам);
ГруппаФинУчетаКлиенты = Новый СписокЗначений;
// пустая ссылка ГруппаФинУчетаКлиенты.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“00000000-0000-0000-0000-000000000000”)));
// Расчеты с покупателями и заказчиками (62) ГруппаФинУчетаКлиенты.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“bb96ae7e-aee2-11ee-abdd-b47af18c93e6”)));
// Расчеты с покупателями и заказчиками (вал) (62.21) ГруппаФинУчетаКлиенты.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“82186479-b085-11ee-abde-b47af18c93e6”)));
// Расчеты с покупателями и заказчиками ( в вал.) 62.31 ГруппаФинУчетаКлиенты.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“f5960ec4-8fab-11ef-8675-a036bc73a54c”)));
Запрос.УстановитьПараметр(“ГруппаФинУчетаКлиенты”, ГруппаФинУчетаКлиенты);
ГруппаФинУчетаПоставщики = Новый СписокЗначений;
// пустая ссылка ГруппаФинУчетаПоставщики.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“00000000-0000-0000-0000-000000000000”)));
// Расчеты с поставщиками и подрядчиками (60) ГруппаФинУчетаПоставщики.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.
ПолучитьСсылку(Новый УникальныйИдентификатор(“5b81f2b9-aee3-11ee-abdd-b47af18c93e6”)));
// Расчеты с поставщиками и подрядчиками (вал) (60.21 – 60.22) ГруппаФинУчетаПоставщики.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“604847bb-b085-11ee-abde-b47af18c93e6”)));
// Расчеты с поставщиками и подрядчиками в у.е. (60.31-60.32) ГруппаФинУчетаПоставщики.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“7856bb9e-e5e3-11ee-8670-a036bc73a54c”)));
// Расчеты с перевозчиками (76.14) ГруппаФинУчетаПоставщики.Добавить(Справочники.ГруппыФинансовогоУчетаРасчетов.ПолучитьСсылку(Новый УникальныйИдентификатор(“9962de6b-b088-11ee-abde-b47af18c93e6”)));
Запрос.УстановитьПараметр(“ГруппаФинУчетаПоставщики”,
ГруппаФинУчетаПоставщики);
СписокСчетов60_02 = Новый Массив;
//60.02,60.22,60.32,76.05,76.01
ПланыСчетовХозрасчетный = ПланыСчетов.Хозрасчетный;
СписокСчетов60_02.Добавить(ПланыСчетовХозрасчетный.НайтиПоКоду(“60.02”));
//
СписокСчетов60_02.Добавить(ПланыСчетовХозрасчетный.НайтиПоКоду(“60.22”));
//
СписокСчетов60_02.Добавить(ПланыСчетовХозрасчетный.НайтиПоКоду(“60.32”));
Запрос.УстановитьПараметр(“СписокСчетов60_02”, СписокСчетов60_02);
СписокСчетов60_22_60_32 = Новый Массив;
СписокСчетов60_22_60_32.Добавить(ПланыСчетовХозрасчетный.НайтиПоКоду(“60.22”));
СписокСчетов60_22_60_32.Добавить(ПланыСчетовХозрасчетный.НайтиПоКоду(“60.32”));
Запрос.УстановитьПараметр(“СписокСчетов60_22_60_32”,
СписокСчетов60_22_60_32);
Сч6801 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.01”);
Сч6802 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.02”);
Сч6803 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.03”);
Сч6804 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.04”);
Сч6806 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.06”);
Сч6807 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.07”);
Сч6809 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.09”);
Сч6810 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.10”);
Сч6811 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.11”);
Сч6812 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.12”);
Сч6822 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.22”);
Сч6832 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.32”);
Сч6842 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.42”);
Сч6890 = ПланыСчетовХозрасчетный.НайтиПоКоду(“68.90”);
Запрос.УстановитьПараметр(“Сч6801”, Сч6801);
Запрос.УстановитьПараметр(“Сч6802”, Сч6802);
Запрос.УстановитьПараметр(“Сч6803”, Сч6803);
Запрос.УстановитьПараметр(“Сч6804”, Сч6804);
Запрос.УстановитьПараметр(“Сч6806”, Сч6806);
Запрос.УстановитьПараметр(“Сч6807”, Сч6807);
Запрос.УстановитьПараметр(“Сч6809”, Сч6809);
Запрос.УстановитьПараметр(“Сч6810”, Сч6810);
Запрос.УстановитьПараметр(“Сч6811”, Сч6811);
Запрос.УстановитьПараметр(“Сч6812”, Сч6812);
Запрос.УстановитьПараметр(“Сч6822”, Сч6822);
Запрос.УстановитьПараметр(“Сч6832”, Сч6832);
Запрос.УстановитьПараметр(“Сч6842”, Сч6842);
Запрос.УстановитьПараметр(“Сч6890”, Сч6890);
//
начинаем с конца таблицы
СуммаЗаголовок12308 = 0;
ДебиторскаяЗадолженностьКраткосрочная = 0;
ДебиторскаяЗадолженностьДолгосрочная = 0;
ДебиторскаяЗадолженность = 0;
Сумма12314 = 0;
Запрос.Текст = ТекстЗапросаДанных12314();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12314 = РезультатЗапроса.Выгрузить();
КопияВыгрузка12314 = Выгрузка12314.Скопировать();
КопияВыгрузка12314.Свернуть(, “Сумма”);
Если КопияВыгрузка12314.Количество() = 1 Тогда
Сумма12314 = КопияВыгрузка12314[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма12314;
КонецЕсли;
Сумма12313 = 0;
Запрос.Текст = ТекстЗапросаДанных12313();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12313 =
РезультатЗапроса.Выгрузить();
КопияВыгрузка12313 = Выгрузка12313.Скопировать();
КопияВыгрузка12313.Свернуть(, “Сумма”);
Если
КопияВыгрузка12313.Количество() = 1 Тогда
Сумма12313 = КопияВыгрузка12313[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма12313;
КонецЕсли;
//сообщить(“Сумма12313 = ” + Сумма12313);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма12312 = 0;
Запрос.Текст = ТекстЗапросаДанных12312();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12312 = РезультатЗапроса.Выгрузить();
КопияВыгрузка12312 = Выгрузка12312.Скопировать();
КопияВыгрузка12312.Свернуть(, “Сумма”);
Если
КопияВыгрузка12312.Количество() = 1 Тогда
Сумма12312 = КопияВыгрузка12312[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма12312;
КонецЕсли;
//сообщить(“Сумма12312 = ” + Сумма12312);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма12311 = 0;
Запрос.Текст = ТекстЗапросаДанных12311();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12311 = РезультатЗапроса.Выгрузить();
КопияВыгрузка12311 = Выгрузка12311.Скопировать();
КопияВыгрузка12311.Свернуть(, “Сумма”);
Если КопияВыгрузка12311.Количество() = 1 Тогда
Сумма12311 = КопияВыгрузка12311[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма12311;
КонецЕсли;
//сообщить(“Сумма12311 = ” + Сумма12311);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма_73 = 0;
Запрос.Текст = ТекстЗапросаДанных73();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка73 = РезультатЗапроса.Выгрузить();
КопияВыгрузка73 = Выгрузка73.Скопировать();
КопияВыгрузка73.Свернуть(, “Сумма”);
Если КопияВыгрузка73.Количество() = 1 Тогда Сумма_73 = КопияВыгрузка73[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма_73;
КонецЕсли;
//сообщить(“Сумма_73 = ” + Сумма_73);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма_71 = 0;
Запрос.Текст = ТекстЗапросаДанных71();
РезультатЗапроса =
Запрос.Выполнить();
Выгрузка71 = РезультатЗапроса.Выгрузить();
КопияВыгрузка71 = Выгрузка71.Скопировать();
КопияВыгрузка71.Свернуть(, “Сумма”);
Если КопияВыгрузка71.Количество() = 1 Тогда
Сумма_71 = КопияВыгрузка71[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма_71;
КонецЕсли;
//сообщить(“Сумма_71 = ” + Сумма_71);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма_70 = 0;
Запрос.Текст = ТекстЗапросаДанных70();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка70 = РезультатЗапроса.Выгрузить();
КопияВыгрузка70 = Выгрузка70.Скопировать();
КопияВыгрузка70.Свернуть(, “Сумма”);
Если КопияВыгрузка70.Количество() = 1 Тогда
Сумма_70 = КопияВыгрузка70[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма_70;
КонецЕсли;
//сообщить(“Сумма_70 = ” + Сумма_70);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма_63 = 0;
Запрос.Текст = ТекстЗапросаДанных63();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка63 = РезультатЗапроса.Выгрузить();
КопияВыгрузка63 = Выгрузка63.Скопировать();
КопияВыгрузка63.Свернуть(, “Сумма”);
Если КопияВыгрузка63.Количество() = 1 Тогда
Сумма_63 = КопияВыгрузка63[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма_63;
КонецЕсли;
//сообщить(“Сумма_63 = ” + Сумма_63);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма12308 = 0;
Запрос.Текст = ТекстЗапросаДанных12308();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12308 = РезультатЗапроса.Выгрузить();
ПостОбработкаТаблицы(Выгрузка12308);
КопияВыгрузка12308 = Выгрузка12308.Скопировать();
КопияВыгрузка12308.Свернуть(, “Сумма, НДС, СуммаПросрочено”);
КопияВыгрузка12308ПоКоду = Выгрузка12308.Скопировать();
КопияВыгрузка12308ПоКоду.Свернуть(“КодРодителя”, “Сумма, НДС, СуммаПросрочено”);
Если
КопияВыгрузка12308.Количество() = 1 Тогда
Сумма12308 = КопияВыгрузка12308[0].Сумма;
Сумма12308НДС = КопияВыгрузка12308[0].НДС;
СуммаПросрочено12308 = КопияВыгрузка12308[0].СуммаПросрочено;
СуммаЗаголовок = СуммаЗаголовок + Сумма12308;
СуммаЗаголовокНДС = СуммаЗаголовокНДС + КопияВыгрузка12308[0].НДС;
КонецЕсли;
//сообщить(“Сумма12308 = ” + Сумма12308);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
ВсегоСумма60_22 = 0;
ВсегоСумма60_32 = 0;
ВсегоСумма60_22_60_32 = 0;
ВсегоСумма60_22_просрочено = 0;
ВсегоСумма60_32_просрочено = 0;
ВсегоСумма60_22_60_32_просрочено = 0;
ВсегоСумма60_22_НДС = 0;
ВсегоСумма60_32_НДС = 0;
ВсегоСумма60_22_60_32_НДС = 0;
Запрос.Текст = ТекстЗапросаДанных60_22_60_32();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка60_22_60_32 = РезультатЗапроса.Выгрузить();
Для каждого стр Из Выгрузка60_22_60_32 Цикл
Если стр.Счет.Код = “60.22” Тогда
ВсегоСумма60_22 = ВсегоСумма60_22 + стр.Сумма;
ВсегоСумма60_22_просрочено = ВсегоСумма60_22_просрочено + стр.СуммаПросрочено;
ВсегоСумма60_22_НДС = ВсегоСумма60_22_НДС + стр.НДС;
ИначеЕсли стр.Счет.Код = “60.32” Тогда ВсегоСумма60_32 = ВсегоСумма60_32 + стр.Сумма;
ВсегоСумма60_32_просрочено = ВсегоСумма60_32_просрочено + стр.СуммаПросрочено;
ВсегоСумма60_32_НДС = ВсегоСумма60_32_НДС + стр.НДС;
КонецЕсли;
КонецЦикла;
ВсегоСумма60_22_60_32 = ВсегоСумма60_22 + ВсегоСумма60_32;
СуммаЗаголовок = СуммаЗаголовок + ВсегоСумма60_22_60_32;
ВсегоСумма60_22_60_32_просрочено = ВсегоСумма60_22_просрочено + ВсегоСумма60_32_просрочено;
ВсегоСумма60_22_60_32_НДС = ВсегоСумма60_22_НДС + ВсегоСумма60_32_НДС;
//сообщить(“ВсегоСумма60_22 = ” + ВсегоСумма60_22);
//сообщить(“ВсегоСумма60_32 = ” + ВсегоСумма60_32);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
//Авансы выданные по закупке основных средств Сумма553 = 0;
Сумма553Просрочено = 0;
Сумма553НДС = 0; Запрос.Текст = ТекстЗапросаДанных553();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка553 = РезультатЗапроса.Выгрузить();
КопияВыгрузка553 = Выгрузка553.Скопировать();
КопияВыгрузка553.Свернуть(, “Сумма”);
Если КопияВыгрузка553.Количество() = 1 Тогда
Сумма553 = КопияВыгрузка553[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма553;
КонецЕсли;
//по 63 счету по договору Закупка
Сумма63_Закупка = 0;
Запрос.Текст = ТекстЗапросаДанных63_ПоДоговоруЗакупка();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка63_ПоДоговоруЗакупка = РезультатЗапроса.Выгрузить();
КопияВыгрузка63_ПоДоговоруЗакупка = Выгрузка63_ПоДоговоруЗакупка.Скопировать();
КопияВыгрузка63_ПоДоговоруЗакупка.Свернуть(, “Сумма”);
Если КопияВыгрузка63_ПоДоговоруЗакупка.Количество() = 1 Тогда
Сумма63_Закупка = КопияВыгрузка63_ПоДоговоруЗакупка[0].Сумма;
СуммаЗаголовок = СуммаЗаголовок + Сумма63_Закупка;
КонецЕсли;
Сумма76_01_1 = 0;
Сумма76_01_2 = 0;
Сумма76_01_9 = 0;
Запрос.Текст = ТекстЗапросаДанных76_01();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка76_01 = РезультатЗапроса.Выгрузить();
Для каждого стр Из Выгрузка76_01 Цикл
Если стр.Счет.Код = “76.01.1” Тогда
Сумма76_01_1 = стр.Сумма;
ИначеЕсли стр.Счет.Код = “76.01.2” Тогда
Сумма76_01_2 = стр.Сумма;
ИначеЕсли стр.Счет.Код = “76.01.9” Тогда
Сумма76_01_9 = стр.Сумма;
КонецЕсли;
КонецЦикла;
Сумма76_01 = Сумма76_01_1 + Сумма76_01_2 + Сумма76_01_9;
СуммаЗаголовок = СуммаЗаголовок + Сумма76_01;
//сообщить(“Сумма76_01_1 = ” + Сумма76_01_1);
//сообщить(“Сумма76_01_2 = ” + Сумма76_01_2);
//сообщить(“Сумма76_01_9 = ” + Сумма76_01_9);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“+++++++++++++++++++++++”);
Сумма76_05 = 0;
Сумма76_05_Просрочено = 0;
Сумма76_05_НДС = 0;
Запрос.Текст =
ТекстЗапросаДанных76_05();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка76_05 = РезультатЗапроса.Выгрузить();
КопияВыгрузка76_05 = Выгрузка76_05.Скопировать();
КопияВыгрузка76_05.Свернуть(, “Сумма, СуммаПросрочено”);
Если
КопияВыгрузка76_05.Количество() = 1 Тогда
Сумма76_05 = КопияВыгрузка76_05[0].Сумма;
Сумма76_05_Просрочено = КопияВыгрузка76_05[0].СуммаПросрочено;
СуммаЗаголовок = СуммаЗаголовок + Сумма76_05;
КонецЕсли;
Сумма12310 = 0;
СуммаПросрочено12310 = 0;
Сумма12310НДС = 0;
Запрос.Текст = ТекстЗапросаДанных12310();
//авансы выданные РезультатЗапроса = Запрос.Выполнить();
Выгрузка12310 = РезультатЗапроса.Выгрузить();
// Данные строки перечня дебиторов необходимо отражать по фиксированным группам, с расшифровкой по контрагентам:
ПараметрыОтбораПоСчету60_02 = Новый Структура(“Счет”, ПланыСчетовХозрасчетный.НайтиПоКоду(“60.02”));
ПараметрыОтбораПоСчету60_22 = Новый Структура(“Счет”, ПланыСчетовХозрасчетный.НайтиПоКоду(“60.22”));
ПараметрыОтбораПоСчету60_32 = Новый Структура(“Счет”, ПланыСчетовХозрасчетный.НайтиПоКоду(“60.32”));
ПостОбработкаТаблицы(Выгрузка12310);
КопияВыгрузка12310 = Выгрузка12310.Скопировать();
КопияВыгрузка12310_60_02 = Выгрузка12310.Скопировать(ПараметрыОтбораПоСчету60_02);
КопияВыгрузка12310_60_22 = Выгрузка12310.Скопировать(ПараметрыОтбораПоСчету60_22);
КопияВыгрузка12310_60_32 = Выгрузка12310.Скопировать(ПараметрыОтбораПоСчету60_32);
КопияВыгрузка12310.Свернуть(, “Сумма, НДС, СуммаПросрочено”); КопияВыгрузка12310ПоКоду = Выгрузка12310.Скопировать();
КопияВыгрузка12310ПоКоду.Свернуть(“КодРодителя”, “Сумма, НДС, СуммаПросрочено”);
Если
КопияВыгрузка12310.Количество() = 1 Тогда Сумма12310 = КопияВыгрузка12310[0].Сумма;
Сумма12310НДС = КопияВыгрузка12310[0].НДС;
СуммаПросрочено12310 = КопияВыгрузка12310[0].СуммаПросрочено;
СуммаЗаголовок = СуммаЗаголовок + Сумма12310;
СуммаЗаголовокНДС = СуммаЗаголовокНДС + Сумма12310НДС;
КонецЕсли;
//КопияВыгрузка12310_60_02.Свернуть(, “Сумма, НДС, СуммаПросрочено”);
//КопияВыгрузка12310ПоКоду = Выгрузка12310.Скопировать(ПараметрыОтбораПоСчету60_02);
//КопияВыгрузка12310ПоКоду.Свернуть(“КодРодителя”, “Сумма, НДС, СуммаПросрочено”);
//
//Если КопияВыгрузка12310_60_02.Количество() = 1 Тогда
// Сумма12310 = КопияВыгрузка12310_60_02[0].Сумма;
// СуммаПросрочено12310 = КопияВыгрузка12310_60_02[0].СуммаПросрочено;
// Сумма12310НДС = КопияВыгрузка12310_60_02[0].НДС;
// СуммаЗаголовок = СуммаЗаголовок + Сумма12310;
// СуммаЗаголовокНДС = СуммаЗаголовокНДС + Сумма12310НДС;
//КонецЕсли;
Сумма12310ПрочиеДебиторы = 0;
Сумма12310ПрочиеДебиторыСуммаПросрочено = 0;
Сумма12310ПрочиеДебиторыНДС = 0;
Для каждого стр Из КопияВыгрузка12310ПоКоду Цикл
Если стр.КодРодителя = “”
Тогда
Сумма12310ПрочиеДебиторы = стр.Сумма;
Сумма12310ПрочиеДебиторыСуммаПросрочено = стр.СуммаПросрочено;
Сумма12310ПрочиеДебиторыНДС = стр.НДС;
КонецЕсли;
КонецЦикла;
//сообщить(“Сумма12310 = ” + Сумма12310);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“СуммаПросрочено12310 = ” + СуммаПросрочено12310);
//сообщить(“+++++++++++++++++++++++”);
Запрос.Текст =
ТекстЗапросаДанных12309();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12309 = РезультатЗапроса.Выгрузить();
//Данные строки перечня дебиторов необходимо отражать по
//фиксированным группам, с расшифровкой по контрагентам:
ПостОбработкаТаблицы(Выгрузка12309);
КопияВыгрузка12309 = Выгрузка12309.Скопировать();
КопияВыгрузка12309.Свернуть(, “Сумма, СуммаПросрочено”);
КопияВыгрузка12309ПоКоду = Выгрузка12309.Скопировать();
КопияВыгрузка12309ПоКоду.Свернуть(“КодРодителя”, “Сумма, СуммаПросрочено”);
Сумма12309 = 0;
Сумма12309Просрочено = 0;
Если
КопияВыгрузка12309.Количество() = 1 Тогда
Сумма12309 = КопияВыгрузка12309[0].Сумма;
Сумма12309Просрочено = КопияВыгрузка12309[0].СуммаПросрочено;
СуммаЗаголовок = СуммаЗаголовок + Сумма12309;
КонецЕсли;
//Сумма12309Просрочено = Сумма12309Долгосрочная + Сумма12309Краткосрочная;
//сообщить(“Сумма12309 = ” + Сумма12309);
//сообщить(“СуммаЗаголовок = ” + СуммаЗаголовок);
//сообщить(“СуммаПросроченоЗаголовок = ” + СуммаПросроченоЗаголовок);
//сообщить(“ДебиторскаяЗадолженностьДолгосрочная = ” + ДебиторскаяЗадолженностьДолгосрочная);
//сообщить(“+++++++++++++++++++++++”);
Сумма12301 = 0;
Сумма12301Просрочено = 0;
Сумма12301НДС = 0;
Запрос.Текст = ТекстЗапросаДанных12301();
РезультатЗапроса = Запрос.Выполнить();
Выгрузка12301 = РезультатЗапроса.Выгрузить();
КопияВыгрузка12301 = Выгрузка12301.Скопировать();
КопияВыгрузка12301.Свернуть(, “Сумма, СуммаПросрочено”);
Если КопияВыгрузка12301.Количество() = 1 Тогда
Сумма12301 = КопияВыгрузка12301[0].Сумма;
Сумма12301Просрочено = КопияВыгрузка12301[0].СуммаПросрочено;
СуммаЗаголовок = СуммаЗаголовок + Сумма12301;
КонецЕсли;
//1. стр.12301 Дебиторская задолженность долгосрочная (62.Д, 76.Д, 62.21.Д, 58.02)
ДебиторскаяЗадолженностьДолгосрочная = Сумма12301;
ДебиторскаяЗадолженностьДолгосрочнаяПросрочено = Сумма12301Просрочено;
ДебиторскаяЗадолженностьДолгосрочнаяНДС = Сумма12301НДС;
СуммаЗаголовок12308 = Сумма_73 + Сумма_71 + Сумма_70 + Сумма_63 + Сумма12308;
//2. Дебиторская задолженность краткосрочная
ДебиторскаяЗадолженностьКраткосрочнаяПросрочено = Сумма12309Просрочено + СуммаПросрочено12310;
Сумма12309НДС = 0;
Сумма12310ДопСуммы = ВсегоСумма60_22_60_32 + Сумма76_01 + Сумма76_05 + Сумма63_Закупка + Сумма553;
Сумма12310_итого = Сумма12310 + Сумма12310ДопСуммы;
Сумма12310ДопСуммыНДС = ВсегоСумма60_22_60_32_НДС; Сумма12310НДС_итого = Сумма12310НДС + Сумма12310ДопСуммыНДС;
СуммаПросрочено12310_итого = СуммаПросрочено12310 + ВсегоСумма60_22_60_32_просрочено + Сумма76_05_Просрочено + Сумма553Просрочено;
Сумма12310НДС_итого = Сумма12310НДС + ВсегоСумма60_22_60_32_НДС;
ДебиторскаяЗадолженностьКраткосрочная = Сумма12314 + Сумма12313 + Сумма12312 + Сумма12311 + СуммаЗаголовок12308 + Сумма12309 + Сумма12310_итого;
ДебиторскаяЗадолженностьКраткосрочнаяНДС = Сумма12310НДС_итого + Сумма12309НДС;
//стр.1230 Дебиторская задолженность
ДебиторскаяЗадолженность = ДебиторскаяЗадолженностьКраткосрочная + ДебиторскаяЗадолженностьДолгосрочная;
ДебиторскаяЗадолженностьПросрочено = ДебиторскаяЗадолженностьКраткосрочнаяПросрочено + ДебиторскаяЗадолженностьДолгосрочнаяПросрочено;
//ДебиторскаяЗадолженностьКраткосрочнаяНДС = Сумма12310НДС_итого + Сумма12309НДС;
ДебиторскаяЗадолженностьНДС = ДебиторскаяЗадолженностьКраткосрочнаяНДС + ДебиторскаяЗадолженностьДолгосрочнаяНДС;
#КонецОбласти
#Область ПолучениеДанныхПодвала
//Получение данных Подвала
ЗапросПодвал = Новый Запрос;
ЗапросПодвал.Текст = ТекстЗапросаПодвал();
ЗапросПодвал.УстановитьПараметр(“Организация”, Организация);
ЗапросПодвал.УстановитьПараметр(“Период”, КонецДня(ДатаСостояние));
РезультатЗапроса = ЗапросПодвал.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Если Выборка.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизаций.Руководитель Тогда
ФИОРуководителя = Выборка.ФизическоеЛицо.ФИО;
ИначеЕсли Выборка.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизаций.ГлавныйБухгалтер Тогда
ФИОГлБух = Выборка.ФизическоеЛицо.ФИО;
КонецЕсли;
КонецЦикла;
Подвал.Вставить(“ТекущаяДата”, ТекущаяДатаСеанса());
Подвал.Вставить(“ФИОРуководителя”, ФИОРуководителя);
Подвал.Вставить(“ФИОГлБух”, ФИОГлБух);
#КонецОбласти
#Область Заполнение
#Область ЗаполнениеШапки
//Получение областей макета
ОбластьПустаяСтрока
= Макет.ПолучитьОбласть(“ОбластьПустаяСтрока”);
ОбластьШапкаНаименование
= Макет.ПолучитьОбласть(“ОбластьШапкаНаименование”);
ОбластьШапка
= Макет.ПолучитьОбласть(“ОбластьШапка”);
ОбластьТаблицаШапка
= Макет.ПолучитьОбласть(“ОбластьТаблицаШапка”);
ОбластьТаблицаСтрока
= Макет.ПолучитьОбласть(“ОбластьТаблицаСтрока”);
ОбластьТаблицаСтрокаЗаголовок
= Макет.ПолучитьОбласть(“ОбластьТаблицаСтрокаЗаголовок”);
ОбластьТаблицаИтог
= Макет.ПолучитьОбласть(“ОбластьТаблицаИтог”);
ОбластьПодвал
= Макет.ПолучитьОбласть(“ОбластьПодвал”);
ОбластьТаблицаСтрокаЗаголовокНеЖирный = Макет.ПолучитьОбласть(“ОбластьТаблицаСтрокаЗаголовокНеЖирный”);
//Заполнение макета ОбластьШапкаНаименование.Параметры.Заполнить(Наименование);
ОбластьШапка.Параметры.Заполнить(Шапка);
ОбластьПодвал.Параметры.Заполнить(Подвал);
//Вывод в табличный документ
Табдок.Вывести(ОбластьШапкаНаименование);
Табдок.Вывести(ОбластьПустаяСтрока);
Табдок.Вывести(ОбластьПустаяСтрока);
Табдок.Вывести(ОбластьШапка);
Табдок.Вывести(ОбластьПустаяСтрока);
Табдок.Вывести(ОбластьПустаяСтрока);
ОбластьТаблицаШапка.Параметры.Валюта = Валюта;
Табдок.Вывести(ОбластьТаблицаШапка);
#КонецОбласти
#Область ЗаполнениеТаблицы
//Вывод Таблицы
НаименованиеЗаголовок = “стр.1230 Дебиторская задолженность”;
ДебиторскаяЗадолженность = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженность);
ДебиторскаяЗадолженностьПросрочено = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьПросрочено);
ДебиторскаяЗадолженностьНДС = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьНДС);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”,
ДебиторскаяЗадолженность);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”,
ДебиторскаяЗадолженностьПросрочено);
СтрокаЗаголовок.Вставить(“НДС”,
ДебиторскаяЗадолженностьНДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
ОбластьТаблицаИтог.Параметры.Заполнить(СтрокаЗаголовок);
// Дублирование в подвал таблицы
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
НаименованиеЗаголовок = “1. стр.12301 Дебиторская задолженность долгосрочная (62.Д, 76.Д, 62.21.Д, 58.02)”;
ДебиторскаяЗадолженностьДолгосрочная = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьДолгосрочная);
ДебиторскаяЗадолженностьДолгосрочнаяПросрочено = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьДолгосрочнаяПросрочено);
ДебиторскаяЗадолженностьДолгосрочнаяНДС = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьДолгосрочнаяНДС);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”,
ДебиторскаяЗадолженностьДолгосрочная);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”,
ДебиторскаяЗадолженностьДолгосрочнаяПросрочено);
СтрокаЗаголовок.Вставить(“НДС”,
ДебиторскаяЗадолженностьДолгосрочнаяНДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12301 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
НаименованиеЗаголовок = “2. Дебиторская задолженность краткосрочная”;
ДебиторскаяЗадолженностьКраткосрочная = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьКраткосрочная);
ДебиторскаяЗадолженностьКраткосрочнаяПросрочено = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьКраткосрочнаяПросрочено);
ДебиторскаяЗадолженностьКраткосрочнаяНДС = ОкруглениеПриВыводеНаПечать(ДебиторскаяЗадолженностьКраткосрочнаяНДС);
СтрокаЗаголовок.Вставить(“Наименование”,
НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”,
ДебиторскаяЗадолженностьКраткосрочная);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, ДебиторскаяЗадолженностьКраткосрочнаяПросрочено);
СтрокаЗаголовок.Вставить(“НДС”,
ДебиторскаяЗадолженностьКраткосрочнаяНДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
#Область ПокупателиИЗаказчики
НаименованиеЗаголовок = “стр.12309 Покупатели и заказчики ((62.01, 62.21, 62.31, 76.06, 76.26, (-)63 по типу договора Реализация, Прием на комиссию))”;
Сумма12309 = ОкруглениеПриВыводеНаПечать(Сумма12309);
Сумма12309Просрочено = ОкруглениеПриВыводеНаПечать(Сумма12309Просрочено);
Сумма12309НДС = 0;
СтрокаЗаголовок.Вставить(“Наименование”,
НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“
Сумма”,
Сумма12309);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”,
Сумма12309Просрочено);
СтрокаЗаголовок.Вставить(“НДС”,
Сумма12309НДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Сумма12309ПрочиеДебиторы = 0; Сумма12309ПрочиеДебиторыПросрочено = 0;
Для Каждого Стр12309ПоКоду Из КопияВыгрузка12309ПоКоду Цикл
//Сумма12309Просрочено = Стр12309ПоКоду.Дней_91_Сумма + Стр12309ПоКоду.Дней_365_Сумма;
Сумма12309Просрочено = Стр12309ПоКоду.СуммаПросрочено;
Сумма12309Просрочено = ОкруглениеПриВыводеНаПечать(Сумма12309Просрочено);
Если Стр12309ПоКоду.КодРодителя <> “” Тогда
РодительСсылка = Справочники.Контрагенты.НайтиПоКоду(Стр12309ПоКоду.КодРодителя);
Если Стр12309ПоКоду.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
Стр12309ПоКоду.Сумма = ОкруглениеПриВыводеНаПечать(Стр12309ПоКоду.Сумма);
Если Стр12309ПоКоду.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
//ТекСуммаПросрочено = Стр12309ПоКоду.Дней_91_Сумма + Стр12309ПоКоду.Дней_365_Сумма;
ТекСуммаПросрочено = Стр12309ПоКоду.СуммаПросрочено;
ТекСуммаПросрочено = ОкруглениеПриВыводеНаПечать(ТекСуммаПросрочено);
СтрокаЗаголовок.Вставить(“Наименование”,
РодительСсылка.Наименование);
СтрокаЗаголовок.Вставить(“Сумма”,
Стр12309ПоКоду.Сумма);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, Сумма12309Просрочено);
СтрокаЗаголовок.Вставить(“НДС”,
0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
ОбластьТаблицаСтрокаЗаголовок.Параметры.СуммаПросрочено = ТекСуммаПросрочено;
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12309 Цикл
Если НЕ СтрокаТаб.КодРодителя = Стр12309ПоКоду.КодРодителя Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
Если ЗначениеЗаполнено(СтрокаТаб.Контрагент) Тогда
ОбластьТаблицаСтрока.Параметры.Код = СтрокаТаб.Контрагент.Код;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “” + СтрокаТаб.Контрагент.ИНН + “/” + СтрокаТаб.Контрагент.КПП;
Иначе
ОбластьТаблицаСтрока.Параметры.Код = “”;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “”;
КонецЕсли;
//ТекСуммаПросрочено = 0;
//
ТекСуммаПросрочено = СтрокаТаб.Дней_91_Сумма + СтрокаТаб.Дней_365_Сумма;
ТекСуммаПросрочено = СтрокаТаб.СуммаПросрочено;
ТекСуммаПросрочено = ОкруглениеПриВыводеНаПечать(ТекСуммаПросрочено);
ОбластьТаблицаСтрока.Параметры.СуммаПросрочено = ТекСуммаПросрочено;
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
ОбластьТаблицаСтрока.Параметры.СуммаПросрочено = 0;
ОбластьТаблицаСтрока.Параметры.ДатаВЗ = “”;
КонецЦикла;
Иначе
Сумма12309ПрочиеДебиторы = Сумма12309ПрочиеДебиторы + Стр12309ПоКоду.Сумма;
//
Сумма12309ПрочиеДебиторыПросрочено =
Сумма12309ПрочиеДебиторыПросрочено + Стр12309ПоКоду.Дней_365_Сумма + Стр12309ПоКоду.Дней_91_Сумма;
Сумма12309ПрочиеДебиторыПросрочено = Сумма12309ПрочиеДебиторыПросрочено + Стр12309ПоКоду.СуммаПросрочено;
КонецЕсли;
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
Сумма12309ПрочиеДебиторы =
ОкруглениеПриВыводеНаПечать(Сумма12309ПрочиеДебиторы);
Сумма12309ПрочиеДебиторыПросрочено = ОкруглениеПриВыводеНаПечать(Сумма12309ПрочиеДебиторыПросрочено);
СтрокаЗаголовок.Вставить(“Наименование”, “Прочие дебиторы”);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма12309ПрочиеДебиторы);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, Сумма12309ПрочиеДебиторыПросрочено);
СтрокаЗаголовок.Вставить(“НДС”, 0);
Если Сумма12309ПрочиеДебиторы > 0 Тогда ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка12309 Цикл
Если СтрокаТаб.КодРодителя <> “” Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ТекСуммаПросрочено = СтрокаТаб.СуммаПросрочено;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ТекСуммаПросрочено = ОкруглениеПриВыводеНаПечать(ТекСуммаПросрочено);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.СуммаПросрочено = ТекСуммаПросрочено;
Если ЗначениеЗаполнено(СтрокаТаб.Контрагент) Тогда
ОбластьТаблицаСтрока.Параметры.Код = СтрокаТаб.Контрагент.Код;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “” + СтрокаТаб.Контрагент.ИНН + “/” + СтрокаТаб.Контрагент.КПП;
Иначе
ОбластьТаблицаСтрока.Параметры.Код = “”;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “”;
КонецЕсли;
Если СтрокаТаб.ДатаВЗ > Дата(2900, 1, 1, 0, 0, 0) Тогда
ОбластьТаблицаСтрока.Параметры.ДатаВЗ = “”;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#Область АвансыВыданные
НаименованиеЗаголовок = “стр.12310 Авансы выданные (60.02, 60.22, 60.32, 76.01.1, 76.01.2, 76.01.9, 76.05, 76.25, (-)76ВА, (-)63 по типу договора Закупка, (-)Авансы выданные по закупке основных средств, (-)НДС по авансам”;
Сумма12310_итого = ОкруглениеПриВыводеНаПечать(Сумма12310_итого);
Сумма12310НДС_итого = ОкруглениеПриВыводеНаПечать(Сумма12310НДС_итого);
СуммаПросрочено12310_итого = ОкруглениеПриВыводеНаПечать(СуммаПросрочено12310_итого);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”,
Сумма12310_итого);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, СуммаПросрочено12310_итого);
СтрокаЗаголовок.Вставить(“НДС”, Сумма12310НДС_итого);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрПоКоду Из КопияВыгрузка12310ПоКоду Цикл
Если СтрПоКоду.КодРодителя <> “” Тогда
РодительСсылка = Справочники.Контрагенты.НайтиПоКоду(СтрПоКоду.КодРодителя);
Если СтрПоКоду.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрПоКоду.Сумма = ОкруглениеПриВыводеНаПечать(СтрПоКоду.Сумма);
Если СтрПоКоду.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрПоКоду.СуммаПросрочено = ОкруглениеПриВыводеНаПечать(СтрПоКоду.СуммаПросрочено);
СтрПоКоду.НДС = ОкруглениеПриВыводеНаПечать(СтрПоКоду.НДС);
СтрокаЗаголовок.Вставить(“Наименование”, РодительСсылка.Наименование);
СтрокаЗаголовок.Вставить(“Сумма”,
СтрПоКоду.Сумма);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, СтрПоКоду.СуммаПросрочено);
СтрокаЗаголовок.Вставить(“НДС”, СтрПоКоду.НДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12310 Цикл
Если СтрокаТаб.КодРодителя <> СтрПоКоду.КодРодителя Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли; С
трокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.СуммаПросрочено = ОкруглениеПриВыводеНаПечать(СтрокаТаб.СуммаПросрочено);
СтрокаТаб.НДС = ОкруглениеПриВыводеНаПечать(СтрокаТаб.НДС);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
Если
ЗначениеЗаполнено(СтрокаТаб.Контрагент) Тогда
ОбластьТаблицаСтрока.Параметры.Код = СтрокаТаб.Контрагент.Код;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “” + СтрокаТаб.Контрагент.ИНН + “/” + СтрокаТаб.Контрагент.КПП;
Иначе
Если СтрокаТаб.Счет.Код = “76.01.1” ИЛИ СтрокаТаб.Счет.Код = “76.01.2” ИЛИ СтрокаТаб.Счет.Код = “76.01.9” Тогда
ОбластьТаблицаСтрока.Параметры.Контрагент = СтрокаТаб.Счет.Наименование;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Код = “”;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “”;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
Иначе
Сумма1232 = СтрПоКоду.Сумма;
Сумма1232НДС = СтрПоКоду.НДС;
КонецЕсли;
КонецЦикла;
Сумма12310ПрочиеДебиторы = ОкруглениеПриВыводеНаПечать(Сумма12310ПрочиеДебиторы);
Сумма12310ПрочиеДебиторыСуммаПросрочено = ОкруглениеПриВыводеНаПечать(Сумма12310ПрочиеДебиторыСуммаПросрочено);
Сумма12310ПрочиеДебиторыНДС = ОкруглениеПриВыводеНаПечать(Сумма12310ПрочиеДебиторыНДС);
СтрокаЗаголовок.Вставить(“Наименование”, “Прочие дебиторы”);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма12310ПрочиеДебиторы);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, Сумма12310ПрочиеДебиторыСуммаПросрочено);
СтрокаЗаголовок.Вставить(“НДС”, Сумма12310ПрочиеДебиторыНДС);
Если Сумма12310ПрочиеДебиторы <> 0 Тогда ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка12310 Цикл
Если СтрокаТаб.КодРодителя <> “” Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.СуммаПросрочено = ОкруглениеПриВыводеНаПечать(СтрокаТаб.СуммаПросрочено);
СтрокаТаб.НДС = ОкруглениеПриВыводеНаПечать(СтрокаТаб.НДС);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
Если ЗначениеЗаполнено(СтрокаТаб.Контрагент) Тогда
ОбластьТаблицаСтрока.Параметры.Код = СтрокаТаб.Контрагент.Код;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “” + СтрокаТаб.Контрагент.ИНН + “/” + СтрокаТаб.Контрагент.КПП; Иначе
Если СтрокаТаб.Счет.Код = “76.01.1” ИЛИ СтрокаТаб.Счет.Код = “76.01.2” ИЛИ СтрокаТаб.Счет.Код = “76.01.9” Тогда ОбластьТаблицаСтрока.Параметры.Контрагент = СтрокаТаб.Счет.Наименование;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Код = “”;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “”;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#Область Счет60_22
НаименованиеЗаголовок = “Расчеты по авансам выданным (в валюте) (60.22)”;
ВсегоСумма60_22 = ОкруглениеПриВыводеНаПечать(ВсегоСумма60_22); ВсегоСумма60_22_просрочено = ОкруглениеПриВыводеНаПечать(ВсегоСумма60_22_просрочено);
ВсегоСумма60_22_НДС = ОкруглениеПриВыводеНаПечать(ВсегоСумма60_22_НДС);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”, ВсегоСумма60_22);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, ВсегоСумма60_22_просрочено);
СтрокаЗаголовок.Вставить(“НДС”, ВсегоСумма60_22_НДС); ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и ВсегоСумма60_22 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина; КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка60_22_60_32 Цикл
Если СтрокаТаб.Счет.Код = “60.32” Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.СуммаПросрочено = ОкруглениеПриВыводеНаПечать(СтрокаТаб.СуммаПросрочено);
СтрокаТаб.НДС = ОкруглениеПриВыводеНаПечать(СтрокаТаб.НДС);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
#КонецОбласти
#Область Счет60_32
НаименованиеЗаголовок = “Расчеты по авансам выданным (в у.е.) (60.32)”;
ВсегоСумма60_32 = ОкруглениеПриВыводеНаПечать(ВсегоСумма60_32);
ВсегоСумма60_32_просрочено = ОкруглениеПриВыводеНаПечать(ВсегоСумма60_32_просрочено);
ВсегоСумма60_32_НДС = ОкруглениеПриВыводеНаПечать(ВсегоСумма60_32_НДС);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”, ВсегоСумма60_32);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, ВсегоСумма60_32_просрочено);
СтрокаЗаголовок.Вставить(“НДС”, ВсегоСумма60_32_НДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и ВсегоСумма60_32 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка60_22_60_32 Цикл
Если СтрокаТаб.Счет.Код = “60.22” Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.СуммаПросрочено = ОкруглениеПриВыводеНаПечать(СтрокаТаб.СуммаПросрочено);
СтрокаТаб.НДС = ОкруглениеПриВыводеНаПечать(СтрокаТаб.НДС);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1; Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
#КонецОбласти
#Область Обработка_553
НаименованиеЗаголовок = “Авансы выданные по закупке основных средств”;
Сумма553 = ОкруглениеПриВыводеНаПечать(Сумма553);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”,
Сумма553); СтрокаЗаголовок.Вставить(“СуммаПросрочено”, Сумма553Просрочено);
СтрокаЗаголовок.Вставить(“НДС”, Сумма553НДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма553 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка553 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
#КонецОбласти
#Область Счет63_Закупка НаименованиеЗаголовок = “Резервы по сомнительным долгам 63”;
Сумма63_Закупка = ОкруглениеПриВыводеНаПечать(Сумма63_Закупка);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма63_Закупка);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма63_Закупка = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина; КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка63_ПоДоговоруЗакупка Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
#КонецОбласти
#Область Счет76_01_1
НаименованиеЗаголовок = “Расчеты по имущественному и личному страхованию (76.01.1)”;
Сумма76_01_1 = ОкруглениеПриВыводеНаПечать(Сумма76_01_1);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма76_01_1); СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма76_01_1 = 0 Тогда
ВыводимСтроку = Ложь; Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
#КонецОбласти
#Область Счет76_01_2
НаименованиеЗаголовок = “Платежи (взносы) по добровольному страхованию на случай смерти и причинения вреда здоровью (76.01.2)”;
Сумма76_01_2 = ОкруглениеПриВыводеНаПечать(Сумма76_01_2);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”, Сумма76_01_2); СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма76_01_2 = 0 Тогда
ВыводимСтроку = Ложь; Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
#КонецОбласти
#Область Счет76_01_9
НаименованиеЗаголовок = “Платежи (взносы) по прочим видам страхования (76.01.9)”;
Сумма76_01_9 = ОкруглениеПриВыводеНаПечать(Сумма76_01_9);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”, Сумма76_01_9);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма76_01_9 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
#КонецОбласти
#Область Счет76_05
НаименованиеЗаголовок = “Расчеты с прочими поставщиками и подрядчиками (76.05)”;
Сумма76_05 = ОкруглениеПриВыводеНаПечать(Сумма76_05);
Сумма76_05_Просрочено = ОкруглениеПриВыводеНаПечать(Сумма76_05_Просрочено);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”, Сумма76_05);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, Сумма76_05_Просрочено);
СтрокаЗаголовок.Вставить(“НДС”, Сумма76_05_НДС); ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма76_05 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка76_05 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.СуммаПросрочено = ОкруглениеПриВыводеНаПечать(СтрокаТаб.СуммаПросрочено);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
#КонецОбласти
#Область ПрочиеДебиторы
НаименованиеЗаголовок = “стр.12308 Прочие дебиторы (58.03, 70, 71, 73, 76.02, 76.03, 76.09, 76.25, 76.29, 76.41, 76.49, 76.14, 76.07.5, (-)63 по типу договора “”внутренний займ””)”;
СуммаЗаголовок12308 = ОкруглениеПриВыводеНаПечать(СуммаЗаголовок12308);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, СуммаЗаголовок12308);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
//Сумма12308 = 0;
// Данные строки перечня дебиторов необходимо отражать по подгруппам, с расшифровкой по контрагентам:
Для Каждого СтрПоКоду Из КопияВыгрузка12308ПоКоду Цикл
Если СтрПоКоду.КодРодителя <> “” Тогда
РодительСсылка = Справочники.Контрагенты.НайтиПоКоду(СтрПоКоду.КодРодителя);
Если СтрПоКоду.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрПоКоду.Сумма = ОкруглениеПриВыводеНаПечать(СтрПоКоду.Сумма);
СтрокаЗаголовок.Вставить(“Наименование”, РодительСсылка.Наименование);
СтрокаЗаголовок.Вставить(“Сумма”, СтрПоКоду.Сумма);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, СтрПоКоду.СуммаПросрочено);
СтрокаЗаголовок.Вставить(“НДС”, СтрПоКоду.НДС);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12308 Цикл
Если СтрокаТаб.КодРодителя <> СтрПоКоду.КодРодителя Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
Если ЗначениеЗаполнено(СтрокаТаб.Контрагент) Тогда
ОбластьТаблицаСтрока.Параметры.Код = СтрокаТаб.Контрагент.Код;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “” + СтрокаТаб.Контрагент.ИНН + “/” + СтрокаТаб.Контрагент.КПП;
Иначе
ОбластьТаблицаСтрока.Параметры.Код = “”;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “”;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
Иначе
Сумма12308 = СтрПоКоду.Сумма;
КонецЕсли;
КонецЦикла;
Сумма12308 = ОкруглениеПриВыводеНаПечать(Сумма12308);
СтрокаЗаголовок.Вставить(“Наименование”, “Прочие дебиторы”);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма12308);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если Сумма12308 > 0 Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка12308 Цикл
Если СтрокаТаб.КодРодителя <> “” Тогда
Продолжить;
КонецЕсли;
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
Если ЗначениеЗаполнено(СтрокаТаб.Контрагент) Тогда
ОбластьТаблицаСтрока.Параметры.Код = СтрокаТаб.Контрагент.Код;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “” + СтрокаТаб.Контрагент.ИНН + “/” + СтрокаТаб.Контрагент.КПП;
Иначе
ОбластьТаблицаСтрока.Параметры.Код = “”;
ОбластьТаблицаСтрока.Параметры.ИННКПП = “”;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#Область вывод63счета
НаименованиеЗаголовок = “Резервы по сомнительным долгам 63”;
Сумма_63 = ОкруглениеПриВыводеНаПечать(Сумма_63);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма_63);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма_63 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка63 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#Область РасчетыСПерсоналом
НаименованиеЗаголовок = “Расчеты с персоналом по оплате труда 70”;
Сумма_70 = ОкруглениеПриВыводеНаПечать(Сумма_70);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма_70);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма_70 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
#КонецОбласти
#Область РасчетыСПодотчетными
НаименованиеЗаголовок = “Расчеты с подотчетными лицами 71”;
Сумма_71 = ОкруглениеПриВыводеНаПечать(Сумма_71);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма_71);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма_71 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
#КонецОбласти
#Область РасчетыСПерсоналомПоПрочимОперациям
НаименованиеЗаголовок = “Расчеты с персоналом по прочим операциям 73”;
Сумма_73 = ОкруглениеПриВыводеНаПечать(Сумма_73);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма_73);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Если НеПоказыватьНулевыеСуммы и Сумма_73 = 0 Тогда
ВыводимСтроку = Ложь;
Иначе
ВыводимСтроку = Истина;
КонецЕсли;
Если ВыводимСтроку Тогда
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
КонецЕсли;
Для Каждого СтрокаТаб Из Выгрузка73 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
#КонецОбласти
#Область РасчетыПоНалогам
НаименованиеЗаголовок = “стр.12311 Расчеты по налогам (68 сч.) (68.01, 68.02, 68.03, 68.04, 68.06, 68.07, 68.09, 68.10, 68.11, 68.12, 68.22, 68.32, 68.42, 68.90)”;
Сумма12311 = ОкруглениеПриВыводеНаПечать(Сумма12311);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма12311);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12311 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#Область РасчетыПоСоцСтрахованию
НаименованиеЗаголовок = “стр.12312 Расчеты по соц.страхованию (69 сч.) (69.01, 69.02, 69.03, 69.04, 69.05, 69.06, 69.09, 69.11, 69.12, 69.13)”;
Сумма12312 = ОкруглениеПриВыводеНаПечать(Сумма12312);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма12312); СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0);
СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12312 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#Область ЧистыеИнвестицииВАренду
НаименованиеЗаголовок = “стр.12313 Чистые инвестиции в аренду (76.08.1, 76.08.2, 76.08.5, 76.08.7,(-) 76.08.3,(-) 76.08.6)”;
Сумма12313 = ОкруглениеПриВыводеНаПечать(Сумма12313);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок);
СтрокаЗаголовок.Вставить(“Сумма”, Сумма12313);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0); СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12313 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#Область ЗадолженностьУчредителей
НаименованиеЗаголовок = “стр.12314 Задолженность участников (учредителей) по вкладам в уставный капитал”;
Сумма12314 = ОкруглениеПриВыводеНаПечать(Сумма12314);
СтрокаЗаголовок.Вставить(“Наименование”, НаименованиеЗаголовок); СтрокаЗаголовок.Вставить(“Сумма”, Сумма12314);
СтрокаЗаголовок.Вставить(“СуммаПросрочено”, 0); СтрокаЗаголовок.Вставить(“НДС”, 0);
ОбластьТаблицаСтрокаЗаголовок.Параметры.Заполнить(СтрокаЗаголовок);
Табдок.Вывести(ОбластьТаблицаСтрокаЗаголовок);
Для Каждого СтрокаТаб Из Выгрузка12314 Цикл
Если СтрокаТаб.Сумма = 0 Тогда
Продолжить;
КонецЕсли;
СтрокаТаб.Сумма = ОкруглениеПриВыводеНаПечать(СтрокаТаб.Сумма);
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаТаб);
ОбластьТаблицаСтрока.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Табдок.Вывести(ОбластьТаблицаСтрока);
КонецЦикла;
ОбластьТаблицаСтрока.Параметры.Заполнить(СтрокаПустая);
#КонецОбласти
#КонецОбласти
#КонецОбласти //ЗаполнениеТаблицы
#КонецОбласти //Заполнение
Табдок.Вывести(ОбластьПустаяСтрока);
Табдок.Вывести(ОбластьТаблицаИтог);
Табдок.Вывести(ОбластьПустаяСтрока);
Табдок.Вывести(ОбластьПодвал);
Возврат Табдок;
КонецФункции Функция ТекстЗапросаПодвал()
Текст = “ВЫБРАТЬ
| ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо КАК ФизическоеЛицо,
| ОтветственныеЛицаОрганизацийСрезПоследних.ОтветственноеЛицо КАК ОтветственноеЛицо
|ИЗ
| РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(
| &Период,
| СтруктурнаяЕдиница = &Организация
| И НЕ ФизическоеЛицо = ЗНАЧЕНИЕ(Справочник.ФизическиеЛица.ПустаяСсылка)
| И (ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.Руководитель)
| ИЛИ ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.ГлавныйБухгалтер))) КАК ОтветственныеЛицаОрганизацийСрезПоследних”;
Возврат Текст;
КонецФункции Процедура ПостОбработкаТаблицы(Выгрузка)
Для Каждого СтрВыгрузки Из Выгрузка Цикл Если СтрВыгрузки.КодРодителя = “Ц00018756” ИЛИ // Группа подразделений ООО ТНГ-Групп
СтрВыгрузки.КодРодителя = “Ц00019985” ИЛИ // Организации холдинга “ТАГРАС”
СтрВыгрузки.КодРодителя = “Ц00019944” ИЛИ // Структурные подразделения ПАО Татнефть
СтрВыгрузки.КодРодителя = “Ц00019945” ИЛИ // Подконтрольные коммерческие организации ПАО Татнефть
СтрВыгрузки.КодРодителя = “Ц00028540” ИЛИ // дивизион “Система-Сервис”
СтрВыгрузки.КодРодителя = “Ц00028533” ИЛИ // дивизион “ТаграС-РС” СтрВыгрузки.КодРодителя = “Ц00028535” ИЛИ // дивизион “ТаграС-ЭнергоСервис”
СтрВыгрузки.КодРодителя = “Ц00028534” Тогда // дивизион “ТМС групп”
Продолжить;
КонецЕсли;
СтрВыгрузки.КодРодителя = “”;
КонецЦикла;
КонецПроцедуры Функция ОкруглениеПриВыводеНаПечать(вхСумма)
ВзятМудульЧисла = Ложь;
Если вхСумма < 0 Тогда вхСумма = -вхСумма;
ВзятМудульЧисла = Истина;
КонецЕсли;
Если вхСумма = 0 Тогда Возврат 0;
ИначеЕсли ВариантФормирования = 1 Тогда Сумма = вхСумма;
ИначеЕсли ВариантФормирования = 2 Тогда Сумма = вхСумма / 1000;
ИначеЕсли ВариантФормирования = 3 Тогда Сумма = вхСумма / 1000000;
КонецЕсли;
Если НеОкруглятьСуммы = Ложь Тогда
Если (Сумма – Цел(Сумма)) >= 0.5 Тогда
Сумма = Цел(Сумма) + 1;
Иначе
Сумма = Цел(Сумма);
КонецЕсли;
КонецЕсли;
Если ВзятМудульЧисла Тогда ВозвращаемаяСумма = -Сумма;
Иначе ВозвращаемаяСумма = Сумма;
КонецЕсли;
Возврат ВозвращаемаяСумма;
КонецФункции
#КонецЕсли Функция ТекстЗапросаДанных12314() ТекстЗапроса = “ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
| ХозрасчетныйОстаткиИОбороты.Организация КАК Организация,
| ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1,
| ВЫБОР
| КОГДА ХозрасчетныйОстаткиИОбороты.Субконто1 ССЫЛКА Справочник.Контрагенты
| ТОГДА ХозрасчетныйОстаткиИОбороты.Субконто1.Код
| КОГДА ХозрасчетныйОстаткиИОбороты.Субконто1 ССЫЛКА Справочник.ФизическиеЛица
| ТОГДА ФизическиеЛицаДР.Значение.Код
| КОНЕЦ КАК Код,
| ВЫБОР
| КОГДА ХозрасчетныйОстаткиИОбороты.Субконто1 ССЫЛКА Справочник.Контрагенты
| ТОГДА ХозрасчетныйОстаткиИОбороты.Субконто1
| КОГДА ХозрасчетныйОстаткиИОбороты.Субконто1 ССЫЛКА Справочник.ФизическиеЛица
| ТОГДА ФизическиеЛицаДР.Значение
| КОНЕЦ КАК Контрагент,
| ВЫБОР
| КОГДА ХозрасчетныйОстаткиИОбороты.Субконто2 ССЫЛКА Справочник.ДоговорыКонтрагентов
| ТОГДА ХозрасчетныйОстаткиИОбороты.Субконто2
| ИНАЧЕ ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
| КОНЕЦ КАК Договор,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СуммаДебиторки
|ПОМЕСТИТЬ втДебиторкаНеСгруппирован
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(| ,
| &Период,
| Период,| ,
| Счет.Код В (“”75.01″”),
| ,
| ВЫБОР
| КОГДА &ПоВсемКонтрагентам
| ТОГДА ИСТИНА
| ИНАЧЕ Субконто1 = &Контрагент
| КОНЕЦ) КАК ХозрасчетныйОстаткиИОбороты
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.ДополнительныеРеквизиты КАК ФизическиеЛицаДР
| ПО ХозрасчетныйОстаткиИОбороты.Субконто1 = ФизическиеЛицаДР.Ссылка
| И (ФизическиеЛицаДР.Значение ССЫЛКА Справочник.Контрагенты)
|;|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| втДебиторкаНеСгруппирован.Счет КАК Счет,
| втДебиторкаНеСгруппирован.Организация КАК Организация,
| втДебиторкаНеСгруппирован.Контрагент КАК Контрагент,
| втДебиторкаНеСгруппирован.Код КАК Код,
| втДебиторкаНеСгруппирован.Договор КАК Договор,
| втДебиторкаНеСгруппирован.СуммаДебиторки КАК СуммаДебиторки|ПОМЕСТИТЬ втДебиторка
|ИЗ
| втДебиторкаНеСгруппирован КАК втДебиторкаНеСгруппирован
|ГДЕ
| втДебиторкаНеСгруппирован.Договор ССЫЛКА Справочник.ДоговорыКонтрагентов
|;|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| втДебиторка.Счет КАК Счет,
| втДебиторка.Организация КАК Организация,
| втДебиторка.Контрагент КАК Контрагент,
| МАКСИМУМ(втДебиторка.Код) КАК Код,
| МАКСИМУМ(ЕСТЬNULL(втДебиторка.Контрагент.Родитель.Код, “”””)) КАК КодРодителя,
| втДебиторка.Договор КАК Договор,
| СУММА(втДебиторка.СуммаДебиторки) КАК СуммаДебиторки
|ПОМЕСТИТЬ втРезультат
|ИЗ
| втДебиторка КАК втДебиторка
||СГРУППИРОВАТЬ ПО
| втДебиторка.Счет,
| втДебиторка.Организация,
| втДебиторка.Контрагент,
| втДебиторка.Договор
|;|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| втРезультат.Счет КАК Счет,| втРезультат.Организация КАК Организация,
| втРезультат.Контрагент КАК Контрагент,
| втРезультат.Код КАК Код,
| втРезультат.КодРодителя КАК КодРодителя,
| втРезультат.СуммаДебиторки КАК Сумма,
| 0 КАК НДС,
| 0 КАК СуммаПросрочено,
| ДАТАВРЕМЯ(1, 1, 1) КАК ДатаВЗ,
| ВЫБОР
| КОГДА втРезультат.КодРодителя = “”””
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ КАК ПрочийДебитор
|ИЗ
| втРезультат КАК втРезультат”;
Возврат ТекстЗапроса;
КонецФункции
Айзатуллов Марс,
Специалист компании ООО “Кодерлайн”