"вот модуль:<br><br>Процедура Сформировать_Колонки(Ит, Таб, Стр)<br><br> Перем Запрос, ТекстЗапроса,Пер, Счет,Контра;<br><br> Таб.ВывестиСекцию(Стр+"|Начало");<br><br> Ит.ВыбратьСчета(1);<br><br> Запрос = СоздатьОбъект("Запрос");<br><br> Пока Ит.ПолучитьСчет() = 1 Цикл <br><br> Таб.ПрисоединитьСекцию(Стр+?(Контр = 1,"|Счет","|Счет1")); <br><br> КонецЦикла;<br><br> Таб.ПрисоединитьСекцию(Стр+?(Контр = 1,"|Итог","|Итог1")); <br><br> Если Стр = "Период" Тогда <br><br> Пер = Ит.НачДата;<br><br> Контра = Ит.Субконто();<br><br> Счет = Ит.Счет;<br><br> //Создание объекта типа Запрос<br><br> Запрос = СоздатьОбъект("Запрос");<br><br> ТекстЗапроса = <br><br> "//{{ЗАПРОС(Сформировать)<br><br> |Период с Пер по Пер;<br><br> |Обрабатывать НеПомеченныеНаУдаление;<br><br> |КоррСчет = Документ.Выписка.КоррСчет;<br><br> |Субконто1 = Документ.Выписка.Субконто1; <br><br> |Приход = Документ.Выписка.Приход;<br><br> |Расход = Документ.Выписка.Расход;<br><br> |ТипыДоков = Документ.Выписка.ТипыДоков;<br><br> |Номер = Документ.Выписка.Номер;<br><br> |ДатаДока = Документ.Выписка.ДатаДока; <br><br> |ПервДок = Документ.Выписка.ПервичныйДокумент;<br><br> |НомерПП = Документ.Выписка.НомерДокВходящий;<br><br> |ДатаПП = Документ.Выписка.ДатаДокВходящий; <br><br> |Функция ИтогПриход = Сумма(Приход);<br><br> |Функция ИтогРасход = Сумма(Расход); <br><br> |группировка Номер; <br><br> |Условие(Субконто1 в Контра);<br><br> |"//}}ЗАПРОС<br><br> ; <br><br> Если Контр = 1 Тогда<br><br> ТекстЗапроса = ТекстЗапроса + "<br><br> |Условие(Приход>0);"; <br><br> Иначе<br><br> ТекстЗапроса = ТекстЗапроса + "<br><br> |Условие(Расход>0);";<br><br> КонецЕсли; <br><br> <br><br> // Если ошибка в запросе, то выход из процедуры<br><br> Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда<br><br> Возврат;<br><br> КонецЕсли; <br><br> <br><br> Пока Запрос.Группировка("Номер") = 1 Цикл <br><br> общномер = ПолучитьПустоеЗначение("Строка");<br><br> общНомер = Строка(Запрос.типыДоков)+" №"+ СокрЛП(Запрос.Номер) + " от "+СокрЛП(Запрос.ДатаДока) + " (п/п №"+СокрЛП(Запрос.НомерПП) + " от "+СокрЛП(Запрос.ДатаПП)+")"; <br><br> Таб.ВывестиСекцию("СтрОплаты|Начало"); <br><br> Таб.ПрисоединитьСекцию("СтрОплаты"+?(Контр = 1,"|Счет","|Счет1"));<br><br> Таб.ПрисоединитьСекцию("СтрОплаты"+?(Контр = 1,"|Итог","|Итог1")); <br><br> КонецЦикла;<br><br> КонецЕсли; <br><br>КонецПроцедуры<br><br><br><br>Процедура Сформировать()<br><br> Таб = СоздатьОбъект("Таблица");<br><br> Таб.ИсходнаяТаблица("Сформировать");<br><br> Ит = СоздатьОбъект("БухгалтерскиеИтоги");<br><br> Ит.ИспользоватьСубконто(ВидыСубконто.Контрагенты, ВыбСубконто1, 1);<br><br> Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, ?(Контр = 1,"62,76.5,76.55","60,76.5,76.55"), "51,52",, 2, "День", "С");<br><br> Таб.ВывестиСекцию("Заголовок");<br><br> Сформировать_Колонки(Ит, Таб, "Шапка");<br><br> Таб.Опции(0,0,Таб.ВысотаТаблицы(),0);<br><br> Ит.ВыбратьСубконто(ВидыСубконто.Контрагенты);<br><br> Пока Ит.ПолучитьСубконто(ВидыСубконто.Контрагенты) = 1 Цикл<br><br> Сформировать_Колонки(Ит, Таб, "Субконто1"); <br><br> Ит.ВыбратьПериоды(); <br><br> Пока Ит.ПолучитьПериод() = 1 Цикл<br><br> Сформировать_Колонки(Ит, Таб, "Период");<br><br> КонецЦикла;<br><br> КонецЦикла;<br><br> Сформировать_Колонки(Ит, Таб, "Подвал");<br><br> Таб.ТолькоПросмотр(1);<br><br> Таб.Показать("Сформировать","""");<br><br>КонецПроцедуры <br><br> <br><br><br><br>Процедура ПриОткрытии()<br><br><br><br> ВыбНачПериода = НачалоПериодаБИ();<br><br> ВыбКонПериода = КонецПериодаБИ(); <br><br> Контр = 1; <br><br> <br><br>КонецПроцедуры "