Опубликован: 22.11.2010 | Уровень: для всех | Доступ: платный
Лекция 12:

Отчеты. Объекты для работы с отчетами

Аннотация: Содержит описание отчётов и объектов для работы с ними.

Цели:

  1. Изучить порядок создания отчетов
  2. Рассмотреть объекты для работы с отчетами

Отчёты

Клиентские приложения осуществляют вывод информации на печать с помощью отчетов. Отчеты так же, как и формы состоят из объектов и сами являются объектами, но между отчетами и формами есть отличия:

  1. Отчёты содержат только объекты для отображения информации (Например, подписи, рисунки, текстовые поля, геометрические фигуры и линии), но не содержат объекты для управления системой (Например, кнопки или выпадающие списки);
  2. В отчётах сразу же выводятся все записи из источника данных (таблицы, запроса или фильтра) и вывод производится на листы;
  3. Отчёт нельзя создать без наличия в системе принтера, так как настройки внешнего вида отчёта берутся из настроек драйвера принтера;
  4. В отличие от форм отчёты состоят из пяти разделов:
    • Заголовок - верхняя часть первого листа отчёта. В заголовке располагают название отчёта и некоторую служебную информацию. Например, герб и юридический адрес фирмы или имя автора отчёта.
    • Примечание - нижняя часть последнего листа отчёта. В примечание помещают итоговую информацию по отчёту (Например, общий объём продаж, всех сделок представленных в отчёте) и место для печати и подписи руководителя.
    • Верхний колонтитул - верхняя часть каждого листа отчёта. В данный раздел помещают номера листов отчёта и дополнительную служебную информацию. Например, дату и время создания отчёта.
    • Нижний колонтитул - нижняя часть каждого листа отчёта. В данном разделе располагается та же информация что и в верхнем колонтитуле, но не дублирует информацию из верхнего колонтитула.
    • Область данных - средняя часть каждого листа отчёта.

Замечание: Существует два вида дизайна отчетов:

  • Ленточный дизайн - выводит информацию по каждой записи отдельно. То есть для каждого поля каждой записи отображается название поля и его значение;
  • Табличный дизайн - выводит информацию в виде таблицы. То есть в заголовок отчёта помещают названия полей, а в области данных под названием полей отображаются их значения.

Объекты для работы с отчётами

Работа с отчётами в Visual Basic2008 состоит из нескольких этапов:

  1. Создаётся пустой отчёт;
  2. В отчёт помещают объекты для отображения информации;
  3. Создаётся форма для отображения отчёта;
  4. На форму помещают объект Reportviewer, отображающий отчёты;
  5. К объекту 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

На этом мы заканчиваем рассмотрение отчётов. Дополнительную информацию можно найти в "лабораторной работе №12" .

Ринат Гатауллин
Ринат Гатауллин

Здравствуйте. Интересует возможность получения диплома( https://intuit.ru/sites/default/files/diploma/examples/P/955/Nekommerch-2-1-PRF-example.jpg ). Курс пройден. Сертификат не подходит. В сертификате ошибка, указано по датам время прохождения около 14 дней, хотя написано 576 часов.

Вячеслав Кузнецов
Вячеслав Кузнецов

Здравствуйте.

Как оплатить курс?

Павел Окунцев
Павел Окунцев
Россия, Нижневартовск, НГГУ, 2007
Pavel Krupoderov
Pavel Krupoderov
Россия, Казань