Использование вычисляемых полей

Возможности отчетов Access определяются их способностью выполнять простые и сложные вычисления с данными базовой таблицы или запроса. Access предоставляет десятки встроенных функций, предназначенных для обработки данных или для добавления данных в отчет.

Добавление текущей даты. Один из видов информации, которую наиболее часто включают в отчет, является дата подготовки отчета. Для этого Access предоставляет встроенную функцию Now(), которая возвращает текущую системную дату и время. Чтобы добавить текущую дату в отчет, нужно создать свободное поле в верхнем колонтитуле и установить свойства Данные в значение =Now(), а свойство Формат поля - в значение Длинный формат даты.

Выполнение вычислений. Другая задача, которая решается довольно часто - это проведение различных вычислений на основе таблиц. В качестве значения свойства Данные любого элемента управления, позволяющего выводить данные, можно задать выражение для выполнения сложных вычислений с использованием арифметических операторов. Чтобы сообщить Access, что в свойстве Данные будут использованы выражения, нужно ввод выражения начать со знака равенства (=).

Вычисление промежуточных итогов для групп. Еще одна задача, которую обычно приходится решать при составлении отчета - это получение итоговых величин по группам данным. Для этого в разделы примечаний для групп помещают дополнительные свободные элементы управления, в которых используются итоговые функции (sum, min, avg и др.).

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

Пример 1. В режиме Конструктор создать отчет СПИСКИ СТУДЕНТОВ на основе таблицы СТУДЕНТ. Для этого выполняются команды Отчеты ® Создать ® Конструктор ® Выбрать таблицу и ОК. На экране будет пустой отчет (рис.1.13). Открыть список полей, щелкнув на кнопку Список полей на Панели инструментов, и перетащить оттуда поля как показано на рис. 1.14. После этого закрыть отчет и открыть его в режиме Просмотр. На экране должно быть примерно так, как на рис 1.15.

 

 

Рис.1.14. Однотабличный отчет Списки студентов в режиме Конструктор

Рис. 1.15 Однотабличный отчет Списки студентов в режиме Просмотр

Пример 2. С помощью Мастера отчетов создать отчет ИЗУЧЕНИЕ ПРЕДМЕТОВ В ГРУППЕ на основе трех таблиц: ИЗУЧЕНИЕ, ПРЕДМЕТ и ПРЕПОДАВАТЕЛЬ. Таблица ИЗУЧЕНИЕ – основная. Порядок создания отчета следующий.

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

В следующем окне задать уровень группировки, выделив поле Номер группы и нажав на кнопку > . В очередном окне из списка выбрать поле Название и порядок сортировки - По возрастанию. Чтобы произвести подсчет итоговых значений нужно нажать кнопку Итоги и выберать функцию Sum для поля Часы. Далее в окне выбрать макет отчета – Ступенчатый. После этого выбрать стиль отчета Сжатый, затем задать имя отчета Изучение предмета в группе, установить переключатель Просмотреть отчет и Готово. На экране будет отчет (рис. 1.16)

Рис.1.16. Фрагмент отчета, созданный Мастером отчетов.

1.9. Создание и применение макросов

Microsoft Access – это не только набор таблиц, хранящих взаимосвязанные данные, но и набор средств для работы с данными базы, таких как запросы, формы, отчеты, которые могут быть названы объектами приложения. С помощью кнопочных форм может быть создана панель управления приложением, обеспечивающего пользователя простой доступ ко всем его функциям. Добиться этого без использования средств программирования практически невозможно. Простейшим языком программирования и является язык макросов. Его изучение может рассматриваться как хороший способ введения в программирование на языке VBA.

Макрос – программа, состоящая из последовательности макрокоманд. Макрокоманда - это инструкция, ориентированная на выполнение определенного действия над объектами Access и их элементами. Например, макрокоманды можно использовать для выполнения следующих действий:

- для открытия (или закрытия) любой таблицы, запроса, формы или отчета в любом доступном режиме;

- для выполнения запроса на выборку или запроса на изменение;

- для выполнения действий в зависимости от значений в базе данных, форме или отчете;

- для запуска других макросов или процедур VBA;

- для применения фильтра и запуска приложений;

- и многое другое.

Макросы могут быть запущены непосредственно из окна базы данных или окна макроса. Если макрос зависит от события в форме или отчете, его нужно связать с соответствующим событием и запускать при возникновении этого события.

Перед запуском макрос необходимо сохранить командой Файл ® Сохранить как/экспорт. В окне диалога ввести имя и нажать кнопку ОК.