Каталог решений - Свертка и группировка таблицы значений для отчета

Свертка и группировка таблицы значений для отчета

Свертка и группировка таблицы значений для отчета

В наличии

В ходе оформления нашел несколько подобных решений. В своей разработке ориентировался на:
— скорость выполнения;  
— нумерация группировок;
— добавление новых колонок в ТЗ, делающих процедуру перебора строк ТЗ     аналогичной перебору строк запроса или записей справочника ("Уровень", "Группа","Наименование" и пр.).

Категория:

Описание

Обработка Свертка и группировка таблицы значений для отчета.

Подобные решения:

http://1c.proclub.ru/modules/mydownloads/personal.php?cid=5&lid=3059
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=5&lid=3454).
//sale.itcity.ru/projects/275
//sale.itcity.ru/projects/271
//sale.itcity.ru/projects/664

Выкладываю свое решение, возможно, оно будет кому-нибудь полезно.

При разработке ориентировался на:
— скорость выполнения;
— промежуточное решение, — т.е. только подготовка ТЗ к процедуре вывода в таблицу.
— макс. количество группировок (10) и суммируемых (98) колонок регулируется размерностью массива
— многоуровневая нумерация группировок (как вложенный нумерованный список)
— добавление новых колонок в ТЗ, делающих процедуру перебора строк ТЗ аналогичной перебору строк запроса или записей справочника.

Открытие VTGroup.ert без параметра — пример обработки ТЗ на форме.

Варианты применения:

Вариант 1. Обработка ТЗ через открытие VTGroup.ert с параметром.
— Скопировать VTGroup.ert в подкаталог EXTFORMS каталога базы данных или
— Вставить с тем же именем в обработки или отчеты конфигурации
— Параметр формы — список значений, как заполнять смотреть в Использование_через_ОткрытьФорму.txt

Вариант 2. Использование процедуры глТЗСверткаИГруппировка(<ТЗ>,<ГруппКолонки>,<СуммКолонки>,<УдалятьГруппКолонки>);
в программном коде, для этого:
— Скопировать из VTGroup.ert в программный модуль / глобальный модуль блоки (тот же текст в Скопировать_в_Модуль.txt):
ОБНОВЛЕНИЕ СТРОКИ СОСТОЯНИЯ (если еще не скопирован) и
СВЕРТКА И ГРУППИРОВКА ТЗ (по аналогу перебора справочника)

Примечание: Новые добавляемые колонки в обработанную ТЗ:

_Наименование — строковое представление текущей группировки (обход группировок подобен обходу группировок в запросе / перебору эл-тов и групп в справочнике)
_Объект — значение текущей группировки
_Группа — число, 0 (для последней группировки, типа, «элемент») или 1 (для всех остальных группировок, типа «группа»)
_Уровень — номер текущей группировки, соответствует положению колонки в списке групп. колонок, для последней записи «ИТОГО» равен нулю
_Индекс — строковый «индекс», представляющий собой нумерованный список (комбинация из №№ пп всех группировок, например, 1. 1.1. 1.2.)
_ГорИтог — (горизонтальный) итог по строке ТЗ для всех заданных полей суммирования
_Счётчик — количество записей ТЗ, приходящихся на данную группировку

has been added to your cart:
Оформление заказа