Лекция 13: Отчеты. Объекты для работы с отчетами
Цели:
- Изучить порядок создания отчетов
- Рассмотреть объекты для работы с отчетами
Отчёты
Клиентские приложения осуществляют вывод информации на печать с помощью отчетов. Отчеты так же, как и формы состоят из объектов и сами являются объектами, но между отчетами и формами есть отличия:
- Отчёты содержат только объекты для отображения информации (Например, подписи, рисунки, текстовые поля, геометрические фигуры и линии), но не содержат объекты для управления системой (Например, кнопки или выпадающие списки);
- В отчётах сразу же выводятся все записи из источника данных (таблицы, запроса или фильтра) и вывод производится на листы;
- Отчёт нельзя создать без наличия в системе принтера, так как настройки внешнего вида отчёта берутся из настроек драйвера принтера;
- В отличие от форм отчёты состоят из пяти разделов:
- Заголовок – верхняя часть первого листа отчёта. В заголовке располагают название отчёта и некоторую служебную информацию. Например, герб и юридический адрес фирмы или имя автора отчёта.
- Примечание – нижняя часть последнего листа отчёта. В примечание помещают итоговую информацию по отчёту (Например, общий объём продаж, всех сделок представленных в отчёте) и место для печати и подписи руководителя.
- Верхний колонтитул – верхняя часть каждого листа отчёта. В данный раздел помещают номера листов отчёта и дополнительную служебную информацию. Например, дату и время создания отчёта.
- Нижний колонтитул – нижняя часть каждого листа отчёта. В данном разделе располагается та же информация что и в верхнем колонтитуле, но не дублирует информацию из верхнего колонтитула.
- Область данных – средняя часть каждого листа отчёта.
Замечание: Существует два вида дизайна отчетов:
|
- Ленточный дизайн – выводит информацию по каждой записи отдельно. То есть для каждого поля каждой записи отображается название поля и его значение;
- Табличный дизайн – выводит информацию в виде таблицы. То есть в заголовок отчёта помещают названия полей, а в области данных под названием полей отображаются их значения.
Объекты для работы с отчётами
Работа с отчётами в Visual Basic2008 состоит из нескольких этапов:
- Создаётся пустой отчёт;
- В отчёт помещают объекты для отображения информации;
- Создаётся форма для отображения отчёта;
- На форму помещают объект Reportviewer, отображающий отчёты;
- К объекту Reportvewer подключают созданный ранее отчёт.
Создание отчётов и отображающих их форм подробно рассмотрено в лабораторной работе. Остановимся более подробно на отчёте и объектах, используемых при его создании.
Для создания пустого отчёта в оконном меню необходимо выбрать пункт «Project\Add New Item…» и в появившемся окне в разделе «Reporting» дважды щёлкнуть ЛКМ по пункту «Report» появится вкладка с пустым отчётом. Теперь в отчёт необходимо добавить объекты для отображения данных.
Замечание: Работа с объектами в отчёте полностью аналогична работе с объектами на форме. То есть мы можем перетаскивать поля в отчёт из окна «Data Sources» либо можем создать объекты в отчёте вручную, а затем подключить их к полям через панель свойств.
Замечание: В отчётах все объекты делятся на объекты контейнеры, объекты для отображения данных и объекты оформления.
|
- Объекты контейнеры – это объекты, содержащие объекты для отображения данных и определяющие дизайн отчёта.
- Объекты для отображения данных – это объекты, отображающие значения полей источника данных или дополнительную служебную информацию.
- Объекты оформления - объекты, применяемые только для оформления отчёта.
Рассмотрим объекты для отображения данных, к ним относятся:
- TextBox – текстовое поле ввода, предназначено для отображения значений полей и любой текстовой информации. Если объект TextBox используется для отображения информации из источника данных, и он находится вне объекта контейнера, то в нём будет отображено значение выбранного поля только первой записи из источника данных;
- Image – объект отображающий содержимое полей с графической информацией либо отображающий рисунки (графические файлы);
- Chart – объект, отображающий график или гистограмму построенную по информации из источника данных.
Теперь рассмотрим объекты контейнеры. В отчёт можно поместить следующие объекты контейнеры:
- Table – таблица выводит информацию в виде таблицы с ограниченным количеством столбцов и неограниченным количеством строк. То есть в количество строк в таблице зависит от объёма выводимых данных;
- Matrix – таблица выводит информацию в виде таблицы с неограниченным количеством столбцов и строк. То есть в количество строк и столбцов в таблице зависит от объёма выводимых данных;
- List – объект выводящий информацию в виде списков;
- Subreport – объект содержащий внутри себя дополнительный отчёт, созданный ранее.
Наконец, рассмотрим объекты оформления. К ним относятся:
|
- Line – отображает линию;
- Rectangle – отображает прямоугольник, используется для группировки полей.
Замечание: Работа со строками, столбцами или ячейками объектов Table, Matrix и List осуществляется как в программе «Microsoft Excel ».
Замечание: В ячейках объектов Table, Matrix и List можно печатать текст, как и в ячейках таблиц «Microsoft Excel ». Чтобы поместить в ячейку значение поля его можно перетащить из окна "Data Sources" в ячейку, либо в ячейке написать код, имеющий следующий синтаксис: = Fields!<Имя поля>.Value, где Имя поля - это имя отображаемого поля. Аналогично можно производить вычисления в ячейках.
Пример: В ячейке отобразить средний бал трёх полей: Оценка1, Оценка2 и Оценка3. для решения этой задачи в ячейке необходимо набрать код:
= (Fields!Оценка1.Value+Fields!Оценка2.Value+ Fields!Оценка3.Value)/3