Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв БД 2013-06-02.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
26.54 Mб
Скачать

2.14.2. Конструктор отчетов

Конструктор отчетов является более гибким средством соз­дания отчетов, чем мастер. Рассмотрим порядок работы с конструктором при соз­да­нии отчета (рисунок 2.14.2.1), описанного в последнем примере (п. 2.14.1).

  1. Из раздела проекта Reports нажмем кноп­ку New и выберем вариант New Report (рисунок 2.14.2.1).

  2. К омандой View/Toolbars/Report Desig­ner выведем панель кон­ст­рук­­тора отчетов.

  3. Н ажмем кнопку Data Environment для вызова окна среды окружения, выберем базовое представление и закроем окно выбора. Можно п еретаскивать нужные поля на форму отчета из этого окна.

Рисунок 2.14.2.1. Окно просмотра отчета

Рис. 2.14.2.2. Окно конструктора отчетов с готовой формой

  1. C формируем детальную полосу Detail (рисунок 2.14.2.1). Перенесем из окружения поля Ni (наименование изделия), Kvi (количество выпущенных изделий) и Затраты, разместив их в детальной полосе слева направо. Кнопкой Print Preview просмотрим отчет.

  2. Н ажмем кнопку Data Grouping для указания полей груп­пи­ров­ки (рисунок 2.14.2.3). Используя кнопку с троеточием, выберем поля груп­пи­ровки Np (наимено­ва­ние подразделения), Dvi (дата выпуска изделия).

Су­щест­вуют следующие режимы вывода групп:

Start Group... новая колонка при каждом изменении группы.

Start Each... (Start Group...) ‑ новая группа всегда (если осталось ука­зан­ное место) начинается с нового листа.

Reset... ‑ нумерация лиcтов в группе начинается с единицы.

Reprint... ‑ вывод заголовка группы на каждом листе.

Рис. 2.14.2.3. Окно группировки

  1. Раскроем полосу заго­лов­ка группы первого уровня Group Header 1 : Np и перенесем в эту полосу поле Np (наименование под­раз­деления).

  2. Аналогично раскроем и перенесем поле Dvi (дата выпуска из­де­лия) в полосу заго­лов­ка группы второго уровня Group Header 2:Kvi.

  3. Н ажмем кнопку Report Controls ToolBars для вывода панели инструментов кон­структора отчетов.

Раскроем полосу подножия группы в торого уровня Group Footer 2:Kvi. Разместим объект Label с надписью “Итого по дате”. Для фор­ми­ро­ва­ния итогов по количеству выпущенных изделий разместим объект Field. Нажмем кнопку с троеточием поля Expression и выберем поле Kvi (рисунок 2.14.2.4). Нажмем кнопку Calculations и выберем операцию суммирования Sum. Нажмем кнопку с троеточием поля Format, установим флажок Numeric и формат вывода 9999. Ана­ло­гич­но сформируем поле с итогами по затратам.

Кнопка Print When позволяет указать режимы вывода значения: в первой полосе новой страницы (In First....), при изменении группы (When This...), при переходе детальной полосы на новую страницу (When Detail).

Рассмотрим параметры расположения позиции значения при изменении размеров окружающих объектов: изменяется (Float), сохраняет позицию относительно верхней/нижней границы полосы (Fix Relative To Top/Bottom ...), растягивание объекта для размещения данных (Strech...).

Р ассмотрим групповые операции: вычислений нет (Nothing), число зна­чений (Count), итоговое значение (Sum), среднее значение (Average), наи­меньшее/наибольшее значение (Lowest/Highest), квадратный корень из дис­персии (Standard Deviation), отклонение от среднего по группе (Variance).

Рис. 2.14.2.4. Окна формирования выражения и групповых операций

  1. Аналогично сформируем подножие группы (полоса Group Footer 1:Np) с итогами по подразделениям (рисунок 2.14.2.1).

  2. Выполним команду Report/Title/Summary/Summary Band. Ана­ло­гич­но разместим итоги по отчету в целом в полосе Summary.

  3. В полосе Page Header сформируем наименование и заголовки ко­ло­нок отчета. Для вывода номера текущего листа разместим объект Field. Нажмем кнопку с троеточием поля Expression и выберем системную переменную _Pageno в списке Variables. Для вывода текущей даты раз­мес­тим объект Field с функцией Date() (рисунок 2.14.2.1).

В ыделяя группы и исполь­зуя панель отчета Layout можно быстро выровнять элементы отчета.

Командой Format/Font можно установить нужные свойства шрифтам.

  1. Кнопкой Preview просмотрим отчет и сохраним форму под име­нем “Выпуск изделий по подразделениям и дням”. Форма отчета готова.

В нимание! Указание группировки не обеспечивает соответствую­щую сортировку. Исходный набор для формы или отчета должен быть отсортирован в нужной последовательности. Если это не так, то рассмотрим следующие возможные варианты решения проблемы.

Исходный набор является таблицей, и имеется индекс, обес­пе­чи­ваю­щий нужный порядок. Выделите таблицу в окне среды окружения, наж­мите правую кнопку мыши и из контекстного меню выберите команду Properties. В свойстве Order укажите нужный индекс.

Индекс отсутствует или исходный набор является пред­став­ле­ни­ем. Щелкните дважды в окне среды окружения и вызовите процедуру OpenTables и создайте в ней нужный индекс (Index On kvi To kvi).

Можно создать новое представление с нужной сортировкой и использовать его при формировании отчета или формы.

Д ля установки условий отбора записей можно: создать новое пред­став­ление; использовать свойство Filter таблицы (представления) или нажать кнопку Options окна Print, вызываемого кнопкой Print или Run, и сформировать условие отбора записей.

Размещение линий, прямоугольников и овалов реализуется инструментами Line, Restanglе и Rounded Restanglе соот­вет­ственно. Толщина линий задается командой Format/Pen.

Р азмещение рисунков реализуется инструментом Picture/OLE Bound Control. В окне Report Picture имеются поля: File/Field (имя файла/поля с рисунком), Clip Picture (края можно обрезать), Scale Picture, Retain Shape/Fill Frame (поле заполняется полностью с/без сохранения пропорций), Center Picture (изображение центрируется).

Переменные отчета задаются командой Report/Variables. В окне Re­port Variables имеются поля: Variables (список для ввода имен перемен­ных), Value To Store (вводимое значение переменной), Intial Value (начальное зна­чение переменной), Release After Report (удаление переменной после фор­мирования отчета), Reset At (момент сброса переменной в начальное значение в конце отчета, страницы или группы), Calculate (групповая опе­рация (рисунок 2.14.2.2)).

Разметка листа отчета выполняется командой File/Page Setup. Окно Page Setup имеет поля: Number (число колонок на странице), Width (ширина колонок в сантиметрах или дюймах), Spacing (расстояние между колонками), Printable/Whole Page (поля страницы определяются драйвером печати/минимальные), Print Order (порядок вывода записей в много­ко­ло­ноч­ных отчетах), Left Margin (ширина левого поля отчета).