 |
|  |
 |
Построение перекрестной таблицы-шахматки (универсальная функция)
Алгоритм: из источника создается промежуточная выборка по заданному условию, в которой методом
разворачивания по Информационным полям и полю Группировки производится слияние (группировка)
записей с числовой обработкой группы "слитых" строк по Информационному полю на основе выражения
(по умолчанию - это SUM). На основе промежуточной отсортированной выборки строится Кросс-таблица
путем добавления и заполнения в ней сводных числовых колонок (разворачиванием) по значению
Группирующего поля и добавления строк по значению составного ключа нформационных полей.
Функцию можно использовать автономно или в составе Генератора Отчетов DBRAD32 - в качестве
предварительно создаваемой таблицы для Кросс-отчета, который "умеет" выводить в Word и
форматировать переменное число колонок (т.н. блок числовых колонок), перенося по полосам колонки,
не помещающиеся на страницу. Из FLD-файла генератор автоматически загружает заголовки блока
числовых колонок, вычисленные в функции. В результате клиент получает законченный отчет для любой
выборки из источника данных. Пример такого Кросс-отчета см. на www.dbrad32.narod.ru ("Автономный
генератор отчетов"). Функцию построения кросс-таблицы можно вызывать в методе Load Кросс-шаблона
или в тексте Макро-шаблона (входящего в составной отчет Макро+Кросс ).
Для демонстрации работы функции распакуйте архив и запустите файл cross.prg.
Выражаю благодарность Юрию Ч. за окончательное тестирование функции.
|
|
 |
|  |
|