СУБД MS Access. Отчеты
Тема:
СУБД MS Access. Отчеты.
Отчеты, как и формы, являются производными объектами Access, основанными на таблицах или запросах. Формы удобное средство для оперативного просмотра данных, но основное их предназначение обеспечить ввод и редактирование данных. После ввода данных в таблицы с помощью форм, облегчающих ввод, вам может потребоваться вывести данные в систематизированном виде. Для представления данных в удобном и простом для восприятия виде используются отчеты.
- Вывод данных с помощью отчетов.
Общие положения.
Как и любой объект Access, можно создать отчет вручную или с помощью Мастера отчетов (рекомендуется для создания чернового варианта отчета). Отчет создается на основе таблицы (нескольких таблиц) или запроса. Процесс создания нового отчета аналогичен созданию любого объекта Access, т.е. надо просто выбрать объект базы данных Отчет Создать и далее в диалоговом окне Новый отчет выбрать режим создания отчета.
При выборе режима Автоотчет можно быстро создать простой отчет. Режим Конструктор лучше использовать для модификации (настройки) отчета, созданного "вчерне" с помощью Мастера или Автоотчета.
Разработка дизайна отчета.
Внешний вид отчетов полностью определяется типом представляемой в них информации. При создании отчета предварительно необходимо продумать, как будут представлены необходимые данные. Планирование и прогнозирование позволит сократить время на последующее редактирование и доводку.
В ходе подготовки необходимо учесть следующие вопросы:
- Для кого предназначен отчет? Какую информацию хочет увидеть пользователь и как она должна быть размещена?
- Какой формат наилучшим образом подходит для этого? Например, можно ли данные разместить в несколько колонок? Сколько будет колонок?
- Требуется ли отразить в отчете промежуточные итоговые значения?
- В отчете должны быть представлены все данные или только итоговые значения?
- Будут ли в отчете использованы заголовок и графические элементы (линии и прямоугольники) для облегчения восприятия отчета?
- Должен ли отчет иметь такой же вид, как и "бумажные" документы, к которым привык пользователь?
Выбор источника данных.
Отчеты используют те же источники записей, что и формы: таблицы и запросы. Выбор (и изменение) источника данных отчета производится так же, как для формы.
Например, при разработке простого отчета-справочника клиентов с указанием адреса и телефона (в базе данных Поставки) будет использоваться одна таблица Клиенты. Отчет, который должен представлять только часть данных таблицы, будет основан на запросе, осуществляющем выбор записей по определенному критерию, например, по дате. Отчет, содержащий только итоговые данные, будет основан на запросе, содержащем функции Sum или Count. Отчет, содержащий данные из нескольких таблиц базы, проще сделать на основе реляционного запроса.
Использование сгруппированных отчетов.
Отчеты имеют несколько особенностей, отсутствующих в формах: одна из них возможность группирования. Сгруппированный отчет делит данные на полосы в соответствии со значениями полей, выбранных для каждого уровня группировки. Примером группировки является отчет, содержащий сведения о поставках (в базе данных Поставки), сгруппированный сначала по клиентам, а потом для каждого клиента по маркам нефтепродуктов. В отчете допускается наличие до 10 уровней группировки, но крайне редко возникает потребность в более чем трех-четырех уровнях, а чаще всего бывает достаточно одного уровня.
В мастере создания отчетов уточняется, нужна ли группировка. Но еще до запуска мастера можно создать запрос, который будет группировать данные, и на основе этого запроса создать отчет.
Поля, используемые для создания групп отчета, также используются и для сортировки. Например, в группе каждого нефтепродукта можно отсортировать поставки по возрастанию даты. Сортировка является очень полезной возможностью, особенно если отчет основан непосредственно на таблице. Сортировку данных можно определить с помощью диалогового окна Мастера в процессе создания отчета.
- Создание отчетов.
Создание отчета с помощью Мастера отчетов.
Разберем создание простого отчета на основе таблицы в базе данных Поставки. Пусть отчет должен представлять собой счет клиенту за поставленные нефтепродукты (с указанием клиента, названия нефтепродукта, объема поставки, цены продукта, стоимости поставки). Такой отчет лучше составлять на основе запроса с параметром Заказы_Клиент.
Шаг 1: Выбираем режим создания отчета с помощью Мастера на основе запроса С Заказы_Клиент (рис. 5.1). Как и другие мастера Access. Мастер отчетов задает ряд вопросов о создаваемом отчете и строит его, основываясь на ваших ответах.
Рис. 5.1. Выбор запроса, на основе которого создается отчет, и режима создания отчета.
Шаг 2: Задаем поля запроса, которые будут отражаться в отчете (рис. 5.2). Поля могут выбираться из разных таблиц и запросов (используется список Таблицы/запросы).
Рис. 5.2. Окно выбора полей для отчета.
Шаг 3: Выбор уровней группировки.
Задаем группировку по полю Клиент. Это означает, что данные поля Клиент будут расположены в отдельном столбце и отсортированы по возрастанию.
Рис. 5.3. Окно задания группировки
Замечание. Если отчет создается на основе нескольких таблиц, то надо будет задать (перед определением группировки) первичную таблицу для представления данных. При этом сразу создается группировка (которую, впрочем, можно изменить).
Шаг 4: Выбор уровней сортировки. Предлагается до четырех уровней сортировки.
Поскольку на предыдущем шаге была выбрана группировка по полю Клиент, сортировка может быть осуществлена по полю Продукт (можно выбрать из списка в первом окне).
Рис. 5.4. Окно задания сортировки.
Замечание. Если данные имеют числовые поля (количество, стоимость), можно воспользоваться кнопкой Итоги… для задания итоговых вычислений в группе. Например, при составлении списка поставок некоторому клиенту можно задать вычисление суммарной стоимости поставляемых нефтепродуктов (рис. 5.5).
Рис. 5.5. Окно задания итоговых вычислений.
Шаг 5: Для сгруппированных данных Мастер предлагает шесть вариантов (рис. 5.6) расположения вид макета. Расположение групп данных осуществляется по указанным полям с отступом или выравниваем по левому краю. Различия в макетах дело вкуса, а не изменение функциональности. Все макеты практически одинаковы. Любой выбранный макет все равно придется "доводить" в Конструкторе до удобного вида.
Здесь же можно упомянуть виды Автоотчетов:
- в столбец (поля размещаются сверху вниз с границами вокруг каждого поля)
- ленточный (поля размещаются слева направо, имеются заголовки столбцов)
Рис. 5.6. Окно выбора вида макета.
Для примера (счет за поставку нефтепродуктов) выбран макет-ступенчатый.
Шаг 6: Выбор стиля отчета (рис. 5.7). Можно создать собственный стиль и сохранить его.
Рис. 5.7. Окно выбора стиля отчета.
Шаг 7: На последней странице мастера задается имя отчета.
Заданное имя используется также как заголовок отчета в режиме предварительного просмотра.
Замечание. Режим предварительного просмотра отчета аналогичен такому же режиму в Word для просмотра документа перед печатью. Аналогично Word-документу для отчета задаются параметры страницы (поля, ориентация).
Рис. 5.8. Окно указания имени отчета.
Итак, на рис. 5.9 представлен готовый отчет в режиме предварительного просмотра. В таком виде он вполне удобен, но все еще нуждается в дополнительной настройке. Ни один из стандартных макетов не является идеальным.
Рис. 5.9. Окончательный отчет.
- Настройка отчета.
Созданный макет отчета можно модифицировать в режиме Конструктор.
Вид отчета в режиме Конструктор.
Вид отчета Счет (на основе запроса с параметром Заказы_клиент) в режиме Конструктор представлен на рис. 5.10.
Рис. 5.10. Отчет, созданный мастером.
В общем случае отчет содержит три области: Заголовок отчета, Верхний колонтитул, Заголовок группы, Область данных, Нижний колонтитул и Примечание отчета. Размеры этих областей могут быть изменены путем "перетаскивания" их границ мышью (так же, как границы любого окна).
При создании форм и отчетов используется одна и та же панель элементов, следовательно, в отчет допускается помещение тех же элементов, что и в форму. Однако интерактивные элементы (списки, поля со списком, кнопки, переключатели и т. п.) не подходят для отчетов, хотя флажок вполне можно использовать для представления значений Да/Нет.
В отчетах чаще всего используют надписи (для размещения произвольного текста), текстовые поля (для вывода данных из поля таблицы или результата выражения), разрыв страницы (переход на новую страницу отчета) и декоративные элементы оформления (рисунок, рамка объекта, линия, прямоугольник).
Настройка отчета.
Можно использовать сгенерированный мастером отчет в первозданном виде (для проверочного прочтения). Но для отчетов, которые предназначены для изучения и дальнейшего использования, рекомендуется выполнить следующие изменения, придающие отчету более элегантный вид. Нет необходимости делать их в каждом отчете, но в большинстве случаев это будет очень разумно.
- Удалите лишние заголовки столбцов полей групп. Если поле выводится под групповым заголовком, заголовок столбца уже не требуется.
- Скорректируйте размеры надписей и текстовых полей для правильного отображения заголовков и данных.
- Измените при необходимости выравнивание текста в элементах управления. По умолчанию Access выравнивает числа по правому краю и текст по левому краю.
- В качестве источника данных используйте выражение, позволяющее комбинировать два или более поля, выводимых в одном текстовом поле (используя знак конкатенации &).
- Укажите формат (и единицы) денежных значений.
- Разместите заголовки столбцов должным образом, чтобы улучшить внешний вид отпечатанного отчета.
- Установите значение Да свойства Не выводить повторы полей области данных.
- Установите значение Да свойства Расширение для элемента управления, содержащего заголовок, а также для любых элементов, содержащих более одной строки данных, что позволит осуществить переход на следующую строку.
- Установите значение Да свойства Сжатие для всех элементов области данных, а также для самой области детализации. Это позволит избежать пустых строк в отчете при опускании повторяющихся данных или при отсутствии данных в поле.
- Установите значение Вся группа свойства Не разрывать в диалоговом окне Сортировка и группировка (рис. 5.15) для того, чтобы группа начиналась на новой странице, если разрыв страницы приходится на середину группы.
Вид модифицированного отчета представлен на рис. 5.11.
Форматирование отчетов.
Как правило, отчеты не требуют дополнительного форматирования, хотя мастер создания отчетов и предлагает несколько вариантов. Так же, как и при работе с формами, можно применить выбранный стиль к отчету (меню Формат Автоформат). Кроме того, выделенный элемент отчета можно отформатировать вручную (например, изменить гарнитуру, размер и цвет шрифта).
При постоянной работе с отчетами одного и того же вида в режиме конструктора можно создать свой шаблон. По умолчанию новый отчет в Access основан на шаблоне Обычный, имеющий белый фон и шрифт Arial размером 8 пт (как и документ Word).
Иногда в отчетах при печати остаются пустые области данных. Можно использовать элементы управления с объединением (конкатенацией) в одном выражении при указании источника данных текстового поля.
Например, для вывода полного адреса в одной строке можно использовать выражение:
=[Почтовй_код] &"," &[Страна] &","&[Город]
C помощью диалогового окна Формат Автоформат в режиме конструктора можно указать новый формат отчета. Предлагаемые форматы аналогичны тем, которые предлагает мастер создания отчетов.
Рис. 5.11. Отчет, настроенный в Конструкторе.
Характеристики и свойства отчетов.
Отчеты имеют почти такие же свойства, как и формы. Отметим несколько полезных свойств, характерных только для отчетов. Свойства отчетов определяют, например, как будут выглядеть верхние и нижние колонтитулы, или позволяют задать сортировку и группировку данных, выбирать формат столбцов и определять, будет ли подавлен вывод повторяющихся данных.
Для получения справочной информации о любом свойстве необходимо поместить указатель в поле свойства и вызвать справку (клавиша F1).
Например, для отображения свойств отчета в целом надо выделить отчет
(Правка Выделить отчет) и выбрать команду Вид Свойства (рис 5.12)
Рис. 5.12.Окно свойств отчета.
Для отображения свойств любого другого элемента, надо выделить его и, щелкнув правой кнопкой мыши, выбрать в контекстном меню (рис.5.13) пункт Свойства.
Рис. 5.13. Контекстное меню отчета.
Свойства форматированного отчета.
Свойства форматированного отчета размещены на вкладке Макет (рис 5.10). К этим свойствам относятся:
- Верхний и нижний колонтитулы страницы. Возможные варианты: Все страницы, Без заголовка, Без примечания и Без заголовка/примечания.
- Неразрывная группа. Это свойство предлагает два значения (В столбце и На странице), позволяющие определить, как будет представлена группа.
Свойства сгруппированных полей.
Свойства сгруппированного поля расположены на вкладке Все (рис. 5.14). Для изменения свойства надо выбрать нужное значение из списка или задать вручную.
Например, чтобы избежать повторения данных в сгруппированных полях, надо установить значение Да свойства Не выводить повторы для выбранного поля.
Рис. 5.14.Окно свойств сгруппированного поля Клиент.
Сортировка и группировка
С помощью диалогового окна Сортировка и группировка (Вид Сортировка и группировка) можно настроить некоторые свойства группы.
Например, если желательно (и есть возможность) представить группу данных при печати на одной странице, надо установить в диалоговом окне Сортировка и группировка значение Вся группа свойства Не разрывать (рис 5.15).
Рис. 5.15. Диалоговое окно Сортировка и группировка.
Задание нумерации строк в отчете.
Для задания нумерации в отчете (например, позиций счета), надо создать новое свободное поле и в бланке свойств (рис. 5.16) на вкладке Данные установить: Данные = 1 (начало нумерации) и Сумма с накоплением - Для всего при сквозной нумерации всех позиций отчета (или Для группы при своей нумерации в каждой группе).
Рис. 5.16. Окно свойств свободного поля.
-
Создание почтовых наклеек.
Для создания почтовых наклеек необходимо использовать мастер создания наклеек.
Выполните следующие действия:
Шаг 1. Выбор мастера наклеек и таблицы-источника данных.
Шаг 2. Выбор размера наклейки.
Шаг 3. Выбор стилевого оформления.
Шаг 4. Выбор полей, помещаемых в наклейку, и задание дополнительного текста.
Шаг 5. Задание порядка вывода (сортировка) наклеек.
Шаг 6. Присваивание имени отчету.
8
СУБД MS Access. Отчеты