Немного теории |
Top Previous Next |
Рассмотрим элементы матрицы:
На рисунке мы видим матрицу с двумя строками и четырьмя столбцами. Здесь a, b – заголовки строк, 1, 2, 3, 4 – заголовки столбцов, a1..a4, b1..b4 – ячейки. Чтобы построить такой отчет, понадобится всего один набор данных (запрос или таблица), который имеет три поля и содержит следующие данные:
a 1 a1 a 2 a2 a 3 a3 a 4 a4 b 1 b1 b 2 b2 b 3 b3 b 4 b4
Как видно, первое поле содержит номер строки, второе – номер столбца, третье – содержимое ячейки на пересечении строки и столбца с указанным номером. При построении отчета FastReport создает в памяти матрицу и заполняет ее данными. При этом матрица динамически расширяется, если строки или столбца с заданным номером еще не существует.
Заголовки могут иметь более одного уровня. Рассмотрим следующий пример:
В этом примере номер, или индекс, столбца – составной, т.е. состоит из двух значений. Этот отчет требует следующих данных:
a 10 1 a10.1 a 10 2 a10.2 a 20 1 a20.1 a 20 2 a20.2 b 10 1 b10.1 b 10 2 b10.2 b 20 1 b20.1 b 20 2 b20.2
Здесь первое поле, как и прежде, содержит индекс строки, второе и третье поля – индекс колонки. Последнее поле содержит значение ячейки.
Следующий элемент матрицы – промежуточные итоги и итоги, демонстрирует следующий рисунок:
Этот отчет строится на тех же данных, что и предыдущий. Столбцы, показанные серым на рисунке, вычисляются автоматически. |