Untitled
unknown
plain_text
2 years ago
6.6 kB
8
Indexable
&НаСервере Функция СформироватьНаСервере() Обработка = РеквизитФормыВЗначение("Объект"); ТабДок = Новый ТабличныйДокумент; Макет = Обработка.ПолучитьМакет("Макет"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ХозрасчетныйОстаткиИОбороты.Счет КАК Счет, | ХозрасчетныйОстаткиИОбороты.Субконто1 КАК НаименованиеБанка, | СУММА(ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт) КАК НачальныйОстаток, | ХозрасчетныйОстаткиИОбороты.Период КАК ПериодНеделя |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Неделя, , Счет В (&НомерСчета), &ВидыСубконто, ) КАК ХозрасчетныйОстаткиИОбороты | |СГРУППИРОВАТЬ ПО | ХозрасчетныйОстаткиИОбороты.Счет, | ХозрасчетныйОстаткиИОбороты.Субконто1, | ХозрасчетныйОстаткиИОбороты.Период |ИТОГИ | СУММА(НачальныйОстаток) |ПО | ПериодНеделя ПЕРИОДАМИ(НЕДЕЛЯ, , )"; Запрос.УстановитьПараметр("ВидыСубконто", ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.БанковскиеСчета); СписокСчетовДляПараметра = Новый Массив; СписокСчетовДляПараметра.Добавить(ПланыСчетов.Хозрасчетный.РасчетныеСчета); СписокСчетовДляПараметра.Добавить(ПланыСчетов.Хозрасчетный.ВалютныеСчета); Запрос.УстановитьПараметр("НомерСчета",СписокСчетовДляПараметра); Запрос.УстановитьПараметр("НачалоПериода", Объект.Период.ДатаНачала); Запрос.УстановитьПараметр("КонецПериода", Объект.Период.ДатаОкончания); РезультатЗапроса = Запрос.Выполнить(); ОбластьСтатичнаяКолонка = Макет.ПолучитьОбласть("СтатичнаяКолонка"); ТабДок.Вывести(ОбластьСтатичнаяКолонка); ОбластьКолонка = Макет.ПолучитьОбласть("Колонка"); ВыборкаПериодНеделя = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаПериодНеделя.Следующий() Цикл Если ВыборкаПериодНеделя.ПериодНеделя >= Объект.Период.ДатаНачала Тогда ВыборкаДетальныеЗаписи = ВыборкаПериодНеделя.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл НеделяПоСчету = НеделяГода(ВыборкаДетальныеЗаписи.ПериодНеделя); ОбластьКолонка.Параметры.Неделя = Формат(ВыборкаДетальныеЗаписи.ПериодНеделя, "ДФ=dd.MM.yyyy"); ОбластьКолонка.Параметры.НомерНедели = НеделяПосчету; Если ВыборкаДетальныеЗаписи.НаименованиеБанка = Справочники.БанковскиеСчетаОрганизаций.НайтиПоНаименованию("р/с ""КОММЕРЦБАНК (ЕВРАЗИЯ)""") Тогда ОбластьКолонка.Параметры.БКР = ВыборкаДетальныеЗаписи.НачальныйОстаток; ИначеЕсли ВыборкаДетальныеЗаписи.НаименованиеБанка = Справочники.БанковскиеСчетаОрганизаций.НайтиПоНаименованию("RUR Расчетный в АО ""РАЙФФАЙЗЕНБАНК"" (Расчетный)")Тогда ОбластьКолонка.Параметры.БРР = ВыборкаДетальныеЗаписи.НачальныйОстаток; ИначеЕсли ВыборкаДетальныеЗаписи.НаименованиеБанка = Справочники.БанковскиеСчетаОрганизаций.НайтиПоНаименованию("RUR Расчетный в ПАО ""ПРОМСВЯЗЬБАНК""") Тогда ОбластьКолонка.Параметры.БПР = ВыборкаДетальныеЗаписи.НачальныйОстаток; ИначеЕсли ВыборкаДетальныеЗаписи.НаименованиеБанка = Справочники.БанковскиеСчетаОрганизаций.НайтиПоНаименованию("EUR КОММЕРЦБАНК (валютный текущий)") Тогда ОбластьКолонка.Параметры.БКЕ = ВыборкаДетальныеЗаписи.НачальныйОстаток; ИначеЕсли ВыборкаДетальныеЗаписи.НаименованиеБанка = Справочники.БанковскиеСчетаОрганизаций.НайтиПоРеквизиту("НомерСчета","40702978400000011129") Тогда ОбластьКолонка.Параметры.БРЕ = ВыборкаДетальныеЗаписи.НачальныйОстаток; КонецЕсли; КонецЦикла; ОбластьКолонка.Параметры.БББ = ВыборкаПериодНеделя.НачальныйОстаток; ТабДок.Вывести(ОбластьКолонка); КонецЕсли; КонецЦикла; Возврат ТабДок; КонецФункции
Editor is loading...