
- •I ииГюдные элементы
- •VI 1лновка фонового рисунка
- •V. Мновка одинакового размера ряда элементов
- •I руппировка элементов
- •Часть II 1 Создание форм
- •Делайте формы как можно более быстрыми
- •Делайте формы защищенными от ошибок
- •По мере возможности старайтесь имитировать бумажные формы
- •Дайте пользователям только то, что они хотят
- •Не пренебрегайте клавиатурой
- •Уделите внимание разрешению экрана и цвету
- •Сделайте текст формы легко читаемым
- •)Избегайте излишеств
- •Правильно организуйте элементы форм
- •1Ффективная работа с цветом
- •Earn для отчета еще ис определен ш гочпик данных, выберите название таблицы или запроса.
- •Отпустите кнопку мыши. Программа перерисует выделенный объею вписав его в новые формы контура выделения. 1
- •По мере возможности старайтесь имитировать бумажные формы
- •Дайте пользователям то, что они хотят...
- •3.... А затем остановитесь
- •Используйте нумерацию страниц
- •Используйте дату и время
- •Следите за порядком полей
- •Уделите внимание разрешению экрана и цвету
- •Сделайте текст отчета легко читаемым
- •Сортируйте и (или) группируйте данные
- •10. Правильно организуйте элементы отчетов
- •In, 202 заголовок, 222
- •Ilf, 133 привязка, 340
- •5Научно-популярное издание Пол Мак-Федрис
Сделайте текст отчета легко читаемым
Бесспорно, что трудночитаемый текст утомляет глаза и раздражает читателя. Этот тезис относится и к отчетам Access, в которых текст (например, имена полей и надписи) является основным информационным элементом, поэтому при форматировании уделяйте этому вопросу особое внимание. (Далее в этой главе мы отдельно остановимся на вопросе форматирования текста в отчете.)
Сортируйте и (или) группируйте данные
Отчеты — это не просто поток данных. В конце концов, вывести на печать последовательность полей можно и без формы, распечатав простое табличное представление. Большинству пользователей отчетов требуется определенная организация записей — не просто фильтрация (о чем мы уже говорили ранее), но также группировка и сортировка. Сортировка помогает пользователю быстро найти нужные данные, а группировка — проанализировать данные и подвести итоги.
10. Правильно организуйте элементы отчетов
Большинство отчетов, особенно ленточные, имеют группы связанных элементов. К примеру, отчеты в форме счета-фактуры содержат название и адрес клиента в одной группе, в другой — метод доставки и номер расчетного счета, и в третьей — строки заказа. Вы сделаете отчет намного понятнее, если визуально отделите группы друг от друга. Как будет показано в следующем разделе, для такого разделения можно использовать линии, границы, а также другие средства.
Организация элементов в отчете
Отчет, состоящий всего из трех-четырех элементов, не требует особой организации. В него можно просто перетянуть поля и с помощью мыши разместить элементы в рабочей области. Однако редко какой отчет содержит так мало полей — обычно он включает в себя десяток-другой элементов, и все они требуют внимания. Беспорядочное размещение элементов вряд ли будет достойным решением проблемы: неопытный пользователь легко запутается, а слишком занятый сотрудник будет тратить лишнее время на то, чтобы разобраться в деталях такого отчета.
Для правильной организации элементов в отчете не требуется чего-либо экстраординарного; она предполагает следующее:
группировку связанных элементов;
естественный порядок полей;
интуитивную понятность принадлежности конкретного элемента определенной группе.
Первые два условия поднимают вопросы организации данных и были описаны в предыдущем разделе. В этом же разделе будут описаны добавление эффектов, позволяющих визуально скомпоновать элементы в группы, и при этом показать пользователю общую организацию формы.
Правильное использование линий и прямоугольников
На панели элементов конструктора отчетов имеется два графических элемента: Линия и Прямоугольник. При организации элементов отчета вы можете воспользоваться этими средствами следующим образом.
I 1 ■ Прямоугольник используется для оформления набора связанных
I—J элементов в группу. Расположите эти элементы рядом друг с другом
и нарисуйте вокруг них прямоугольник, ч ■ Линии используются для разделения групп и отдельных элементов. д! Освободите немного пространства между элементами или группами и нарисуйте на этом месте линию.
Совет
Для того чтобы нарисовать с трого вертикальную ипи горизонтальную линию, при 1 рисовании удерживайте нажатой клавишу <bhift>.
В обоих случаях щелкните на соответствующей кнопке панели элементов, после чего нарисуйте на отчете фигуру.
На рис. 13.4 показан пример отчета, использующего эти методики.
Рис.
13.4.
Прямоугольник использован для
организации связанных элементов в
группу, а линии - для разделения отдельных
элементов и групп
После того как линия или прямоугольник нарисованы, графику можно отформатировать, воспользовавшись для этого следующими кнопками панели инструментов форматирования (рис. 13.5).
Цвет заливки/фона. Щелкните на этом списке, а в открывшемся окне — на квадратике с нужным цветом фона прямоугольника.
Совет
Если прямоугольник нарисован вокруг множества уже существующих элементов, а после этого был установлен его фон, элементы будут скрыты под непрозрачным фоном. Чтобы решить эту проблему, выделите прямоугольник и выберите команду меню Формат^На задний план. При этом изменится Z-последовательность, и прямоугольник окажется позади остальных элементов.
Цвет линии/границы. Щелкните на этом списке, в открывшемся окне щелкните на квадратике с нужным цветом линии или границы прямоугольника.
Толщина линии/границы. Откройте этот список и выберите цифру с нужной толщиной линии или границы прямоугольника.
Обычное оформление. Откройте этот список и выберите один из предопределенных стилей линии или границы прямоугольника: Обычное оформление, Приподнятое оформление, Утопленное оформление, Вдавленное оформление, Оформленное с тенью или Рельефное оформление.
Создание разрывов страниц
Разрыв страницы представляет собой объект, указывающий принтеру на переход к следующему листу независимо от того, какой объем текущей страницы остался незаполненным. Панель элементов конструктора отчетов содержит кнопку Разрыв страницы, позволяющую вставлять разрыв страницы в любом месте отчета. Это оказывается полезным, если нужно разделить отдельные разделы отчета на подразделы. К примеру, если вставить разрыв в области Заголовок отчета, заголовок можно разбить на две отдельные страницы, включив в первую название отчета и логотип компании, а на второй разместив комментарии или инструкции по интерпретации данных.
Для вставки разрыва страницы в отчет нужно выполнить следующие действия:
1—1"' 1. Щелкнуть на кнопке Разрыв страницы панели инструментов.
ГД 2. Щелкнуть в том месте отчета, в котором должен присутствовать разрыв страницы. Программа отобразит шесть точек, маркирующих место нахождения будущего разрыва.
Размещение текста в отчете
В отличие от остальных объектов базы данных, в отчете не содержится практически ничего, кроме текста. За исключением нескольких рисунков, а также линий и прямоугольников, введенных для организации данных, отчет представляет собой текст: заголовок и подзаголовок, номера страниц, дата и время, вводные инструкции, названия полей и, естественно, сами данные — все эти элементы выводятся в виде текста. Это значит, что при работе с отчетом значительную часть времени придется работать именно с текстом, поэтому недостаточно принять установки по умолчанию, предложенные программой Access, и просто разместить элементы в отчете — текст должен стать внутренней частью общего дизайна отчета. В конце концов, правильно отформатированные символы сделают отчет понятным и легко читаемым, в то время как небрежное форматирование может погубить даже самый удачный во всех других отношениях отчет.
Тексту нужно уделить особое внимание, поскольку cix) понятность и визуальное восприятие зиждется на четырех столпах, определяющих "архитектуру" каждого из символов. Это — шрифт, его размер и стиль, а также периодичность символов. В представлении конструктора отчетов можно изменять любые из этих атрибутов.
Более подробно об архитектуре текста читайте в разделе "Размещение текста на форме" главы 10.
Форматирование текста
Для форматирования текста элементов отчета можно использовать следующее:
Панель инструментов форматирования. Как мы видим на рис. 13.5, эта панель содержит шесть кнопок: Шрифт, Размер шрифта, Полужирный, Курсив, Подчеркнутый и Цвет текста. Для выравнивания текста внутри элемента можно использовать также кнопки По левому краю, По центру и По правому краю.
Окно свойств элемента. В этом окне во вкладке Макет содержатся шесть строк характеристик текста: Цвет текста, Шрифт, Размер шрифта, Насыщенность, Курсив и Подчеркнутый. Для изменения стиля выравнивания можно также воспользоваться параметром Выравнивание текста.
Рис.
13.5. Отчет с рядом примеров форматирования
текста
Советы и замечания относительно форматирования текста
Программа Access максимально упрощает добавление в любые отчеты уникальных и приятных для глаз шрифтов. Однако и здесь не обходится без ряда ограничений, поскольку отчет, переполненный различными, не сочетающимися друг с другом шрифтами выглядит весьма странно. Воспользуйтесь следующими рекомендациями, и вы сможете придать отчету приятный внешний вид.
Не устанавливайте слишком мелкий размер шрифта. По умолчанию в программе Access используется размер 8 точек, однако вы окажете читателю большую услугу, увеличив его до 10 или даже 12 точек.
Для заголовков используйте шрифт большей величины. Заголовок отчета (элементы, помещаемые в одноименный раздел) должны выделяться на фоне остального текста.
Не используйте слишком вычурный шрифт. Лучше всего будет смотреться простой шрифт без засечек (например, Arial CYR).
Не смешивайте разные шрифты. Попробуйте ограничиться одним, максимум двумя типами шрифта. Если нужно выделить некоторые разделы отчета, это всегда можно сделать с помощью размера и стилей.
Используйте полужирный стиль. Названия полей, а также другие надписи можно выделить, применяя к ним полужирный стиль. Старайтесь избегать других эффектов, таких как курсив и подчеркивание.
Обратите внимание на фон. Для улучшения читабельности применяйте максимально контрастные схемы цвета шрифта и фона. Лучшим вариантом станет темный текст на светлом фоне. Не используйте в качестве фона рисунки, если текст не выделяется на них достаточно хорошо (для усиления выделения можно использовать полужирный стиль, больший размер букв, а также более темный цвет шрифта).
Тонкости форматирования
Деловые отчеты обычно не должны содержать декоративных элементов, поскольку экстравагантные и перенасыщенные отчеты сбивают пользователя с толку. В то же время, никто не говорит о том, что отчеты должны быть абсолютно серыми и неприглядными. Если у вас легкая рука, я не вижу причин, чтобы немного не разбавить отчет рисунками и прочими элементами, вызывающими визуальный интерес. Для создания корпоративного стиля в отчет можно добавить логотип компании или применить общепринятую цветовую схему. В последних разделах настоящей главы будут показаны эти методики улучшения внешнего вида отчетов.
Работа с цветом
Ранее мы уже ознакомились с греми приемами настройки цветов отчетов.
Для настройки фона элемента его нужно выделить и выбрать один из цветов, предлагаемых при щелчке на кнопке Цвет заливки/фона панели инструментов форматирования. Можно также открыть окно свойств объекта и изменить значение в строке Цвет фона вкладки Макет.
Для изменения цвета линий и границ элемента их выделяют и выбирают один из цветов, предлагаемых при щелчке на кнопке Цвет линий/границ панели инструментов форматирования. Можно также открыть окно свойств объекта и изменить значение в строке Цвет границы вкладки Макет.
Для изменения цвета текста в элементе его нужно выделить и выбрать один из цветов, предлагаемых при щелчке на кнопке Цвет текста панели инструментов форматирования. Можно также открыть окно свойств объекта и изменить значение в строке Цвет текста вкладки Макет.
Создание нестандартных цветов
Панели цветов предлагают выбрать один из 40 вариантов. В то же время в окне свойств объекта можно создать и свой, нестандартный цвет. Для этого:
Выделите на форме элемент, с которым собираетесь работать.
Откройте окно свойств объекта (для этого выберите в меню команду ВидОСвойства или нажмите комбинацию клавиш <Alt+Enter>).
Перейдите к вкладке Макет.
Выберите то цветовое свойство, с которым будете работать.
Откройте диалоговое окно Цвет, щелкнув на кнопке троеточия.
Разверните диалоговое окно, щелкнув на кнопке Определить цвет.
Создание дополнительных цветов с помощью элементов раскрытого диалогового
окна Цвет описано в разделе "Создание нестандартных цветов" главы 10.
С помощью элементов окна создайте нужный цвет.
Щелкните на кнопке Добавить в набор, после чего сформированный цвет будет сохранен в одном из блоков области Дополнительные цвета.
Щелкните на прямоугольнике области Дополнительные цвета, содержащем созданный цвет.
10. Щелкните на кнопке ОК.
Эффективное использование цвета в отчетах
Теперь вы знаете, как применять цвета к элементам отчетов, но этих знаний недостаточно. Несочетающиеся или неправильно примененные цвета могут только ухудшить внешний вид отчета, но никак не улучшить его. В этом разделе будут изложены некоторые основные правила эффективного использования цветов в отчетах.
Когда под рукой большое количество цветов, возникает естественное желание использовать на каждой странице, по крайней мере, десяток из них. Однако слишком большое количество цветов может только запутать пользователя и быстро утомить его глаза. Старайтесь использовать в отчете не более двух-трех цветов. Если вам кажется, что данного количества явно не хватает, попробуйте дополнить эту пару цветов их же оттенками.
До завершения работы над цветовой схемой нужно проверить, достаточно ли хорошо они сочетаются друг с другом. Например, черный и синий цвета трудно различимы, а комбинация зеленого и красного вызывает рябь в глазах. Старайтесь также избегать комбинаций несочетающихся цветов, таких как красный/синий, синий/зеленый и коричневый/черный. Такие же комбинации, как красный/желтый, серый/красный и синий/желтый, удачно сочетаются друг с другом и создают контрастные формы. Подобного эффекта можно добиться применением контрастных оттенков одного и того же цвета, например, светло-серый/черный.
Предупреждение
Еще одной причиной недопустимости сочетания красного и зеленого цветов является то, что достаточно большой процент людей страдает дальтонизмом.
При выборе цветовой схемы подумайте также о психологическом влиянии комбинаций цветов на пользователя. Как показали исследования, слишком "холодные" цвета, такие как синий и серый, вызывают зависимость и доверие. Исходя из этого, данные цвета хорошо подходят для деловых отчетов. Отчетам, требующим немного волнения, требуются немного более теплые цвета (к примеру, желтый, оранжевый и красный цвета способны создать атмосферу праздника и удовлетворения). Для создания чувства защищенности и комфорта используются коричневый и желтый цвета; для отчетов же, затрагивающих тему окружающей среды, используйте коричневый и зеленый.
Добавление в отчет рисунков
Хорошим способом привнесения в отчет разнообразия является добавление в него тематического рисунка. Этим рисунком может быть логотип компании, отдела или проекта, штриховая графика или рисунок, связанные с общей тематикой отчета или рассматриваемыми данными. Программа Access поддерживает все основные графические форматы, так что вы свободны в выборе рисунков, взятых из внешних источников (естественно, при соблюдении авторских прав).
Для добавления в отчет рисунка выполните следующие действия.
, 0| 1. На панели элементов щелкните па кнопке Рисунок.
Растяните в отчете контур области, в которую будет помещен рисунок. Когда кнопка мыши будет отпущена, программа откроет окно Выбор рисунка.
Выберите папку и файл рисунка и щелкните на кнопке ОК.
При необходимости измените размеры рисунка.
Откройте окно свойств объекта.
Перейдите к вкладке Макет.
В строке Установка размеров выберите одно из следующих значений:
Фрагмент. Рисунок будет отображаться, с использованием своих фактических размеров. Если размеры рисунка превышают размеры элемента, соответствующие его части будут усечены.
Вписать в рамку. Рисунок будет растянут по вертикали и горизонтали так, чтобы полностью заполнить собой элемент. По размеру рамки. Рисунок будет увеличен до таких размеров, чтобы заполнить элемент по вертикали либо по горизонтали. При этом исходные пропорции рисунка будут сохранены.
В строке Выравнивание рисунка выберите нужное значение (по левому, верхнему, правому, нижнему краю элемента или по его центру).
Если в строке Установка размеров выбран пункт, отличный от Фрагмент, вы можете установить свойство Мозаичное заполнение в значение Да или Нет. В первом случае рисунок будет повторен на элементе так, чтобы заполнить собой все его пространство; во втором случае рисунок будет отображен только единожды.
10. Закройте окно свойств.
Добавление спецэффектов
Программа Access поставляется с набором предопределенных стилей оформления, позволяющих отображать на границах элемента некоторые эффекты. Существует шесть вариантов стандартного оформления: Обычное оформление, Приподнятое оформление, Утопленное оформление, Вдавленное оформление, Оформление с тенью и Рельефное оформление. Все они показаны на рис. 13.6. Для применения этих эффектов к выделенному элементу можно воспользоваться любым из следующих методов:
Открыть список спецэффектов на панели инструментов форматирования и щелкнуть на нужном (рис. 13.6).
Открыть окно свойств объекта, перейти к вкладке Макет и в строке Оформление выбрать нужный стиль.
Рис.
13.6. Панель Оформление используется
для создания показанных на данном
рисунке эффектов границ
Создание для текста эффекта тени
Эффект тени, о котором речь шла в предыдущем разделе, применим только к границам элементов. А как этот же эффект применить к тексту надписи? Можно выполнить следующую последовательность действий:
Добавить в отчет надпись, отредактировать ее текст и при необходимости настроить форматирование.
Выделив надпись, развернуть палитру Цвет линии/границы (см. рис. 13.5) и щелкнуть на кнопке Прозрачный.
Выбрать в меню команду Правка<=>Дублировать, и создать копию рисунка.
Переместить копию так, чтобы она была слегка смещена относительно оригинала (например, вправо и вниз) В результате получится эффект отбрасывания тени.
Примечание
Если требуется очень точное смещение копии относительно оригинала, вы можете, удерживая клавишу <Ctrl>, нажимать клавиши стрелок. Каждое такое нажатие будет смещать копию на один пиксель в нужном направлении.
В окне свойств и вкладке Макет выбрать для копии относительно светлый цвет шрифта (например, светло-серый).
На рис. 13.7 показан пример оттененного текста.
Рис.
13.7. Для создания эффекта тени можно
использовать дубликат надписи
Что читать дальше
Ограничение состава записей только »кпремальными значениями они сано в плане 1.
Более подробное описание элементов архитектуры текста содержится в разделе "Размещение текста на форме" главы 10.
Подробное описание работы с расширенным окном выбора цвета содержится в разделе "Работа с цветом" главы 10.
Основам работы с конструктором отчетов посвящен одноименный раздел главы 12.
Различные методы работы с элементами в конструкторе отчетов описаны в разделе "Работа с элементами отчета" главы 12.
О группировке записей в отчетах читайте в главе 14.
Создание в отчете вычисляемых элементов описано в разделе "Добавление в отчет вычислений" главы 14.
Создание подотчетов (отчетов, включающих данные из нескольких связанных таблиц) описано в разделе "Создание многотабличных отчетов" главы 15
.Создание
расширенных
отчетов
Механизм создания отчетов в программе Access довольно хорошо сконструирован — несмотря на обилие возможностей, для создания простых отчетов их использовать напрямую совсем не обязательно. При работе с функцией Автоотчет, мастером и конструктором отчетов создание простых отчетов максимально упрошено.
Если вы хотите поднять создаваемые отчеты на новый, более высокий уровень, механизмы, предлагаемые программой Access, опять же вас вполне удовлетворят. В то же время, по мере повышения вашего профессионального уровня в области создания отчетов некоторые методики и функции немного усложнятся. Однако не волнуйтесь — нет ничего такого, что вы не смогли бы выполнить, особенно если использовать предлагаемую главу в качестве путеводителя. Здесь вы узнаете о сортировке и группировке, добавлении вычислений, запуске отчетов с помощью макросов и кнопок, а также о ряде методов управления выводом отчетов.
Сортировка
и группировка в отчетах
Мастер отчетов предлагает различные варианты сортировки и группировки записей на основании значений одного или нескольких полей. Если
14
В ЭТОЙ ГЛАВЕ
Сортировка и группировка
Создание и использование форм 1
В ЭТОЙ ГЛАВЕ 1
|И< пользование инструмента «шгоформы 3
Создание простых форм с помощью мастера 7
Навигация в форме 9
Создание формы в конструкторе 10
Что читать дальше 21
.Работа с элементами форм 21
Манипуляции с элементами форм 21
Добавление в форму надписей 33
Г" 33
Добавление в форму текстовых полей 35
Что читать дальше 39
Предотвращение ошибок за счет проверки данных 42
Использование элементов управления, ограничивающих выбор вариантов данных 48
Ввод данных с помощью элементов ActiveX 60
Что читать дальше 64
Особенности создания деловых форм 65
.Использование форм на производстве 66
Десять советов относительно создания деловых форм 67
.Создание 84
.Ill 102
Создание и настройка отчетов 102
оСоздание и публикация отчетов 104
В ЭТОЙ ГЛАВЕ 104
ЯОсобенности создания деловь отчетов 130
В ЭТОЙ ГЛАВЕ 130
.Создание 156
расширенных 156
отчетов 156
14 156
В ЭТОЙ ГЛАВЕ 156
Процесс создания многоколоночных отчетов будет подробно описан в следующей главе.Создание 175
В ЭТОЙ ГЛАВЕ 175
Настройка отчета на размещение начала секции в начале строки или столбца описана в соответствующем разделе главы 14.Предметный указатель 196
Выбрать в меню команду ВидОСортировка и группировка.
Щелкнуть на кнопке Сортировка и группировка панели инструментов Формат (форма/отчет) (рис. 14.1).
Программа
откроет окно, показанное на рис. 14.1.
Рис.
14.1.
Это окно используется для сортировки
и группировки записей на основе значений
одного или нескольких полей
Установка параметров сортировки
Порядок сортировки настраивается в верхней части диалогового окна Сортировка и группировка. Для задания параметров сортировки выполните следующие действия.
В одной из ячеек колонки Попе/выражение выберите имя поля, по которому должна проводиться сортировка.
В ячейке Порядок сортировки, смежной с введенным именем поля, выберите один из следующих вариантов упорядочивания: По возрастанию или По убыванию.
При необходимости повторите действия 1-2 для других полей, по которым будет проводиться упорядочивание.
Настройка параметров группировки
Группой называют набор связанных записей. К примеру, в отчете о выписанных счет-фактурах можно создать группы по каждому из клиентов. Такое определение подобно определению сортировки; так чем же отличаются группы? При работе с группами в программе Access образуются две новых секции: Заголовок группы и Примечание группы. В первой можно задать название группы, а во второй — вывести на печать некоторую сводную информацию. К примеру, в примечании можно выводить сумму значений некоторого поля или количество записей в пределах каждой из групп (см. раздел "Добавление в отчет вычислений" далее в этой главе).
Для группировки записей в отчете выполните следующие действия.
В верхней части диалогового окна Сортировка и группировка выберите поле, которое собираетесь использовать в качестве основы группировки записей. В нижней части диалогового окна отобразится список свойств для данного поля.
Для добавления в отчет секции заголовка группы выберите в строке Заголовок группы значение Да.
Для добавления в отчет секции примечаний группы выберите в строке Примечания группы значение Да.
В строке Группировка нужно указать метод формирования групп.
В случае числового поля нужно выбрать значение Интервал. В поле Интервал нужно ввести числовое значение, которое будет использовано в качестве основы группировки. Например, при выборе значения 10 будут комбинироваться значения 1-10, 11-20 и т.д.
В случае текстового поля нужно выбрать значение По первым знакам. В поле Интервал нужно указать количество первых символов, на основании которых будет проводиться группировка. К примеру, если в этом поле ввести число 2, группировка будет выполняться по первым двум символам строк.
В случае, если поле имеет тип даты, можно выбрать одно из следующих значений: По годам, По кварталам, По месяцам, По неделям, По дням, По часам, По минутам или По секундам.
В списке Не разрывать нужно определить, должна ли программа оставлять заголовок и примечание группы на одной странице с ее данными. Если вас этот вопрос не волнует, выберите значение Нет, в противном случае выберите один из следующих вариантов:
Вся группа. При выборе этого значения программа будет пытаться отображать всю группу (заголовок, строки и примечание) на одной странице (если это невозможно, данный параметр будет игнорироваться). С первыми данными. При выборе этого значения заголовок группы будет всегда выводиться на одной странице с ее первой записью, та
ким образом шголоиок 11>s iMii.i in 111 iанется обособленным на отделi. ной странице.
6. Закройте окно Сортиропк.1 и (руннировка.
Рис.
14.2.
В этом окне определяется сортировка
и группировка таблицы
Заказы
по полю
Цена
Рис.
14.3.
Окно конструктора отчетов с открытыми
секциями заголовка и примечаний
группы
В показанном примере в секции заголовка и примечаний отчета добавлены иычисляемые поля: в заголовке отображаются минимальное и максимальное значения цен на данный товар (при этом использованы функции агрегирования Min и Мах; см. раздел "Добавление в отчет вычисления" далее в этой главе); в примечаниях отображается количество записей в группе (с использованием функции Count). На рис. 14.4 показана одна страница результирующего отчета.
Рис.
14.4.
Отчет, показанный на рис. 14.3, открыт в
режиме предварительного просмотра
Сортировка и группировка с использованием выражений
В диалоговом окне Сортировка и группировка в столбце Попе/выражение
указывается название поля, по которому будет проводиться упорядочивание и группировка. Однако наши возможности здесь не ограничены списком полей, содержащихся в предлагаемом списке. В этих ячейках можно ввести любые допустимые выражения. Это значит, что можно ввести выражение (набор операторов, операндов, констант, идентификаторов, имен полей и функций), возвращающее для каждой записи некоторое значение, а затем использовать этот результат в качестве основы сортировки и группировки.
К примеру, вышеупомянутая таблица Заказы содержит поля Цена и НаСкладе (остатки на складе). Произведение значений этих полей даст нам остатки на складе в суммовом выражении. А теперь предположим, что нужно отсортировать и сгруппировать записи на основе именно этой величины. Для этого можно использовать следующее выражение: =[Цена] * [НаСкладе!
На рис. 14.5 показано диалоговое окно Сортировка и группировка, в котором в ячейку Поле/выражение введено представленное выше выражение.
Рис.
14.5.
В качестве значений, на основании
которых будет производиться группировка
и сортировка, можно использовать
выражения
Добавление в отчет вычислений
Очень часто отчеты используют исключительно для отображения существующих данных. К примеру, обычному складскому отчету достаточно отображать остатки в количественном выражении, уровень минимального резерва и количество дозаказанного товара для каждой инвентарной строки. Однако если нужно будет использовать такой отчет в качестве основы процесса принятия решений данных, потребуется больше информации. Скорее всего, потребуется проанализировать эти данные, а сам анализ будет выполняться на основе результатов одного или нескольких вычислений (к примеру, может потребоваться вывод общего объема продаж товара за предыдущий квартал, или количества дней просрочки по неоплаченным счетам, или общего количества записей в отчете).
Для вывода в отчет этих и многих других значений нужно выполнить одно или несколько вычислений. Для этого в окне конструктора в отчет нужно добавить свободные элементы текстовых полей, отображающие результаты этих вычислений, Свободные текстовые поля можно использовать для следующих целей:
для отображения результатов выражения (этой теме посвящен раздел "Использование текстовых полей в качестве вычисляемых элементов" далее в этой главе);
для ввода значений, используемых как часть выражения в другом поле.
Вставка текстового поля
Для создания текстового поля выполните следующие действия.
. 1. Щелкните на кнопке Поле панели элементов.
Нарисуйте в форме контуры текстового поля. Программа автоматически вставит поле и ассоциированное с ним название.
При необходимости отредактируйте название поля.
Ниже перечислены и описаны некоторые наиболее важные свойства текстового поля.
Формат поля (вкладка Макет). Здесь определяется формат отображения данных в поле. Можно выбрать один из предопределенных форматов (например, Полный формат даты или Процент), а также ввести строку, задающую нестандартный формат.
Число десятичных знаков (вкладка Макет). Здесь задается количество десятичных знаков, отображаемых в числах.
Значение по умолчанию (вкладка Данные). Здесь задается текст, изначально отображаемый в текстовом поле.
Имя (вкладка Другие). Здесь определяется имя текстового поля. Для свободных текстовых полей этот параметр особенно важен, так как по этому имени в других выражениях будет извлекаться введенное в поле значение.
Использование текстовых полей в качестве вычисляемых элементов
В разделах, посвященных созданию запросов, мы уже говорили о том, как создавать выражения для вычисляемых столбцов, в которые после выполнения запроса будет помещен результат выполнения некоторой операции над данными записей таблицы.
Более подробно о создании вычисляемых столбцов в запросах читайте в разделе
"Настройка вычисляемых столбцов" главы 2.
В создаваемых отчетах можно выполнять нечто аналогичное. В выражении вычисляемого поля могут использоваться операторы программы Access, операнды, а также функции; при этом могут использоваться значения как присоединенных, так и свободных элементов.
Для создания элемента вычисляемого текстового поля нужно выполнить следующие действия:
Нарисовать на форме контуры текстового поля (см. предыдущий раздел).
Выделить созданное текстовое поле.
Выбрать в меню команду Вид<=>Свойства (или нажать комбинацию клавиш <Alt+Enter>). Откроется окно свойств элемента.
Перейти к вкладке Данные.
В строке Данные ввести выражение. Следует обратить внимание, что в начале строки выражения должен стоять знак равенства. Если вы хотите использовать Построитель выражений, щелкните на кнопке с троеточием.
Закрыть окно свойств элемента.
Совет
Выражение можно ввести непосредственно в текстовом поле.
Примечание
Если вычисляемое поле вводится в ыго/юнок либо в примечание отчета, про- I грамма производит вычисления на ви'м множс< гве данных отчета. Аналогично, ] если вычисляемое поле добавляется в один и) колонтитулов страницы, в вычис J лениях будут участвовать только записи текущей страницы. Если же вычисляемое ! поле добавляется в заголовок либо примечание группы, программа производи! вычисления на множестве данных группы.
В качестве примера на рис. 14.6 приведен отчет с добавленными в него вычисляемыми текстовыми полями.
Рис.
14.6.
Для создания вычисляемого элемента
введите в текстовое поле (или в свойство
Данные)
некоторое выражение
В данном примере в группировке участвуют два вычисляемых элемента. Первый из них, размешенный в заголовке группы, использует следующее выражение:
= "Цены от " & Min(FormatCurrency([Цена])) & " до " & Max(FormatCurrency([Цена]))
Так как данный элемент' расположен в заголовке группы, выражение будет рассчитываться на основе записей каждой группы отчета. В данном случае в выражении использованы функции Min и Мах, вычисляющие минимальную и максимальную цены в группе.
Второе вычисляемое поле в примере расположено в примечании группы; для него используется следующее выражение: = "Общее количество товар ценовой группы: " & Count(FormatCurrency([Цена]))
Здесь в примере несуразица — группировка проводится по цене, и в то же время в заголовке выводится максимальное и минимальное значение цены (а они всегда равны по умолчанию). Похоже, что группировку нужно проводить по идентификатору товара. — Прим. перев.
В припедепном на рис. 14.(> примере два вычисляемых моля включены в секцию нижнего колонтитула. В левой части выводится дата и время вывода на печать отчета с использованием выражения: =Now()
В правой же части колонтитула отображаются данные о текущей странице и общем их количестве. При этом использовано выражение:
= "Стр. " & [Page] & " из " & [Pages]
Здесь [Page] — идентификатор, содержащий номер текущей страницы, а [ Pages ] — переменная с общим количеством страниц в отчете.
На рис. 14.7 показан данный отчет, открытый в окне предварительного просмотра.
Рис.
14.7.
Отчет из рис. 14.6, открытый в окне
предварительного просмотра
ПРАКТИКУМ
Создание отчета в виде счета-фактуры
Отличным примером отчета, включающего в себя вычисления, является счет, выписываемый клиенту согласно выполненному им заказу. В таком отчете должны содержаться следующие вычисляемые величины: сумма по строке товара (цена, умноженная на количество с примененной к результату скидкой), сумма по счету без налогов (сумма сумм по строкам), сумма налогов (определенный процент от предыдущей величины) и общая сумма по счету.
На рис. 14.8 показан такой счет, открытый в окне конструктора отчетов. Источником данных этого отчета является запрос рис14_08 базы данных примеров. Этот сложный многотабличный запрос отбирает данные из нескольких таблиц, в том числе из Клиенты,Заказы, Заказано и Товары.
Рис.
14.8. В отчет Счет включено множество
вычисляемых полей
В данном практикуме нас интересуют вычисляемые элементы, внедренные в этот
отчет. Вот их перечень:
В секции Верхний колонтитул в поле даты использована функция Date с применением к ней формата dd-mm-yyyy в функции Format:
=Format(Date(), "dd-mm-yyyy")
В секции Заголовок группы 'КодЗаказа' области Получатель и К оплате отображаются реквизиты плательщика и получателя заказа. В обоих случаях наилучшей последовательностью полей будет область-город-индекс.
В то же время некоторые клиенты имеют незаполненным поле Область, что может приводить к ошибкам. Для корректного отображения этой части адреса в примере использовано следующее выражение (именно оно введено для области К оплате):
=IIf([Область] Is Null,[Город] & " " & [Индекс]ЛГород] & " " & [Область] & " " & [Индекс])
Функция iif проверяет поле Область на наличие значения. Если оно отсутствует, вместо него отображается пустая строка. Аналогичное решение применено и в области Получатель.
В секции Область данных вычисляемый элемент ОтпускнаяЦена (сумма по строке с учетом скидки) использует следующее выражение:
=[Количество] * [Цена] * (1-[Скидка])
Имя этого поля нужно запомнить для выполнения следующего пункта обзора.
В секции Примечание группы 'КодЗаказа' для текстового поля Сумма (элемент ПромежуточнаяСуммаСчета) вычисляется сумма сумм по строкам счета фактуры:
=Sum([ОтпускнаяЦена])
В этом же разделе отображается поле СтоимостьДоставки.
В заключение, общая сумма по счету (итогиСчета) вычисляется как сумма предыдущих двух величин:
=[ПромежуточнаяСуммаСчета] + [СтоимостьДоставки]
На рис. 14.9 показана счет-фактура из описанного выше примера в представлении предварительного просмотра.
Рис.
14.9.
Форма, показанная на рис. 14.8 и открытая
в окне предварительного просмотра
Специальные методы им юва отчетов
Для вызова отчета на выполнение в обычном режиме работы программы Access и нахождении в окне конструктора отчетов можно выбрать команду меню Вид^Предварительный просмотр либо ныбрать одноименную команду в меню кнопки Вид панели инструментов. Если вы работаете в окне Базы данных, для этого достаточно дважды щелкнуть на названии отчета.
Однако если отчет является частью базы данных, создаваемой для других сотрудников компании, вам может потребоваться запрет их доступа к представлению конструктора или к окну баз данных. В такой ситуации нужно будет использовать один из двух альтернативных методов запуска отчета на выполнение: с помощью командной кнопки и с помощью макроса. Оба этих метода позволяют выполнять отчеты, причем пользователь не имеет доступа к запрещенным режимам, которые открыты только для администратора. Именно о них и пойдет речь в следующих разделах.
Запуск отчетов с помощью командной кнопки
Командные кнопки в программе Access ничем не отличаются от аналогичных кнопок в операционной системе Windows. Их примерами могут служить привычные в диалоговых окнах кнопки ОК и Отменить. Естественно, в программе Access эти кнопки нужно запрограммировать. В настоящем разделе будет показано, как программировать командные кнопки для запуска отчета в окне предварительного просмотра. В идеальном случае все кнопки помещаются на специальную форму, называемую главной кнопочной формой — она служит интерфейсом взаимодействия с конечным пользователем.
Особенности создания главной кнопочной формы описаны в практикуме главы 11.
Для добавления на форму командной кнопки, запускающей на выполнение отчет, выполните следующие действия.
1. Откройте нужную форму в представлении конструктора, р^г 2. Убедитесь, что на панели элементов кнопка Мастера находится в нажатом состоянии, после чего щелкните на кнопке Кнопка.
На форме мышью растяните контур создаваемой кнопки. Программа автоматически запустит Мастер командных кнопок.
В списке категорий первого окна мастера выберите пункт Работа с отчетом.
В списке действий выберите пункт Просмотр отчета (рис. 14.10).
Рис.
14.10.
В категории Работа с отчетом выберите
действие Просмотр отчета
Примечание
Категория Работа с отчетом содержит также и три других действия:
Отправить отчет по почте. Инициируется процесс отправки отчета в качестве прикрепления к письму электронной почты. Это идентично выбору в меню команды Файл^Отправить^Сообщение (как вложение) в режиме предварительного просмотра отчета.
Печать отчета. Отчет выводится непосредственно на принтер (при этом не открывается диалоговое окно Печать). Это идентично щелчку на кнопке Печать на панели инструментов предварительного просмотра.
Отправить отчет в файл. Отчет будет записан в отдельный файл на диске. При этом пользователю потребуется задать формат файла, его размещение и имя. Это идентично выбору в меню команды Файл^Экспорт.
Щелкните на кнопке Далее. В следующем окне мастера программа откроет список доступных отчетов.
Выберите нужный отчет и щелкните на кнопке Далее.
В следующем окне программа предложит вам выбрать один из двух вариантов отображения кнопки (после выбора нужно снова щелкнуть на кнопке Далее):
Текст. При выборе этого варианта на кнопке будет отображаться текст, введенный в соседнем текстовом поле этого окна мастера.
Рисунок. При выборе этого варианта на кнопке будет отображен рисунок. Для открытия полного списка всех доступных рисунков нужно установить флажок в поле Показать все рисунки.
В последнем окне мастера можно изменить имя командной кнопки. 10. Для завершения операции щелкните на кнопке Готово.
Запуск отчета с помощью макрос и
Действие Просмотр отчета открывав отчет в режиме предварительного просмотра. А что делать, если требуется одпоиременно выполнить несколько действий (к примеру, открыть отчет, развернуть окно, а затем выдать пользователю некоторое сообщение)? Этого нельзя сделать с помощью встроенных для командных кнопок действий; в то же время можно создать дополнительное действие, т.е. макрос.
Макросом называется некоторая последовательность действий (например, открытие отчета и применение фильтра), заключенная в один объект. Когда пользователь запускает макрос, программа Access выполняет каждое из определенных в нем действий в заданном порядке.
В программе Access макросы используют для автоматизации задач. При лом определяется последовательность действий, являющихся откликом на некоторое событие системы (в частности, на событие нажатия командной кнопки). Все операции макроса будут осуществляться именно в заданном в его определении порядке. В списке действий доступны все функции, помещенные в меню программы Access, а также ряд дополнительных. С помощью макросов можно автоматизировать процессы импорта и экспорта данных, создать кнопки для выполнения сложных запросов, а также решить множество других задач.
Создание макросов
В отличие от работы с традиционными языками программирования, например с Visual Basic for Application, процесс создания макросов не представляет такой уж сложный процесс. Программа Access предлагает ограниченное число действий, которые можно задействовать в макросах. Несмотря на то, что общее количество действий в программе превышает 50, лишь немногие из них применимы к отчетам. Таким образом, создание макросов представляет собой простой процесс выбора действий с последующим их конфигурированием (с помощью простых списков и текстовых полей).
Для начала нужно воспользоваться одним из следующих методов:
выбрать вкладку Макросы в окне Базы данных и щелкнуть на кнопке Создать;
выбрать в меню команду Вставка^Макрос;
в списке Новый объект панели инструментов выбрать пункт Макрос.
Откроется окно, показанное на рис. 14.11.
Рис.
14.11.
В этом окне создается новый макрос
Для создания макроса нужно выполнить следующую последовательность действий.
В первой доступной ячейке таблицы из предлагаемого списка выбрать нужное действие. Если выбранное действие имеет некоторые аргументы, в нижней части окна в разделе Параметры отобразится их перечень.
В правой колонке при необходимости можно ввести краткое примечание к данному действию.
Заполнить аргументы в разделе Параметры так, чтобы выбранное действие осуществляло именно ту операцию, которая вам нужна.
Если в макрос требуется добавить дополнительные действие, повторить шаги 1—3.
Сохранить макрос.
Протестировать созданный макрос одним из следующих методов:
выбрать в меню команду Запуска Запуск;
щелкнуть на кнопке Запуск панели инструментов (эта кнопка отображается в режиме редактирования макроса);
во вкладке Макросы окна баз данных дважды щелкнуть на названии макроса;
если макрос предполагает наличие открытого отчета (например, если макрос предназначен для закрытия отчета), открыть соответствующий отчет и выбрать в меню команду СервисоМакрос^Выполнить макрос. Откроется диалоговое окно, показанное на рис. 14.12. После выбора в списке Имя макроса нужного названия щелкнуть на кнопке ОК.
Рис.
14.12.
Если созданный макрос требует наличия
открытого отчета, откройте его и
запустите макрос посредством этого
окна
Ниже перечислен ряд основных действий, которые применимы в сценариях для отчетов.
Сигнал. Подача звукового сигнала.
Закрыть. Закрытие заданного объекта базы данных. Для отчета в аргументе Тип объекта нужно выбрать значение Отчет, после чего в списке Имя объекта выбрать нужное название. Если перед закрытием отчет следует сохранять, в списке Сохранение нужно выбрать значение Да (если пользователю требуется выдавать запрос на сохранение, нужно выбрать пункт Подсказка).
УдалитьОбъект. Удаление заданного объекта базы данных. Для отчета в аргументе Тип объекта нужно выбрать значение Отчет, после чего в списке Имя объекта выбрать нужное название.
Предупреждение
Действие УдалитьОбъект нужно использовать с большой осторожностью, поскольку при его выполнении программа не выдает запрос на подтверждение операции, а сразу удаляет объект.
Развернуть. Разворачивание текущего окна. Свернуть. Сворачивание текущего окна.
СдвигРазмер. Перемещение и(или) изменение размеров текущего окна. Для смещения окна следует ввести значения в поля По правому краю и От верхнего края (эти значения определяют положение верхнего левого угла окна); для изменения размеров — в поля Ширина и Высота.
Сообщение. Открытие окна сообщения. В поле Сообщение нужно ввести требуемый текст; в аргументе Сигнал определить, должна ли программа при открытии сообщения подавать звуковой сигнал; из списка Тип выбрать тип пиктограммы, отображаемой в диалоговом окне (например, Критическое, Информационное и т.д.); в аргументе Заголовок ввести текст, который будет отображаться в заголовке диалогового окна.
ОткрытьОтчет. Открытие отчета, определенного аргументом Имя отчета. В поле Режим следует выбрать представление, в котором будет отображаться отчет (Печать, Конструктор, Просмотр). Если требуется
установить некоторый фильтр, в поле Имя Фильтра следует задать имя соответствующего запроса или фильтра, сохраненного как запрос. В качестве альтернативы можно вручную ввести критерий в поле Условие отбора (аналог выражения, помещаемого в секцию WHERE выражения SQL SELECT). В поле Режим окна нужно выбрать способ отображения окна отчета: Обычное, Скрытое, В виде значка (свернутое) или Диалоговое (пользователь в этом случае не может перейти к другому окну или команде меню).
В аргументе Условие отбора не нужно вводить ключевое слово where; достаточно самого выражения. Более подробно о секции where выражения SQL select можно прочитать в разделе "Ключевое слово where" главы б.
ВывестиВФормате. Вывод отчета в файл. Для отчета в аргументе Тип объекта нужно выбрать значение Отчет, после чего в списке Имя объекта выбрать нужное название. В поле Формат вывода нужно выбрать формат файла, а в поле Имя файла ввести соответствующее имя и путь. Если требуется, чтобы после записи файл открывался ассоциированным ему приложением (например, файл типа RTF открывался приложением Word), установите значение Да в поле Автозагрузка. Печать. Вывод отчета на печать. В поле Распечатать нужно выбрать диапазон страниц. Он может принимать следующие значения: Все (печать всего отчета), Фрагмент (вывод на печать только выделенного текста; этот пункт не имеет смысла при работе с отчетами, так как последние доступны только для чтения) и Страницы (вывод на печать только заданного в последующих двух полях — Со страницы и По страницу — диапазона). Здесь же можно задать стандартные дополнительные параметры печати, касающиеся качества печати (Разрешение), количества копий (Число копий) и разборки по копиям (Разобрать копии).
Выход. Завершение работы приложения Access. В аргументе Параметры следует выбрать действия по сохранению объектов, выполняемые программой перед закрытием.
Восстановить. Восстановление исходных размеров окна, существовавших до его сворачивания или разворачивания.
Сохранить. Сохранение заданного объекта базы данных. Для отчета в аргументе Тип объекта нужно выбрать значение Отчет, после чего в списке Имя объекта выбрать нужное название.
ОтправитьОбъект. Отправка заданного объекта базы данных в качестве вложения по электронной почте. Для отчета в аргументе Тип объекта нужно выбрать значение Отчет, после чего в списке Имя объекта выбрать нужное название. Все остальные аргументы (Кому, Копии, Скрытые копии, Тема, Сообщение) специфичны для программ работы с электронной почтой. Если вы хотите запретить пользователю редактировать
сообщение перед его ширинкой, и поде Изменение сообщения выберите значение Нет.
ЗадатьЗначение. Установка значения элемента, поля или свойства. В аргументе Элемент нужно ввести имя объекта, а в аргументе Выражение — 1 выражение, результат которого будет присвоен объекту (выражению в данном случае не должен предшествовать знак равенства). ПоказатьВсеЗаписи. Снятие ранее установленного фильтра.
Сопоставление макроса командной кнопке
Если создается главная кнопочная форма или другая интерфейсная форма, любая ее кнопка может быть запрограммирована для запуска макроса. Для этого нужно:
Открыть форму в режиме конструктора, убедиться, что на панели 401 элементов кнопка Мастера находится в нажатом положении, после
чего щелкнуть на кнопке Кнопка.
На форме мышью растянуть контуры кнопки, после чего отпустить кнопку мыши. Откроется первое окно Мастера командных кнопок.
В списке категорий выбрать пункт Разное.
В списке действий выбрать пункт Выполнить макрос.
Щелкнуть на кнопке Далее. В следующем окне программа отобразит список доступных макросов.
Выберите нужный макрос и снова щелкните на кнопке Далее.
В следующем окне программа предложит вам выбрать один из двух вариантов отображения кнопки (после выбора нужно снова щелкнуть на кнопке Далее).
Текст. При выборе этого варианта на кнопке будет отображаться текст, введенный в соседнем текстовом поле этого окна мастера.
Рисунок. При выборе этого варианта на кнопке будет отображен рисунок. Для открытия полного списка всех доступных рисунков нужно установить флажок в поле Показать все рисунки.
При необходимости измените имя командной кнопки и щелкните на кнопке Готово.
Сопоставление макроса событию отчета
Отчеты в программе Access поддерживают ряд событий (сигналов, подаваемых системой при возникновении определенных ситуаций). К примеру, событие On Open генерируется при открытии пользователем какого-либо отчета. Гели ассоциировать макрос с каким-либо событием, программа будет вызывать макрос каждый раз, когда это событие будет генерироваться системой.
Для ассоциирования макроса с событием нужно выполнить следующие действия:
Открыть отчет в представлении конструктора.
Выделить отчет в целом.
Выбрать в меню команду ВидоСвойства, после чего откроется диалоговое окно свойств объекта.
Перейти к вкладке События. Здесь перечислены все события, к которым можно подключить макрос (рис. 14.13).
Рис.
14.13.
Во вкладке События с определенным
событием можно ассоциировать макрос
В поле нужного события выбрать из списка один из перечисленных макросов.
Примечание
Если нужный макрос еще не создан, рядом с этим полем можно щелкнуть на кнопке с троеточием, в результате чего откроется диалоговое окно выбора построителя. В предлагаемом списке нужно выбрать пункт Макросы и щелкнуть на кнопке ОК. Процесс создания макроса с нуля был описан в одном из предыдущих разделов.
Закрыть окно свойств объекта.
Управление выводом
В заключение темы, посвященной расширенным возможностям отчетов, рассмотрим свойства, которые позволяют управлять отображением отчета, в частности на уровне секций.
Добавление разрывов страниц после секций
Для повышения удобства работы с отчетом каждую секцию (например, группу) обычно начинают с новой страницы. Вместо того чтобы вручную в макете отчета вставлять элементы разрыва страницы, можно потребовать от
программы выполнять это действие шпомшичес ки при выводе документа на печать. Для этой цели существует i notli ню Конец страницы.
Откройте отчет в представлении конструктора.
Выделите секцию, с которой собираетесь работать.
Откройте окно свойств объекта (Вид"=>Свойства).
Перейдите к вкладке Макет.
В списке Конец страницы выберите один из следующих пунктов.
До раздела. Разрыв страницы будет вставляться перед началом данной секции, таким образом секция будет начинаться с новой страницы.
После раздела. Разрыв страницы будет вставляться после конца данной секции — следующая секция будет начинаться с новой страницы.
До и после раздела. Разрыв страницы будет вставляться перед началом и после конца данной секции, что гарантирует обособленность данной секции на отдельной странице.
Закройте окно свойств объекта.
Перейдите в режим предварительного просмотра, чтобы убедиться в корректном отображении разделов отчета.
Установка начала секции в начале строки или столбца
Отчет можно сделать многоколоночным, при этом поля будут организованы сверху-вниз-слева-направо (по столбцам) или слева-направо-сверху-вниз (по строкам). Программе можно дать указание начинать каждую секцию с нового столбца (строки). Эта функция лежит на свойстве Новая строка или столбец.
Более подробно о создании многоколоночных отчетов говорится в главе 15.
Откройте отчет в представлении конструктора.
Выделите секцию, с которой собираетесь работать.
Откройте окно свойств объекта (ВидОСвойства).
Перейдите к вкладке Макет.
В списке Новая строка или столбец выберите один из следующих пунктов.
До раздела. Данная секция будет начинаться с начала столбца или строки.
После раздела. Следующая секция будет начинаться с начала столбца или строки.
До и после раздела. Данная секция будет обособлена в отдельном столбце или строке.
Закройте окно свойств объекта.
Перейдите в режим предварительного просмотра, чтобы убедиться в корректном отображении разделов отчета.
Устранение разрывов в записях
Часто конец страницы попадает на внутреннюю часть секции, в результате чего на следующей странице отображается только осколок данных, а это значит, что отчет может быть не понятен пользователю. Формы программы Access имеют свойство Не разрывать, позволяющее отображать на странице только секцию целиком; в случае невозможности такого размещения вся секция переносится на следующую страницу.
Откройте отчет в представлении конструктора.
Выделите секцию, с которой собираетесь работать.
Откройте окно свойств объекта (ВидОСвойства).
Перейдите к вкладке Макет.
В поле Не разрывать выберите значение Да.
Закройте окно свойств объекта.
Перейдите в режим предварительного просмотра, чтобы убедиться в корректном отображении разделов отчета.
Что читать дальше
Создание вычисляемых столбцов в запросах описано в соответствующем разделе главы 2.
Структура предложения WHERE выражения SQL SELECT рассматривается в соответствующем разделе главы 6.
Об особенностях создания главной кнопочной формы читайте в практикуме главы 11.
Основам создания отчетов посвящена глава 12.
Приемы работы с элементами отчетов описаны в главе 12.
Процесс создания многоколоночных отчетов будет подробно описан в следующей главе.Создание
специализированных отчето
в
Отчеты играют важную роль в производственном процессе как естественный результат работы с базой данных. В компьютерном мире считается, что чем более важным является некоторое средство, тем более гибким оно должно быть, поскольку его используют множество различных людей в самых разнообразных ситуациях. Чем более гибким является средство, тем в большей мере оно может быть адаптировано ко всем этим различным ситуациям.
Механизм создания отчетов в программе Access — наиболее приспособленное к различным ситуациям средство. Рассмотренные нами в предыдущих главах средства открывали широкие возможности настройки компоновки, форматирования, вычислений и создания отчетов. В дополнение программа Access предлагает более широкий спектр инструментов, позволяющий создавать специальные виды отчетов: многоколоночные и многотабличные отчеты, почтовые наклейки, документы слияния, а также сводные диаграммы. В этой главе мы подробно остановимся на каждом из этих типов отчетов.
В ЭТОЙ ГЛАВЕ
Создание и использование форм 1
В ЭТОЙ ГЛАВЕ 1
|И< пользование инструмента «шгоформы 3
Создание простых форм с помощью мастера 7
Навигация в форме 9
Создание формы в конструкторе 10
Что читать дальше 21
.Работа с элементами форм 21
Манипуляции с элементами форм 21
Добавление в форму надписей 33
Г" 33
Добавление в форму текстовых полей 35
Что читать дальше 39
Предотвращение ошибок за счет проверки данных 42
Использование элементов управления, ограничивающих выбор вариантов данных 48
Ввод данных с помощью элементов ActiveX 60
Что читать дальше 64
Особенности создания деловых форм 65
.Использование форм на производстве 66
Десять советов относительно создания деловых форм 67
.Создание 84
.Ill 102
Создание и настройка отчетов 102
оСоздание и публикация отчетов 104
В ЭТОЙ ГЛАВЕ 104
ЯОсобенности создания деловь отчетов 130
В ЭТОЙ ГЛАВЕ 130
.Создание 156
расширенных 156
отчетов 156
14 156
В ЭТОЙ ГЛАВЕ 156
Процесс создания многоколоночных отчетов будет подробно описан в следующей главе.Создание 175
В ЭТОЙ ГЛАВЕ 175
Настройка отчета на размещение начала секции в начале строки или столбца описана в соответствующем разделе главы 14.Предметный указатель 196
Состан предлагаемых программой стандартных отчетов ограничен таблич иыми (используется стандартное табличное представление с полями в столб пах и записями в строках) и ленточными (используется формоподобное пред стаплсние с полями, организованными в одном вертикальном столбце). По >той причине ленточное представление обычно называют одноколоночным.
Одноколоночный формат оказывается полезным, когда запись имеет большое количество длинных полей. Эта форма компоновки позволяет использовать для каждого поля всю ширину страницы. Если же поля отчета не слишком длинные, ленточный формат невыгоден, поскольку остается сво бодным очень большое пространство страницы справа от полей. В этом случае можно было бы воспользоваться табличным форматом, однако с ним не так удобно работать, как с ленточным.
Вместо того чтобы искать компромисс, можно взять на вооружение эффективность табличного формата, умножив ее на приятный внешний вид ленточного представления. Для этого создаются многоколоночные отчеты, имеющие в своей основе ленточный формат, но располагающие записи в нескольких столбцах на одном листе.
Настройка отчета
Многоколоночный эффект проявляется только при предварительном просмотре и печати отчета. Другими словами, для его достижения не нужно выполнять какие-либо операции в окне конструктора отчетов (т.е. не нужно изменять положение элементов). В то же время, это совершенно не значит, что м иогоколоночную компоновку можно применить абсолютно к любому отчету. При создании отчета примите во внимание, что он будет разделен на несколько столбцов, исходя из чего его ширина будет равна ширине страницы, поделенной на количество таких колонок (при этом в расчет не берутся поля и интервалы между столбцами).
Для примера предположим, что на листе А4 (шириной 210 мм) нужно организовать два столбца с интервалом между ними 10 мм. Предполагая, что поля справа и слева занимают по 20 мм каждое, мы получим оставшиеся 150 мм, которые нужно разделить на два. В результате мы получим, что никакая из секций отчета не должна превышать по ширине 75 мм. (Для отслеживания ширины отчета вы можете использовать горизонтальную линейку. Если линейка на экране не отображается, выберите команду меню Вид^Линейка.)
В заключение, после того как элементы размещены на отведенном пространстве, измените ширину самого отчета, чтобы она не превышала ширину, о тведенную для одной колонки.
Настройка параметров страницы
Многоколоночная компоновка отчета настраивается в диалоговом окне параметров страницы. Для этого нужно:
Выбрать в меню команду ФайлОПараметры страницы.
Во вкладке Поля следует установить размеры правого и левого полей. Эти числа понадобятся для подсчета оптимальной ширины колонок.
Перейти к вкладке Столбцы.
В группе Параметры сетки в текстовом поле Число столбцов следует ввести количество колонок, в которых будет выводиться отчет. Когда в это поле вводится число, большее единицы (рис. 15.1), активизируется группа Макет столбца.
Рис.
15.1.
Во вкладке Столбцы параметров страницы
устанавливаются настройки много
колоночного отчета
Если между записями нужно вставить интервал, превышающий стандартный, дополнительное значение следует задать в поле Интервал строк.
Для установки интервала между отдельными столбцами воспользуйтесь полем Столбцов.
В текстовом поле Ширина группы Размер столбца программа автоматически устанавливает подсчитанное значение (предполагается, что установлен флаг По размеру данных). Если программа этого не сделала, введите в это поле вручную ширину одного столбца. Аналогично, в поле Высота вы можете изменить высоту записи.
В группе Макет столбца можно установить переключатель в одно из следующих значений:
Сверху вниз. В этом случае шиш и Оудуч печататься поочередно п ка ждом столбце, после чего буде i осуществляться переход к следующему столбцу.
Слева направо. В этом случае записи будут печататься в одной строке последовательно в каждом из столбцов, после чего будет осуществляться переход к следующей строке.
Щелкните на кнопке ОК.
Для самоконтроля откройте отчет в режиме предварительного просмотра.
Не забывайте, что каждый из разделов отчета можно начинать в новом столбце (строке). Подробности этих настроек описаны в разделе "Установка начала секции в начале строки или столбца" главы 14.
На рис. 15.2 показан пример двухколоночного отчета, созданного на основе таблицы Клиенты.
Рис.
15.2.
Пример двухколоночного отчета
Разрешение проблем, возникающих при создании многоколоночных отчетов
Если колонки не помещаются на листе, программа Access открывает диалоговое окно, показанное на рис. 15.3. В этом окне программа предлагает решить возникшую проблему одним из следующих способов.
Уменьшить число столбцов. К. примеру, если три столбца не вмещаются на страницу, то можно попытаться уменьшить их число до двух.
Уменьшить ширину колонки. Нужно уменьшить значение в поле Ширина группы Размер столбца в параметрах страницы (вкладка Столбцы).
Уменьшить общую ширину отчета за счет уменьшения ширины его отдельных элементов и их перекомпоновки. Если при этом в отчет стали выводиться не все данные какого-либо текстового поля, попробуйте увеличить высоту последнего.
Рис.
15.3.
Это диалоговое окно открывается
программой, когда невозможно на
листе разместить все колонки по ширине
Уменьшить поля страницы (во вкладке Поля окна параметров страницы). Чем меньшими будут поля, тем больше места программа сможет распределить под столбцы.
Предупреждение
Большинство принтеров не поддерживают границы, меньшие 0,25 дюйма (приблизительно 0,7см).
Изменить ориентацию страницы с Портрет на Ландшафт (во вкладке Страница окна параметров страницы).
Использование нескольких колонок для уменьшения общего числа страниц отчета
Считается, что в хорошем отчете количество страниц должно быть минимизировано (естественно, без потери читабельности и смысла). Небольшие отчеты легче читать, в них проще искать информацию. В частности, если вы будете выводить отчет на печать (особенно если будете печатать несколько его копий), сокращение количества листов приведет к экономии бумаги (а значит, и сохранению лесных массивов). Размеры отчета можно сократить следующими методами: уменьшив размер шрифта; удалив ненужные разрывы страниц; убедившись, что группировка не порождает висячие строки.
Еще один способ уменьшении количества < фаниц оивчл мкпючается в создании многоколоночного отчета. При этом минимиэирувкн объем пространства листа, оиающегося пустым. В предлагаемом прди 1икумг на операция осуществляется на примере простого отчета; в результате вы увидите, сколько листов можно сэкономить при использовании этого подхода.
В ianpoc, показанный на рис. 15.4, включены поля из таблиц Заказано (строки заката), Заказы и Сотрудники — КодКлиента И ДатаРазмещения, — а также созданы два вычисляемых поля: с именем и фамилией сотрудника (поле Сотрудники) и попе с суммой заказа (поле ИтогПоСчету).
Рис.
15.4.
Этот запрос будет использован в качестве
источника данных для создаваемого в
практикуме отчета
На рис. 15.5 представлена исходная компоновка отчета, а на рис. 15.6 этот же отчет показан в окне предварительного просмотра. Обратите внимание на счетчик общего количества страниц - сейчас он равен 27.
Рис.
15.5. Исходный вид отчета
Рис.
15.6. Отчет из рис. 15.5, открытый в
представлении предварительного
просмотра
На рис. 15.7 показана пересмотренная версия отчета, для которой были выполнены следующие операции.
Реорганизованы поля заголовка отчета (из строки в столбец). Это позволило сузить необходимое для отчета пространство.
Элементы в разделе область данных заужены.
Поля нижнего колонтитула группы Сотрудники реорганизованы.
Общая ширина отчета уменьшена до трех дюймов.
Параметры страницы изменены так, чтобы записи могли отображаться в трехдюймовых столбцах.
Рис.
15.7. Исправленная версия отчета,
использующая более узкую компоновку
и сконфигурированная на отображение
в два столбца
На рис. 15.8 исправлен! 1ыи отчет n< ч .1 |дн и окне предварительного просмотра. Обратите внимание на счетчик общего копичеч гва с фаниц- теперь уже он равен 14.
Рис.
15.8. Отчет с рис. 15.7, открытый в окне
предварительного просмотра
Для дальнейшего уменьшения числа страниц можно сделать следующее (рис. 15.9):
уменьшить размер шрифта в отдельных полях;
дополнительно уменьшить ширину полей;
сократить ширину отчета до двух дюймов;
сконфигурировать отчет для отображения трех двухдюймовых столбцов.
Рис.
15.9. Окончательная версия отчета,
сконфигурированная в три двухдюймовые
колонки
На рис. 15.10 окончательный вариант отчета показан в окне предварительного
просмотра. Обратите внимание на счетчик общего количества страниц - теперь уже он равен 8, а это - меньше трети его исходного объема.
Рис.
15.10. Отчет с рис. 15.9, открытый в окне
предварительного просмотра
Создание почтовых наклеек
Посмотрите еще раз на отчет, показанный на рис. 15.10, и обратите внимание, насколько текст заголовков отчета и группы напоминает адресные строки почтового конверта. Эта ассоциация не беспочвенна — именно так в программе Access создаются листы почтовых наклеек. В конце концов, что есть лист почтовых наклеек, если не обычные, скомпонованные в табличном формате наборы компонентов адреса, каждый из которых имеет свою высоту и ширину? А что такое многоколоночный отчет? Практически то же самое: набор записей, скомпонованных в таблицу, при этом каждая из записей имеет свою высоту и ширину.
Если нужно распечатать почтовые наклейки из таблицы адресов клиентов, эту таблицу следует использовать в качестве источника данных многоколоночного отчета; при этом каждый столбец должен быть сконфигурирован так, чтобы высота и ширина записи в точности соответствовала параметрам наклейки. Естественно, при этом нужно принять в расчет межстрочный интервал и расстояние между колонками, поскольку точное соответствие здесь просто необходимо. Исходя из всего вышесказанного, без точной настройки конфигурации не обойтись.
Запуск Мастера наклеек
Вместо того чтобы выполнять нас■ ройку с нуля вручную, можно воспользоваться предлагаемым программой Мастером наклеек. Этот мастер шаг за шагом проведет вас через весь процесс создания наклеек. Мастер наклеек поддерживает все стандартные форматы этикеток, в результате чего процесс подгонки и принятия решений полностью ложится на программу.
Для создания блока почтовых наклеек с помощью мастера вам нужно выполнить следующие действия.
Находясь в окне баз данных, выберите в меню пункт Вставка^Отчет. Откроется диалоговое окно создания нового отчета.
В списке окна Новый отчет выберите пункт Почтовые наклейки.
В нижней части окна выберите для отчета источник данных (таблицу или запрос).
Щелкните на кнопке ОК. Откроется первое окно Мастера почтовых наклеек, показанное на рис. 15.11.
Рис.
15.11.
В первом окне мастера наклеек
устанавливается их размер
5. Выберите из списка стандартных размеров наклеек нужный; при этом для управления списком можно использовать следующие элементы управления (созданию наклейки произвольного размера будет посвящен один из следующих разделов).
Система единиц. Этот переключатель позволяет выбрать между метрической и британской системами единиц измерения.
Тип наклеек. Здесь можно выбрать один из следующих вариантов: На листах и Рулонные.
Фильтр по изготовителю. В этом списке перечислены все основные производители конвертов. Если нужного производителя в списке вы
не нашли, выберите пункт Avery, поскольку большинство производителей ориентируются на стандарты именно этой фирмы.
Щелкните на кнопке Далее. В следующем окне мастера вам будет предложено настроить параметры шрифта.
Для определения архитектуры шрифта введите информацию в следующие поля: Шрифт, Размер, Насыщенность и Цвет текста. В дополнение можно определить стилевые особенности, установив флажки в полях Курсив и Подчеркивание.
Щелкните на кнопке Далее. Мастер запросит у вас информацию о компоновке наклейки.
Создайте наклейку, используя следующие приемы (пример приведен на рис. 15.12).
Для добавления поля выделите его имя в списке доступных полей, после чего щелкните на кнопке стрелки (>).
Чтобы начать в наклейке новую строку, перейдите к концу текущей строки и нажмите клавишу <Enter>.
Для добавления в наклейку текста установите курсор в нужное место и введите текст.
Щелкните на кнопке Далее. В следующем окне мастер предоставит возможность определить порядок сортировки записей.
В списке доступных полей выберите те, на основе которых будет проводиться сортировка записей, после чего щелкните на клавише стрелки (>). Если сортировку нужно проводить по нескольким полям, переносите их в список выбранных полей в нужном порядке.
Щелкните на кнопке Далее. Мастер предложит вам изменить имя отчета.
Рис.
15.12.
Добавляя поля, символы новой строки и
текст, определите макет наклейки
В текстовом мопс шн мне ими наклейки. В зтом окне им можете также определить дальнейшие действия программы.
Просмотреть наклейки в том виде, в каком они будут напечатаны.
Этот вариант позволяет открыть отчет в режиме предварительного просмотра.
Изменить макет наклеек. Этот вариант приводит к открытию отчета в представлении конструктора.
Щелкните на кнопке Готово.
На рис. 15.13 показан пример готового отчета.
Рис.
15.13.
Отчет готов для печати почтовых наклеек
Создание произвольных наклеек
Если мастер наклеек не содержит в списке стандартных нужный вам формат или если вам нужно создать его по некоторым другим причинам, вы можете его определить следующим образом.
В первом диалоговом окне Мастера наклеек щелкните на кнопке Настройка.
Щелкните на кнопке Создать. Откроется диалоговое окно, показанное на рис. 15.14.
В поле Название введите имя нового формата наклейки.
В группе Система единиц выберите либо британскую, либо метрическую.
В группе Тип наклеек выберите один из следующих вариантов: На листах или Рулонные.
В группе Ориентация установите портретную или ландшафтную ориентацию листа.
Рис.
15.14.
Диалоговое окно Новая наклейка
предназначено для определения
произвольных параметров этикетки
В поле Число по горизонтали введите необходимое количество колонок наклеек.
В области Введите размеры наклейки в сантиметрах в соответствую щих полях введите значения для ширины и высоты полей, межстроч ного интервала, а также расстояния между столбцами.
Щелкните на кнопке ОК.
Создание отчета слияния
В первой главе в качестве примера была рассмотрена задача использования запроса Access в качестве источника данных мастера слияния (Mail Merge Wizard) программы Microsoft Word. Этот мастер позволяет пошагово создать пакет документов Word на основе данных, возвращаемых запросом.
Особенности создания запроса слияния описаны в практикуме главы 1.
Давайте теперь предположим, что на вашем компьютере не установлен пакет Word либо вы не хотите проходить длинный путь его мастера слияния. В этом случае идентичный результат можно получить, используя только механизмы отчетов программы Access. Весь секрет заключается в грамотном использовании вычисляемых текстовых полей. В частности, текстовые поля будут использоваться не только для ввода текста формы, но и для полей слияния, которые формируются на основе источника данных. Для примера предположим, что источник данных содержит поле с именем ОбращатьсяК (контактное лицо), и это поле нужно использовать в письме в качестве приветствия. В отчете это можно сделать, включив в Область данных вычисляемое текстовое поле следующей конфигурации: = "Уважаемый 11 & [ОбращатьсяК] & ", "
А теперь рассмотрим pt i n.ш,ill пример. Па рис. 15.15 покати запрос, использующий поля и» габлим 1'• и.ч| м и Поставщики. Выражение для вычисляемой) столбца с названием д< >■ i,n-■. г i сравнивает поля МинимальныйЗапас и НаСкладе (остатки на складе), после чего возвращает значение True, если запасы меньше минимально допустимых, и False — в противном случае. (Чтобы убедиться втом, что мы не дозаказываем продукт, снятый с производства, мы дополнительно устанавливаем критерий на ложность поля ПоставкиПрекращены.)
Рис.
15.15.
Этот запрос возвращает записи для тех
продуктов, которые следует дозаказать;
он будет использован в качестве источника
данных отчета слияния
Наша цель заключается в том, чтобы распечатать письма соответствующим поставщикам с просьбой оформить заказ на недостающие (отобранные запросом) товары. На рис. 15.16 показан готовый отчет слияния, открытый в режиме конструктора. Хотелось бы немного его прокомментировать.
Верхняя половина секции верхнего колонтитула содержит логотип компании, ее название, адрес и текущую дату.
Нижняя половина верхнего колонтитула содержит поля источника данных: имя и должность контактного лица, название компании- поставщика и ее почтовый адрес. Обратите внимание, что поля слияния являются комбинацией свободных текстовых полей с выражениями и полями источника данных. Вычисляемые поля используются в тех местах, где значения полей таблицы нужно каким-то образом скомпоновать друг с другом. Например, в следующем выражении между именем и должностью контактного лица вставляется запятая:
=[ОбращатьсяК] & ", " & [Должность]
В области данных содержится сам текст письма. Как правило, в текст письма внедряются поля слияния и прочие выражения.
Для того чтобы каждое письмо начиналось с новой страницы, свойство Конец страницы области данных установлено в значение После раздела.
На рис. 15.17 показам пример письма, созданного после вывода нашего от чета на печать.
Рис.
15.16.
Отчет слияния вставляет в письмо
свободные текстовые поля, являющиеся
результатом выражений
Рис.
15.17.
Пример письма, созданного на основе
отчета, показанного на рис. 15.16
Создание многотабличных отчетов
Как вы уже могли убедиться, создание многотабличных отчетов не представляет собой сложную задачу. Сначала создается запрос, включающий дне или более таблицы, после чего результаты запроса используются в качестве источника данных отчета. В то же время, существует и другой способ использования в отчетах нескольких таблиц: с помощью создания подотчетов. В следующих нескольких разделах описано несколько способов создания подотчетов и работы с ними с целью получения многотабличных отчетов.
Подробнее о создании многотабличных запросов можно узнать в соответствующем разделе главы 3.
Понятие подотчета
Одним из самых удобных применений связанных таблиц является создание отчетов, одновременно отображающих связанные данные из нескольких таблиц. В качестве примера на рис. 15.18 приведен отчет Каталог, содержащий данные, полученные из двух источников.
Рис.
15.18.
Отчет, отображающий данные из двух
связанных таблиц:
Типы и
Товары
В верхней части отчета отображаются название категории товаров
(элемент Категория), ее описание (элемент Описание) и рисунок (поле Изображение). Данные для этих элементов поступают из таблицы Типы (категории товаров).
В нижней части отчета отображаются записи из таблицы Товары.
Так как таблицы Типы и Товары связаны по общему полю идентификатора категорий (КодТипа), все строчные данные относятся к отображаемой в верхней части категории. При переходе к другой категории список товаров соответствующим образом изменяется.
Этот тип отчетов на самом деле является комбинацией двух отдельных отчетов. Поля основной таблицы (в нашем примере это — данные таблицы Типы) входят в главный отчет, а поля связанной таблицы (данные таблицы Товары) — в подотчет (его также называют подчиненным отчетом). Связку этих отчетов можно представить как родительский/дочерний или как главный/уточняющий. Подотчеты особенно эффективны для отображения данных таблиц, связанных отношением типа "один ко многим". В приведенном выше примере каждой записи из таблицы Типы соответствует множество записей из таблицы Товары. По этой причине подотчет отображается в табличном формате.
Создание отчета и подотчета с помощью мастера
Работа с мастером отчетов подробно описана в главе 12.
В главе 12 "Создание и публикация отчетов" рассказывалось о том, как можно использовать Мастер отчетов для пошагового создания простых отчетов. Однако с помощью этого инструмента при работе с несколькими таблицами можно создавать и комбинации отчет/подотчет. Вот что для этого нужно.
•Ъ При использовании нескольких таблиц или запросов в качестве источников данных между ними должны быть установлены связи. Более подробно эта тема описана в разделе "Установка связей между таблицами" главы 3.
Создайте новый отчет одним из следующих методов.
Для предварительного указания таблицы или запроса в окне баз данных выделите нужный объект, после чего выберите в меню команду ВставкаООтчет (или в списке кнопки Новый объект панели инструментов выберите пункт Отчет).
Во вкладке Отчеты окна баз данных щелкните на кнопке Создать.
В списке окна Новый отчет выделите пункт Мастер отчетов.
Если заранее не определены таблица или запрос, являющиеся источником данных, сделайте это сейчас в нижней части окна.
Щелкните на кнопке ОК.
В первом диалоговом окне мастера в списке Таблицы и запросы выберите нужный источник данных (если это до сих пор не сделано). После этого в области Доступные поля поочередно выделяйте все поля, включаемые
нотчет, и mcjiKiilhv ни кнопке стрелки инрано (>). Если цкбуется включить в отчет все ноли, достаточно щелкнуть на кнопке с двумя стрелками (»).
Для добавления п отчет молей другой таблицы или запроса повторите действие 5.
Когда в отчет добавлены все поля источников данных, щелкните на кнопке Далее.
Во втором диалоговом окне мастера (рис. 15.19) выделите таблицу или запрос, содержащий данные, используемые в главном отчете. Щелкните на кнопке Далее.
В следующем окне мастера следует задать уровень группировки и по окончанию снова щелкнуть на кнопке Далее.
Теперь мастер запросит указать порядок сортировки уточняющих записей (имеются в виду записи подотчета). Выберите в списках нужные поля и назначьте каждому соответствующий порядок (По возрастанию или По убыванию), после чего щелкните на кнопке Далее.
В следующем окне мастер попросит вас выбрать один из способов компоновки данных (рис. 15.20). В приведенном примере более светлый текст соответствует полям главного отчета, более темный — полям подотчета. После выбора шаблона компоновки щелкните на кнопке Далее.
В следующем окне мастера вам предстоит выбрать один из предопределенных в программе шаблонов Автоотчета, после чего щелкнуть на кнопке Далее.
Последнее окно мастера позволяет при необходимости изменить название отчета. Имя, предложенное по умолчанию программой, основано на именах таблиц главного отчета, однако вы можете ввести любое другое имя, не конфликтующее с уже существующими отчетами.
Рис.
15.19.
В этом диалоговом окне мастера отчетов
выбирается таблица, данные которой
будут отображаться в главном отчете
Рис.
15.20.
В этом окне мастера выбирается способ
компоновки полей главного отчета и
подотчета
Теперь вы можете определить дальнейшие действия программы. Для того чтобы просмотреть отчет, оставьте переключатель в положении Просмотреть отчет; если же вам нужно дополнительно поработать с отчетом в окне конструктора, переключитесь в положение Изменить макет отчета.
Щелкните на кнопке Готово. На рис. 15.21 показан пример отчета, созданного с помощью мастера.
Рис.
15.21.
Пример комбинированного отчета
(главный/подотчет), созданного с
помощью мастера
Создание подотчеы it конструкторе
Если вы уже создали некоторый отчет, в представление конструктора этого отчета всегда можно добавить подотчет, щелкнув на одноименной кнопке панели элементов. Отдельный мастер подотчетов программы Access позволяет процесс создания подотчетов проходить пошагово. В следующих двух разделах будет описано, как создавать подотчет из таблицы или запроса, а также из уже существующих отчетов.
Создание подотчета на основе другой таблицы или запроса
Если с помощью мастера необходимо сделать так, чтобы подотчет был основан на полях из другой таблицы или запроса, выполните следующие действия.
Ш
2. Нарисуйте на отчете контуры подотчета. Программа автоматически запустит мастер подотчетов, показанный на рис. 15.22.
Рис.
15.22.
Мастер подотчетов позволяет быстро и
просто добавлять в существующие
отчеты подотчеты, основанные на
других источниках данных
Установите переключатель в положение Имеющиеся таблицы и запросы и щелкните на кнопке Далее.
Выделите в списке источник данных, который будет использован в подотчете. После этого в списке доступных полей последовательно выделяйте каждое из полей, которое должно присутствовать в подотчете, и щелкайте на кнопке со стрелкой. (Если вы хотите выделить сразу все поля, щелкните на кнопке с двойной стрелкой.) Щелкните на кнопке Далее.
В следующем окне мастера выберите поля, по которым будут связаны главный и подчиненный отчеты. Если таблицы связаны (а иначе при создании подотчетов и быть не может), программа, как правило, автоматически устанавливает корректные поля связывания. Если этого не произошло, вы можете установить переключатель в положение Самостоятельное определение и вручную выбрать нужные поля. Щелкните на кнопке Далее.
6. В последнем окне мастера введите название подотчета и щелкните на кнопке Готово.
Теперь при необходимости вы можете изменить размеры и положение элемента подотчета, а также удалить его название.
Создание подотчета на основе другого отчета
Программа Access позволяет создавать подотчеты на основе уже существующих отчетов. Это значит, что после того как в конструкторе нарисован элемент подотчета, с ним можно связать ранее созданный отчет. Этот метод пригодится, если вы уже наметили некоторую компоновку элементов подотчета на эскизе и хотите ее создать заранее.
Если необходимо, чтобы подотчет основывался на некотором уже существующем отчете, в мастере подотчетов выполните следующие действия.
1. Создайте и сохраните некоторый отчет (если это еще не сделано).
-j- 2. Убедитесь, что кнопка Мастера панели элементов находится в нажа-
э! том положении, и щелкните на кнопке Подчиненная форма/отчет.
Нарисуйте на форме контуры подотчета. Программа автоматически откроет мастер подотчетов.
Установите переключатель в положение Имеющиеся отчеты и формы и в списке выберите нужную сводную диаграмму. Щелкните на кнопке Далее.
В следующем диалоговом окне выберите поля, по которым главная форма будет связана с подчиненной. Как правило, программа автоматически устанавливает корректные связи. Если же этого не произошло, вы можете создать связи вручную, установив переключатель в положение Самостоятельное определение. Щелкните на кнопке Далее.
Введите название подотчета и щелкните на кнопке Готово.
При необходимости вы можете изменить положение и размеры элемента подотчета.
Создание отчетов сводных диаграмм
Сводные диаграммы являются эффективным механизмом обобщения и анализа сложных данных. К сожалению, в программе Access отсутствует представление отчета в виде сводной диаграммы. В то же время, сводную диаграмму можно нключить и отчет как сопаиаиющую < п рп заключается и наличии элемента подотчета, который, как было noi .1мно и предыдущем разделе, может отображал, уже существующий отчет и кача тс подотчета. В то же время элемент подотчета позволяет в качестне основы исиолмоиатт. уже существующую форму.
Об использовании представления сводной диаграммы для форм вы можете уз нать в соответствующем разделе главы 11.
Таким образом, для создания отчета сводной диаграммы следует вначале создать форму сводной диаграммы, а затем внедрить ее в отчет в качестве подотчета.
1. Создайте и сохраните отчет сводной диаграммы, если этого еще не сделано.
Ш
Растяните контур подотчета в рабочей области отчета. Программа автоматически откроет первое окно мастера подотчетов.
Установите переключатель в положение Имеющиеся отчеты и формы и в списке выберите нужный отчет. Щелкните на кнопке Далее.
В следующем диалоговом окне мастера выберите поля, по которым будут связаны главный и подчиненный отчеты, после чего щелкните на кнопке Далее.
Введите имя подотчета и щелкните на кнопке Готово.
Измените положение и размеры подотчета так, чтобы он стал полностью видимым (рис. 15.23).
Рис.
15.23.
Для создания отчета сводной диаграммы
нужно создать подотчет и связать
его с существующей формой сводной
диаграммы
Что читать дальше
Особенности работы с мастером слияния описаны в главе 1.
Создание многотабличных запросов подробно описано в соответствующем разделе главы 3.
Вопросы установки связей между таблицами рассмотрены в соответствующем разделе главы 3.
Вопросы использования представления сводной диаграммы для форм рассмотрены в соответствующем разделе главы 3.
Работа с мастером форм подробно описана в соответствующем разделе главы 12.
Основы работы с конструктором отчетов изложены в главе 12.
Настройка отчета на размещение начала секции в начале строки или столбца описана в соответствующем разделе главы 14.Предметный указатель
м
MiiilMcrgc, 42 Выражение, 29; 57; 326; 371
Вычисляемый столбец, 67
Q
0 В Е-сетка, 35 Г
Главная кнопочная форма, 303; 378
S Горячие клавиши, 242
SQL, 36; 185 Группа записей, 369
запрос добавления, 198 Группа элементов, 239; 345 широс обновления, 196
запрос объединения, 205 Д
запрос отбора, 187 Диалоговое окно, 304
запрос создания таблицы, 197 Динамический набор данных, 26; 33; 49; 146
запрос удаления, 197 ввод данных, 50
инструкция DELETE, 197 выделение записей, 53
инструкция INSERT, 198 добавление новых записей, 51
инструкция SELECT, 187; 197 копирование записи, 53
добавление вычисляемого столбца, 193 навигация между полями, 50
синтаксис, 195 перемещение между записями, 52
инструкция UPDATE, 196 удаление записи, 53
итоги и группировка, 194 форматирование таблицы, 53 модификатор PERCENT, 189
параметрический запрос, 195 3
предложение FROM, 189 ч
предложение HAVING, 194 запись, 4У
предложение ORDER BY, 189 групировка, 126
предложение WHERE, 189 маркер, эи
ашание внутренних объединений, 190; 191 фильт'а! и я 125
создание объединения по неравенству, 192 филыр.шия,
создание самообъединения, 191 аПр ' ' Л,
' вложение, 103
у вычисляемый столбец, 67
действия, 142; 196
"А' добавление подчиненной таблицы, 116
добавление полей, 101 ^ добавление таблиц, 100
-порядок, 345 добавления, 147; 198
итоги, 130
А конструктор,104
ггоформат, 221 многотабличный, 100
иумснт функции, 71 на уникальные значения, 113
)хигсктура символов, 285 обновления, 142; 196
отбора, 187
g параметрический, 139; 195; 306
создание, 139
'« Данных параметры, 55
,,,С|||||ЯЯ- 36 подзапрос, 130; 198
>слиционная, 88 принятия решений, 132
сводный, 122 " создание, 121
ПЛЫвающее окно, 304 создание, 34
>ричный ключ, 92 создания таблицы, 146; 197 удаления, 145; 197 создание, 190
Защита данных формы, 227 левое внешнее, 97; 105
линия объединения, 96 И по неравенству, 97; 192
Идентификатор, 57; 59 создание, 110; 192
правое внешнее, 97; 105 редактирование связи, 99 самообъединение, 97 Константа, 57; 58 создание, 109; 191
даты и времени, 58 создание, 98
простая, 59 в конструкторе, 104
текстовая, 58 удаление,100
числовая, 58 Операнд, 57; 58
Конструктор, 35 идентификатор, 59
Критерий, 26; 29; 33; 57 константа, 58
ВВ°Д. 32 функция, 59
составной, 63 Оператор, 57; 59
^ (и). 63 Between...And, 62
Or (Или), 64 In 63
Is Null, 63
M Like, 62
Макрос, 380 арифметический, 61
действия, 382 логический, 63; 65
создание, 380 приоритет операций, 66
сопоставление командной кнопке, 384 сравнения, 60
сопоставление событию, 384 Отношения, 95
Маска ввода, 253 Отчет, 317
константа, 255 Автоотчет, 317
метка данных, 254 мастер автоотчетов, 319
модификатор, 255 Автоформат, 332
создание, 254 верхний колонтитул, 325
Мастер, 45 вставка разрыва страницы, 385
автоотчетов, 319 главный, 405
фуппы переключателей, 261 группировка данных, 321
запросов поиска записей, не имеющих добавление даты и времени, 330
подчиненных, 48 добавление надписей, 327
запросов поиска повторяющихся добавление полей, 327
записей, 47 заголовок, 324
командных кнопок, 301 компоновка
комбинированных списков, 265 ленточная, 319; 390
масок ввода, 253 полоса, 324
наклеек, 398 слой,324
отчетов, 320; 405 табличная, 320; 390
перекрестных запросов, 46 конструктор, 323
сводных таблиц, 150 мастеР наклеек, 398
слияния, 401 мастер, 320
создания форм, 212; 213; 297 многоколоночный, 390
списков 265 многотабличный, 404
нижний колонтитул, 325 номера страниц, 329 область данных, 325
Навигация, 50 одноколоночный, 390
организация элементов, 357 параметры,333
Объединение, 95 группировки, 369
внешнее, 96 сортировки, 368
создание, 105; 191 страницы, 391
внутреннее, 96 подотчет, 405
с
создание в конструкторе, <1(Ж Событие 3X4
создание в мастере. 405 Согласованностьданных, 95
подчиненный, 405 Сортировка, 24
предварительный просмотр, 331 Схема данныХ) 97 примечание, 325
публикация, 345 гр в Word или Excel, 347
в электронном виде, 346 Таблица
на бумаге, 346 дочерняя, 93
разрешение проблем, 392 подчиненная, 115
разрывы страниц, 359 реляционная, 94
сводной диаграммы, 409 родительская, 93
слияния, 401 сводная, 149
слой, 330 автовычисления, 158
фоновый рисунок, 335 группировка полей, 178
форматирование текста, 360 изменение порядка полей, 181
форматирование фона, 334 сведение, 180
экспорт в другой формат, 347 создание, 153; 163; 164
удаление поля, 162
Л фильтрация, 174; 179
создание объединения, 98
Панель инструментов Таблица символов, 288
форматирование, 286; 360
Создание и использование форм 1
В ЭТОЙ ГЛАВЕ 1
|И< пользование инструмента «шгоформы 3
Создание простых форм с помощью мастера 7
Навигация в форме 9
Создание формы в конструкторе 10
Что читать дальше 21
.Работа с элементами форм 21
Манипуляции с элементами форм 21
Добавление в форму надписей 33
Г" 33
Добавление в форму текстовых полей 35
Что читать дальше 39
Предотвращение ошибок за счет проверки данных 42
Использование элементов управления, ограничивающих выбор вариантов данных 48
Ввод данных с помощью элементов ActiveX 60
Что читать дальше 64
Особенности создания деловых форм 65
.Использование форм на производстве 66
Десять советов относительно создания деловых форм 67
.Создание 84
.Ill 102
Создание и настройка отчетов 102
оСоздание и публикация отчетов 104
В ЭТОЙ ГЛАВЕ 104
ЯОсобенности создания деловь отчетов 130
В ЭТОЙ ГЛАВЕ 130
.Создание 156
расширенных 156
отчетов 156
14 156
В ЭТОЙ ГЛАВЕ 156
Процесс создания многоколоночных отчетов будет подробно описан в следующей главе.Создание 175
В ЭТОЙ ГЛАВЕ 175
Настройка отчета на размещение начала секции в начале строки или столбца описана в соответствующем разделе главы 14.Предметный указатель 196
данных, 150; 153 п° выделенному, 26
имя поля, 49 п0 форме, 28
категорий, 311 применение, 32
логическое, 258 расширенный, 24
описание поля, 50 создание, 31
параметры, 38 Форма, 209
серий, 311 Автоформа, 211
столбцов,152 верхний колонтитул, 223
строк, 150; 152 всплывающая, 305
текстовое, 244 всплывающее окно
фильтра, 152 создание, 305
Последовательность перехода, 240 вставка надписи, 241
Построитель выражений, 85 вставка текстового поля, 243
Предикат, 188 вставка элементов, 230
ALL, 188' 202 выделение элементов, 231
Any, 202; 204 выравнивание элементов, 236
DISTINCT, 188 группировка элементов, 239
D1STINCTROW, 188 добавление элемента, 219