Отчеты по базе данных

Отчеты в СУБД Access являются одно- и многотабличными (составными), создаются на основе таблиц и/или запросов и могут содержать дополнительные элементы управления. Панель инструментов Отчеты содержит ряд кнопок:

• Отчет – быстрый способ создания отчета на базе таблицы или запроса.

• Мастер отчетов – возможность создания многотабличных отчетов с указанием способов группировки и сортировки строк.

• Наклейки – создание наклеек стандартных размеров.

• Пустой отчет – отчет "с нуля".

• Конструктор отчетов – средство для детальной настройки разделов и элементов отчета.

Макет отчета разбит на разделы: заголовок отчета, верхний колонтитул, заголовок группы, область данных, примечание группы, нижний колонтитул, примечание отчет, в которых размещаются элементы управления трех типов: присоединенные (поля таблиц/запросов), свободные (не связанные с источником данных) и вычисляемые (па основе формульных выражений) (рис. 10.42).

Рис. 10.42. Элементы управления для отчетов

Отчеты можно выводить на печать, отправлять в виде сообщения электронной почты (возможны следующие расширения для сообщения: .htm, .pdf, .rtf, .snp (снимок), .txt и ,χps).

Рассмотрим примеры создания отчетов.

1. Однотабличный отчет "Справочник РЕСУРСОВ" (рис. 10.43).

Для подготовки отчета необходимо выполнить указанные действия:

• Перейти в режим Создание, панель инструментов Отчеты, кнопка Мастер отчетов. Выбрать таблицу РЕСУРС, все поля. Добавить уровень группировки по полю – Вид ресурса. Отсортировать строки отчета по полю Наименование ресурсов. Макет – Структура, Ориентация – альбомная. Стиль – АСПЕКТ, название отчета – Справочник РЕСУРСОВ, Изменить макет отчета.

• Установить курсор на заголовок группы "Вид ресурса", удалить поле Вид ресурса, вставить вычисляемое поле, свойства поля:

Данные =IIf([Вид ресурса]="М";"Материальные ресурсы";IIf ([Вид ресурса]="0";"Ресурсы оборудования";"Трудовые ресурсы"))

• Нажать кнопку Группировка и сортировка, указатель Больше – установить "С разделом примечания". Разместить в области примечания группы "Вид ресурса" вычисляемое поле, свойства поля:

Данные: =Sum( [Запас] * [Цена ресурса] ),

Денежный формат, Число десятичных знаков 2,

Надпись – "Стоимостной запас ресурсов".

• Разместить в области примечания отчета вычисляемое иоле, свойства поля:

Данные: =Sum( [Запас] * [Цена ресурса] ), Денежный формат, Число десятичных знаков 2, Надпись – "Итого запас ресурсов".

Рис. 10.43. Однотабличный отчет с группировкой строк

2. Многотабличный отчет "Сведения о продукции" (рис 10.44).

Для подготовки следует выполнить следующие шаги:

• Перейти в режим Создание, панель инструментов Отчеты, кнопка Мастер отчетов. Выбрать таблицу ПРОДУКЦИЯ, все поля; таблицу НОРМА, поля: Код ресурса, Единица нормирования, Норма расхода, таблицу РЕСУРС, поля: Наименование ресурса, Вид ресурса, Цена, Единица измерения. Выбрать вид представления данных – ПРОДУКЦИЯ. Добавить уровень группировки – поле Вид ресурса. Сортировка – по полю Наименование ресурса. Макет – СТРУКТУРА, Ориентация – Альбомная. Стиль – НАЧАЛЬНАЯ, название отчета – Сведения о продукции, Изменить макет отчета.

• Удалить в области заголовка группы "Вид ресурса" одноименное поле. Добавить вычисляемое поле, свойства:

Данные: =IIf([Вид ресурса]="М";"Материальные ресурсы";IIf([Вид ресурса]="О";"Ресурсы оборудования";"Трудовые ресурсы"))

Рис. 10.44. Многотабличный отчет

Автоматизация обработки базы данных

Макрос – один из способов автоматизации обработки данных, используемый как метод обработки предопределенных событий в форме, отчете или элементе управления. Выделяют три типа макросов: изолированный; внедренный и групповой. Групповой макрос объединяет несколько связанных макросов в один объект макроса. Внутри группового макроса каждый отдельный макрос имеет собственное имя. Изолированные макросы хранятся как самостоятельные объекты и запускаются из раздела Макросы по имени. Внедренные макросы хранятся в свойствах событий в формах, отчетах или элементах управления, не отображаются как объекты в разделе Макросы, и их нельзя преобразовать в модули Visual Basic. Макрос создается с помощью Построителя макросов, он содержит макрокоманды, которые выбираются из фиксированного набора. Для выполнения макрокоманд задаются логические условия, аргументы (фактические параметры).

Программный модуль на языке VBA создается в виде подпрограммы (Sub) или функции (Function), используемых в процедурах обработки событий.

Ниже приведены примеры макросов.

1. Макрос обновления себестоимости и прибыли продукции при изменении цены ресурса.

Для создания макроса следует действовать так:

• Перейти в режим Создание, панель инструментов Другие, кнопка Макрос, Макрос.

• Нажать кнопку Показать все действия для отображения полного перечня макрокоманд, кнопку Условия для задания условий выполнения макрокоманд и кнопку Аргументы для отображения используемых аргументов. Ввести список макрокоманд с параметрами (табл. 10.5).

Таблица 10.5

Состав макроса Макрос1

Условие

Макрокоманда

Аргументы

[Формы]![ РЕСУРС]! [Цена ресурса].[OnDirty]

ВыводНаЭкран

Нет; Работает макрос

УстановитьСообщения

Нет

ОткрытьЗаирос

Новая таблица; Таблица; Изменение

ОткрытьЗапрос

Новая себестоимость и прибыль продукции; Таблица; Изменение

ОткрытьЗапрос

Удалить СЕБЕСТОИМОСТЬ; Таблица; Изменение

ВыводНаЭкран

Да; Макрос завершен

УстановитьСообщения

Да

• Условие выполнения макрокоманд создается с помощью Построителя выражений – контекстная команда Построить, задать условие: [Формы]![РЕСУРС]![Цена ресурса] . [OnDirty] – изменение цены ресурсов.

• Сохранить макрос под именем Макро 1.

• Внедрить макрос Макрос 1 в форму РЕСУРС: открыть форму РЕСУРС в Конструкторе, указать событие – Закрытие формы, запуск Макрос 1.

2. Создание программного модуля из макроса.

Для создания макроса необходимо выполнить указанное:

• Выбрать режим Работа с базой данных.

• Выбрать макрос Макрос 1, нажать кнопку Преобразовать макросы. Указать, добавить программу обработки ошибок, примечания макросов.

• Текст программного модуля.