Создание четвертого запроса
Запрос – «Какова стоимость продаж за заданный период» реализуется как показано на рисунке ниже. Запрос имеет два параметра и поле в виде расчетного выражения. Поле «Дата заказа» используется только для отбора заказов, поэтому в позиции «Групповые операции» выбран пункт «Условие».
В процессе выполнения запроса используются два параметра [Начало периода] и [Конец периода].
Если, например, необходимо найти стоимость заказов за декабрь, т.е. с 01.12.05 по 31.12.05 , то для параметров появившихся в результате выполнения запроса, нужно задать значения
Результат выполнения запроса будет иметь следующий вид.
SQL выражение для запроса будет выглядеть так:
SELECT Sum([Цена]*[Количество]*(1+[Наценка]-[Скидка])) AS Стоимость
FROM Заказ INNER JOIN Спецификация ON Заказ.[Номер заказа] = Спецификация.[Номер заказа]
WHERE (((Заказ.[Дата заказа])>=[Начало периода] And (Заказ.[Дата заказа])<=[Конец периода]));
Все запросы, если они предназначены для многократного использования, можно сохранить под своим именем, а затем выполнять при необходимости. Для большего удобства и наглядности к запросам могут быть разработаны формы и отчеты, которые позволят более удобно задавать параметры запроса и просматривать результаты.
Проектирование отчетов
Под отчетами понимаются печатные формы, предназначенные для вывода на печать данных из БД. Поскольку выборка данных из базы осуществляется с помощью запросов, то отчеты выводят результаты выполнения запросов. Создание отчетов имеет смысл, если данные выборок носят регулярный характер и должны быть оформлены в виде документа.
В качестве примера создадим отчет «Анализ оплаты заказов», который выводит результаты выполнения второго запроса. Перед созданием отчета необходимо выработать требования к его виду. Для этого проанализируем результат выполнения второго запроса. Возможным результатом анализа будут следующие требования.
1. Суммы заказов, оплаты и отклонений (долга) должны быть сгруппированы по клиентам с созданием промежуточных итогов.
2. Внутри групп номера заказов должны быть упорядочены по возрастанию и пронумерованы.
3. Получить общие итоги по отчету.
Для создания отчета необходимо активизировать вкладку «Отчеты» окна базы данных и нажать кнопку «Создать» или «Создание отчета с помощью мастера».
В появившемся окне выбрать базовый запрос «Анализ оплаты» и все «Доступные поля» перенести в «Выбранные поля» с помощью кнопки «>>» и перейти к следующему окну нажав «Далее >». Поскольку данные отчета нужно сгруппировать по клиентам, кнопкой «>» добавим поле «Организация» в уровень группировки.
Следующим будет окно, в котором нужно установить поля, по которым будет выполняться сортировка, и указать какие итоги будут подводиться по группам и по отчету.
После нажатия кнопок «ОК» и «Далее >» появится окно, где будет предложено выбрать вид отчета. Одним из вариантов вида отчета может быть следующий.
В следующем окне задайте имя отчета и выберите режим «Изменить макет отчета». Это необходимо для того, чтобы добавить нумерацию строк отчета.
В результате макет отчета будет выглядеть так.
В полученном макете в соответствии с требованиями к отчету необходимо выполнить следующие изменения:
1. Вставиь поле с порядковыми номерами строк в группах;
2. Исправить некоторые заголовки столбцов отчета;
3. Заменить надпись «Sum» в примечании группы «Организация» на «Итого по клиенту».
Для того, чтобы организовать счетчик строк, нужно в область данных вставить поле и определить свйства на вкладке «Данные» как показано ниже.
Сохранив макет и открыв отчет в режиме просмотра получим (показано только содержимое отчета без рамок).
Подобным образом могут быть получены отчеты и для других запросов. Вызов отчетов можно оформить в виде кнопочной формы, которая вызывается из главной.
Задание!