В начало
Динамика дебиторской задолженности через СКД Нужно создать отчет
«Динамика дебиторской задолженности» по регистрам сведений: «УК_Начисления» и
«УК_Оплаты». Регистры сведений имеют следующую
структуру. Оба регистра сведений независимые. Один из них, а именно «УК_Оплаты» - периодический, с периодичностью
в пределах секунды. Рис.
Структура регистров сведений Заполним регистры произвольными
значениями, удобными для последующей проверки в отчете. Рис.
Независимый непериодический регистр сведений «УК_Начисления» (в январе
два начисления) Рис.
Независимый периодический регистр сведений «УК_Оплаты» (в апреле
нет оплат, а в мае месяце две оплаты) Далее открываем конфигуратор и
создаем внешнюю обработку, обзываем ее «ДинамикаДебиторскойЗадолженности». Рис.
Внешняя обработка в конфигураторе Затем открываем схему компоновки
данных, создаем новый набор данных с типом запрос и запускаем конструктор
запроса. В конструкторе запросов создаем три
пакета, два из которых – это временные таблицы, ибо так удобнее. В первый пакет засовываем данные из
регистра сведений «УК_Начисления». Ерем поля: «Контрагент» и «Сумма». А из поля
дата создаем два вычисляемых поля: «Месяц» и «Год», преобразуя дату при помощи
функции «НачалоПериода». Рис.
Первый пакет, временная таблица «втНачисления» На закладке «Объединения/Псевдонимы»
обзываем их нужным нам образом. Месяц и год понадобятся для формирования отчета
по периодам, они будут колонками отчета. Рис.
Закладка «Объединения/Псевдонимы» пакета «втНачисления» Аналогичным образом поступаем с
регистром сведений «УК_Оплаты». Выбираем поля: «Фирма», «Период» и «Сумма». На
всякий случай приводим поле «Период» к началу периода с параметром «Месяц»,
т.е. к первому числу месяца. Рис.
Конструктор запроса, пакет «втОплаты» Затем устанавливаем необходимые нам
названия. Рис. Пакет
запроса «втОплаты», вкладка «Объединения/Псевдонимы» Потом создаем новый пакет. Выбираем
поля с месяцем и годом из таблицы «втНачисления», т.к. в дальнейшем при
связывании двух таблиц, таблица «втНачисления» будет основной, а вторую мы
присобавим к первой левым соединением. Рис.
Третий пакет, закладка «Таблицы и поля» Далее
соединяем данные из двух временных таблиц. А именно, связываем данные из двух
временных таблиц по полям «Контрагент» и «Месяц». Рис.
Третий пакет запросов, закладка «Связи» Закрываем конструктор запросов и
возвращаемся к настройкам СКД. Поскольку отчет мы будем формировать в виде
таблицы, нам нужно добавить поля «Начисление» и «Оплата» в ресурсы. Это
делается на соответствующей закладке. Рис. СКД,
закладка «Ресурсы» Кроме того, если мы хотим, чтобы
месяц писался словом, а не числом нам нужно установить формат для
соотвествующего отображения месяца: «ДФ=ММММ», а для года соответственно – «ДФ=гггг». Рис. СКД,
закладка «Наборы данных», форматирование поля «Месяц» Далее переходим на закладку
«Настроки», где создаем нужные группировки и выбираем поля для отображения. В
качестве группировки выбираем таблицу, в строки которой будем выводить
контрагентов, а в колонках указываем «Год, месяц». На
закладке «Выбранные поля» выбираем «Начисление» и «Оплата». Рис. СКД,
закладка «Настройки» Также, чтобы ресурсы выводились не
по горизонтали, а наоборот, нам нужно зайти на вкладку «Другие настройки» и там
соответственно немного подшаманить. Рис.
Закладка «Другие настройки» И наконец, сохраняем наш внешний
отчёт, открываем программу в пользовательском режиме и тестируем его. Рис.
Сформированный отчёт Вроде получилось то, что и хотели:
группировки ресурсов расположены по вертикали, в столбцах отчета указан год и
месяц, а итоги только те, что по горизонтали, итоговые суммы легко проверить и
тоже сходятся. |
||