ПрисоединитьСекцию (помогите, пожалуйста)
Есть конфигурация для собственного пользования.
Есть Регистр Движения. Для накопления данных по поступлениям, платежам.
Необходимо сделать отчет "календарь платежей". Суть отчета: По строкам отражаются поступления/платежи. В столбцах - даты.
Первоначально в отчет выводяться все поступления, потом платежи. Проблема с формированием "шахматке". Окончательно запутался в циклах.
Процедура Сформировать()
Перем Запрос, ТекстЗапроса, Таб;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|ВидПлюс = Регистр.Движение.ВидПлюс;
|ВидМинус = Регистр.Движение.ВидМинус;
|Контрагент = Регистр.Движение.Контрагент;
|СуммаПлан = Регистр.Движение.СуммаПлан;
|СуммаФакт = Регистр.Движение.СуммаФакт;
|ДатаДок = Регистр.Движение.ТекущийДокумент.Поступления.ДатаДок, Регистр.Движение.ТекущийДокумент.Платежи.ДатаДок;
|Функция СуммаПланСумма = Сумма(СуммаПлан);
|Функция СуммаФактСумма = Сумма(СуммаФакт);
|Группировка ДатаДок;
|Группировка ВидПлюс;
|Группировка ВидМинус;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Таблица");
// Заполнение полей "Заголовок"
Таб.ВывестиСекцию("Шапка|Секция_1");
Состояние("Заполнение выходной таблицы...");
Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
Пока Запрос.Группировка(1) = 1 Цикл
// Заполнение полей ДатаДок
Таб.ПрисоединитьСекцию("Дата");
КонецЦикла;
Пока Запрос.Группировка(1)=1 Цикл
Пока Запрос.Группировка(2) = 1 Цикл
// Заполнение полей ВидПлюс
Таб.ВывестиСекцию("Приход");
КонецЦикла;
КонецЦикла;
Пока Запрос.Группировка(1) = 1 Цикл
Пока Запрос.Группировка(2)= 1 Цикл
Пока Запрос.Группировка(3) = 1 Цикл
// Заполнение полей ВидМинус
Таб.ВывестиСекцию("Расход|Секция_1");
КонецЦикла;
КонецЦикла;
Таб.ПрисоединитьСекцию("Расход|Дата");
КонецЦикла;
// Заполнение полей "Итого"
// Таб.ВывестиСекцию("Итого");
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("Сформировать", "");
КонецПроцедуры