<<

стр. 6
(всего 10)

СОДЕРЖАНИЕ

>>


t'-i;,.4i|i1MI!;"!ia .4 . . , . .
WWII)

••••' •
[АВГО]
SUffEl.r
,"i

г а е - а ч з . . . Нет
:
,>i




Совет. Это не то окно, которое откроется, если щелкнуть правой кнопкой
мыши на таблице в окне базы данных, а затем щелкнуть на команде Свой-
ства (Properties) в контекстном меню. Единственная общая черта этих окон -
это свойство Описание (Description).

14. Щелкните в поле Условие на значение (Validation Rule), введите
[Дата]<[Дата2] и нажмите клавишу | Enter ].
Глава 6. Обеспечение достоверности данных 177

15. В поле Сообщение об ошибке (Validation Text) введите Дата2 должна
быть позднее Дата.
16. Сохраните таблицу (щелкнув на кнопке Нет (No)), чтобы зак-
рыть окно сообщения об изменении условий целостности) и вер-
нитесь в режим таблицы.
17. В любой записи введите 6/1/01 в поле Дата и 5/1/01 в поле
Дата2, а затем щелкните на другой записи. Появится сообщение,
что дата Дата2 должна быть позднее Дата.
18. Щелкните на кнопке ОК, в поле Дата2 введите 6/2/2001 и
щелкните на другой записи.
19. Закройте таблицу и базу данных.

Использование списка подстановки
для ввода данных
Ас2002-2-3 Просто удивительно, сколькими способами можно ввести одни
Ас2002е-1-3 и те же сведения. Например, жители Вашингтона в ответ на
просьбу указать название родного штата введут любые сокра-
щения - от Вашингтона до WA - не говоря уже об опечатках и
ошибках. Если попросить нескольких сотрудников ввести наи-
менования товаров, фамилии клиентов или названия фирм,
маловероятно, что результаты совпадут. Во избежание подоб-
ных ситуаций в тех случаях, когда число допустимых значе-
ний поля ограничено (например, перечнем товаров или спис-
ком клиентов), лучше выбирать значения из списка, а не
вводить вручную. Такой подход не только повышает достовер-
ность информации, но и ускоряет ввод данных.
Незначительные погрешности при вводе информации могут обернуться
серьезными проблемами при ее использовании. Для человека значения
AZ и Аризона обозначают один и тот же штат Аризона. Но поскольку
компьютер понимает все буквально, записи, содержащие значение Ари-
зона в поле штата, не попадут в список рассылки каталога клиентам из
штата AZ.
Ниже перечислены элементы управления, позволяющие свести ввод дан-
ных к выбору значений.
• Флажок, представляющий собой отображение логического поля,
которое может принимать только одно из двух значений.
Microsoft Access 2002. Шаг за шагом
178

Кнопки выбора, предназначенные для выбора нужного варианта из
числа предложенных.
Поле со списком, с помощью которого можно как выбрать, так и ввести
значение. Если в списке нет нужного значения, его можно ввести,
добавив тем самым к списку.
Столбец подстановки, который используется в тех случаях, когда
список возможных значений поля относительно короткий и
практически не меняется. Хотя столбец подстановки можно создать
вручную, гораздо проще это сделать с помощью мастера.
В этом упражнении вы воспользуетесь Мастером подстановок, что-
Field Test
бы создать список месяцев, из которого можно выбрать нужный.
Такой список может пригодиться при сборе информации по кре-
дитным карточкам. В качестве рабочей будет использоваться
папка SBS/Access/Accurate/Lookup. Выполните следующие шаги.
1. Откройте базу данных Field Test, расположенную в рабочей
папке.
2. Откройте таблицу Свойства полей Тест в режиме конструктора.
3. Добавьте новое поле, расположив его под полем Фамилия, на-
зовите его Месяц и задайте тип данных Мастер подстановок. По-
явится первая страница мастера Создание подстановки (Lookup Wizard).



'-•!,)/:&.>цt щ ра><••• •,.•'.••! Пев мннМ!

Л •! ш •!< Щм!
|;УД1Т , J . . , V : . i . ! " l Щ , •,'•»«ЛИ ! 1!|5. • • :




Мастер создаст список подстановки, в котором отобраисаются
значения для выбора. Этот список можно ввести вручную или
получить из таблицы или запроса.
Глава 6. Обеспечение достоверности данных 179


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

4. Щелкните на Будет введен фиксированный список значений (I will type the
values that I want) и щелкните на кнопке Далее (Next). Список подста-
новки обычно имеет один столбец, но можно указать больше.
Введите число столбцов, а затем введите данные, которые дол-
жны отображаться в каждом из них. Если столбцов несколько,
нужно указать столбец, данные из которого должны вводиться
в поле при выборе значения из списка.
5. Оставьте число столбцов равным 1 и щелкните в ячейке стол-
бца Столбец! (Со11).
6. Введите 12 месяцев года, нажимая на клавишу [Tab | для пе-
рехода в следующую строку, а затем щелкните на кнопке Далее
(Next).
7. Согласитесь с предложенной подписью Месяц и щелкните на
кнопке Готово (Finish).
8. В разделе Свойства полей (Reid Properties) щелкните на вкладке
Подстановка (Lookup), чтобы просмотреть свойства поля Месяц, пред-
ставленные на следующем рисунке.




:iilj !:
-":' :
13Е!Х50Е?5?а!НЗй'1?'}^,..
'' i'''> шЬ?й5?б?">
HjwM-.wsHMWi I; олоещ! __ ,,: •
• I:
Чисчдг.гошмов . 1
MefHer '' r:.'
;
t
I! i
II -
ii.ii ya pecs
i

,•


Microsoft Access 2002. Шаг за шагом
180

Мастер ввел всю необходимую информацию. Ясно, что список
можно было ввести вручную, используя тот же синтаксис.
9. Щелкните на кнопке Вид (View), чтобы перейти в режим табли-
цы, сохранив изменения.
10. Отрегулируйте ширину столбца Месяц, чтобы все значения
умещались в поле, перетащив правую границу заголовка стол-
бца.
11. Щелкните в поле Месяц в любой записи, а затем щелкните на
стрелке, чтобы отобразить список, как показано ниже.

Ш Свойства полей Тест : таблица




Февраль
Март
Апрель
Май
Июнь
Июль
Август




12. Щелкните на Февраль, чтобы ввести значение в поле.
13. Щелкните в следующем поле Месяц, введите Янв и нажмите
клавишу | Enter |. Как только вы введете букву «Я» в поле ото-
бразится Январь. Если же вы ввели «Апр» в поле Месяц появится
значение Апрель.
14. В следующее поле Месяц введите Окт и нажмите клавишу
I Enter |. Значение будет принято в том виде, в котором вы его
ввели. Хотя возможны ситуации, когда разрешается ввод зна-
чений, которых нет в списке, в данном случае этого делать не
следует.
15. Вернитесь в режим конструктора. В свойстве Ограничиться спис-
ком (Limit To List), последнем на вкладке Подстановка (Lookup), указано
Глава 6. Обеспечение достоверности данных 181

Нет (No), то есть разрешается вводить значения, которых нет в
списке.
16. В поле свойства Ограничиться списком (Limit To List) установите
значение Да (Yes).
17. Сохраните таблицу, вернитесь в режим таблицы, введите
Окт в поле Месяц и нажмите клавишу [ Enter |. Access сообщит,
что значение отсутствует в списке, и заблокирует ввод.
18. Щелкните на кнопке ОК, нажмите клавишу [ Esc |, чтобы зак-
рыть список, удалите введенное значение и вернитесь в режим
конструктора. Список названий месяцев удобен для пользова-
телей, но если компьютер должен обрабатывать эти данные
математически, проще воспользоваться списком с номерами
месяцев. Ниже представлено решение, в котором сочетаются
оба подхода.
19. Создайте новое поле с именем Месяц2 и снова задайте тип
данных Мастер подстановок (Lookup Wizard).
20. На первой странице мастера щелкните на варианте Будет ве-
ден фиксированный список значений (I will type the values that I want), а затем
щелкните на кнопке Далее (Next).
21. Введите 2, чтобы добавить второй столбец, а затем щелкни-
те в ячейке столбца Столбец! (СоИ).
22. Введите следующие номера и названия месяцев в оба стол-
бца, нажимая на клавишу | Tab | для перехода в следующую
ячейку.
Месяц
Номер Месяц Номер
1 Январь Июль
7
Август
2 8
Февраль
Сентябрь
Март
3 9
10 Октябрь
Апрель
4
Ноябрь
11
5 Май
12 Декабрь
Июнь
6
Окно мастера теперь выглядит, как показано на рисунке.
Microsoft Access 2002. Шаг за шагом
182


жтчения, которые пуде г. годор-к.тп-. сто.* fflfcpl •'»" «и Н«д» i ? ч>* по

:
1У«№| '^.'- '
Р 41-i;:f.l.lV. J.n;:il..| !

j
:':{,"ЛГ:'''
F;:";'l' • i




23. Щелкните на кнопке Далее (Next), чтобы перейти к следую-
щей странице мастера.
24. Примите предложение использовать Столбец! (СоИ) в каче-
стве столбца, данные из которого будут вводиться в поле при
выборе значения из списка, и щелкните на кнопке Готово (Finish).
На вкладке Подстановка (Lookup) теперь отображается следующая
информация.

И Свойства полей Тест : таблица


Фамилия
il Месяц
l
Щ Месяц?'""




-ц I




Мастер вставил значения из столбцов подстановки в поле Ис-
точник строк (Row Source) и задал установки других свойств в соот-
ветствии с вашими указаниями.
Глава 6. Обеспечение достоверности данных 183

25. Для свойства Ограничиться списком (Limit To Ust) измените уста-
новку на Да (Yes).
26. Сохраните изменения, переключитесь в режим таблицы, а
затем щелкните на стрелке поля Месяц2, чтобы отобразить сле-
дующий список.




Февраль
Март
Апрель
Май
Июнь
Июль
Август




27. Щелкните на Январь. В поле Месяц2 появится значение 1, более
практичное с точки зрения компьютера. Однако наличие двух
столбцов и тот факт, что отображается не тот столбец, на кото-
ром щелкаешь, может вызвать у пользователей недоумение.
28. Снова переключитесь в режим конструктора. В поле свой-
ства Ширина столбца (Column Width) установите значение 0 для пер-
вого столбца, чтобы отменить его отображение.
29. Сохраните изменения, вернитесь в режим таблицы. Для про-
верки в поле Месяц2 введите Февраль в две записи и Март — в
третью. Теперь в списке подстановки отображаются только на-
звания месяцев. После выбора значения в поле Месяц2 также по-
явится название месяца, но в базе данных сохранится его но-
мер.
30. Щелкните правой кнопкой мыши в столбце Месяц2, щелкни-
те на команде Фильтр для (Filter for) в контекстном меню, введите 2
и нажмите клавишу ( Enter |. В таблице останутся только две
записи со значением Февраль в поле Месяц2.
Microsoft Access 2002. Шаг за шагом
184

31. Щелкните на кнопке Удалить фильтр (Remove Filter), а затем по-
вторите предыдущий шаг, но введите значение 3, чтобы ото-
бразить записи со значением Март в поле Месяц2.
32. Закройте базу данных Field Test, щелкнув на кнопке Да (Yes) в
ответ на предложение сохранить изменения.

Обновление информации в таблице
Ас2002е-3-1 По мере эксплуатации база данных разрастается, и может ока-
заться, что часть информации устарела. Можно скрупулезно
просматривать записи, обновляя устаревшие данные, но гораз-
до проще прибегнуть к средствам и приемам Access, предназ-
наченным для этой цели.
Например, если сотрудник постоянно делает опечатку в одном и том же
слове, можно воспользоваться командой Найти и заменить (Find and Replace) в
меню Правка (Edit), чтобы найти все вхождения данной опечатки и заменить
ее правильным словом. Эта команда работает практически так же, как
одноименные команды в Microsoft Word и Microsoft Excel.
В тех случаях, когда требуется аналогичным образом изменить значения
определенных полей в определенных записях, можно воспользоваться
запросом на обновление (то есть, запросом, который отбирает нужную
информацию и выполняет над ней указанные действия).
GardenCo В этом упражнении вы создадите запрос на обновление, чтобы
повысить цену луковичных растений и кактусов на 10%. В ка-
честве рабочей будет использоваться папка SBS/Access/Accurate/
QueryUp. Выполните следующие шаги.
1. Откройте базу данных GardenCo, расположенную в рабочей
папке.
2. На панели объектов щелкните на пункте Запросы (Queries), а за-
тем щелкните дважды на команде Создание запроса с помощью мас-
тера (Create query by using wizard).
3. В списке Таблицы и запросы (Tables/Queries) выделите Таблица: Типы
(Table: Types).
4. Щелкните дважды на поле НазваниеТипа, чтобы переместить
его в список Выбранные поля (Selected Fields).
5. В списке Таблицы и запросы (Tables/Queries) выделите Таблица: Товары.
Глава 6. Обеспечение достоверности данных 185

6. Щелкните дважды на полях ОписаниеТовара и Цена, чтобы пере-
местить его в список Выбранные поля (Selected Reids).
7. Щелкните на кнопке Готово (Finish), чтобы принять заданные по
умолчанию значения и создать запрос. Результаты запроса ото-
бразятся в виде таблицы, которая содержит только три поля
НазваниеТипа, ОписаниеТовара и Цена, как показано ниже.



Луковые I Волшебная Ли]
(Осенний кроку;
Луковые
Луковые j Ветреница I ЖЖ
Луковые i Ландыш ШШ '
jСибсрский Ирй
Луковые
Луковые | Желтый нарцис;
jПионы
Луковые
[Лилия
Луковые
Луковые Шегрния
Луковые \ Тюльпаны |
Кактусы {Опунция
Стелящиеся {Корона вика I
;Англиский плю;
Стелящиеся




8. Щелкните на кнопке Вид (View), чтобы отобразить запрос в ре-
жиме конструктора.




СодТта КодТовара
1азваниеТипа ОписаниеТов^
Латинское мг •'':•:
Описание
КодПоставщг'г]




В запросе отображаются товары трех категорий. Поскольку
требуется поднять цены только на луковичные растения и как-
тусы, исключите из результатов запроса товары, не относящи-
еся к этим категориям.
Microsoft Access 2002. Шаг за шагом
186

9. В столбце НазваниеТипа в ячейку Условие отбора (Criteria) введите
луковые, а затем введите кактусы в ячейку Или (Or).
10. Щелкните на кнопке Запуск (Run), чтобы выполнить запрос и
убедиться, что результаты содержат только луковичные рас-
тения и кактусы, а затем переключитесь в режим конструкто-
ра. Созданный запрос содержит именно те записи, которые тре-
буются. Но чтобы внести в них изменения, требуется запрос на
обновление.
11. Щелкните в меню Запрос (Query), чтобы отобразить команды,
которые можно применить к запросу. В середине меню имеют-
ся четыре команды, помеченных восклицательным знаком,
каждая из которых выполняет определенное действие.




Совет. Запрос на действие нельзя создать напрямую. Вначале нужно со-
здать запрос на выборку, а затем преобразовать его в запрос, выполняю-
щий нужное действие. Для этого откройте существующий запрос, а затем
воспользуйтесь либо командой в меню Запрос (Query), либо списком кнопки
Тип запроса (Query Type), либо контекстным меню, которое открывается, если
щелкнуть правой кнопкой мыши на запросе и указать на Тип запроса (Query
Туре).

12. Щелкните на команде Обновление (Update Query). Запрос на вы-
борку будет преобразован в запрос на обновление. Внешне это
проявляется только в том, что на бланке запроса появится стро-
ка Обновление (Update to), а строки Сортировка (Sort) и Вывод на экран (Show)
исчезнут.
13. В ячейке Обновление (Update to) столбца Цена введите [Цена]*1,1.
Глава 6. Обеспечение достоверности данных 187


Совет. Скобки вокруг Цена указывают, что это объект Access. Если создать
выражение с помощью построителя, оно будет выглядеть следующим об-
разом: [Товары]![Цена]*1,1. Поскольку выражение содержит ссылку на
таблицу, где находится данное поле, оно может быть вставлено и в другие
таблицы.

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

Совет. Чтобы быстро создать резервную копию таблицы, в окне базы дан-
ных отобразите список таблиц, щелкните на таблице, копию которой нуж-
но создать, нажмите на клавиши [ Ctrl l + fcl. а затем нажмите на клави-
ши | Ctrl | + ГУ]. В диалоговом окне, которое появится, укажите имя копии
таблицы и щелкните на кнопке ОК.

14. Щелкните на кнопке Вид (View). В запросе на выборку щелчок
на кнопке Вид (View) равносилен запуску запроса. В запросе на
обновление щелчок на кнопке Вид (View) просто отображает спи-
сок полей, подлежащих обновлению. В данном случае отобра-
зится список тех же цен, что и в запросе на выборку.
15. Вернитесь в режим конструктора и щелкните на кнопке За-
пуск (Run). Появится следующее предупреждение:
Microsoft Access



.• . I . no....-.»•• :., .'




16. Щелкните на кнопке Да (Yes), чтобы подтвердить обновление,
а затем щелкните на кнопке Вид (View), чтобы отобразить стол-
бец Цена с ценами, выросшими на 10%.
17. Сохраните и закройте запрос, а затем закройте базу дан-
ных.
188 Microsoft Access 2002. Шаг за шагом


Удаление информации из таблицы
Ас2002-5-1 ^° временем часть информации в базе данных становится не-
Ас2002е-3-4 нужной. Так, например, таблица Товары содержит сведения о
товарах, которые продавались в течение всего учетного перио-
да. Товары, продажа которых прекращена, помечены флажком
в поле Поставки прекращены. Они не печатаются в каталогах, не
рекламируются, но сохраняются в базе данных на тот случай,
если будут снова востребованы. По той же причине в базе дан-
ных хранятся сведения о клиентах, которые перестали делать
заказы или попросили исключить себя из списков рассылки.
В конечном итоге база данных разрастается настолько, что возникает не-
обходимость навести порядок и избавиться от лишней информации. Мож-
но удалить записи вручную, просматривая их одну за другой, но, если
удаляемые записи имеют нечто общее, лучше воспользоваться запросом
на удаление и избавиться от всех сразу.

Важно. При удалении записей учтите ряд моментов. Во-первых, восста-
новить удаленные записи не так-то просто. Во-вторых, удаление может
оказаться более обширным, чем вы рассчитывали. Если таблица, из ко-
торой удаляются записи, связана с другой таблицей и задан параметр
Каскадное удаление связанных записей (Cascade Delete Related Records), записи во вто-
рой таблице также будут удалены. В одних случаях это оправдано, в
других ˜ нет. Например, едва ли вы захотите удалить записи о прошлых
продажах только потому, что нужно удалить товары, на которые боль-
ше нет спроса. Существуют два способа решения этой проблемы: сохра-
нить резервную копию базы данных, прежде чем удалять записи, или
переместить удаляемые записи в специально созданную для этих целей
таблицу.

GardenCo В этом упражнении вы создадите запрос на удаление, чтобы
убрать из таблицы Товары сведения о товарах, продажа которых
прекращена. В качестве рабочей будет использоваться папка
SBS/Access/Accurate/QueryDel. Выполните следующие шаги.
1. Откройте базу данных GardenCo, расположенную в рабочей
папке.
2. На панели объектов щелкните на пункте Запросы (Queries).
3. Щелкните дважды на команде Создание запроса в режиме конструк-
тора (Create query in design view), чтобы открыть окно запроса и диа-
логовое окно Добавление таблицы (Show Table).
Глава 6. Обеспечение достоверности данных 189

4. Щелкните дважды на таблице Товары, чтобы добавить ее в окно
запроса, а затем щелкните на кнопке Закрыть (Close), чтобы зак-
рыть диалоговое окно Добавление таблицы (Show Table).
5. Щелкните дважды на звездочке вверху списка полей табли-
цы Товары, чтобы включить все поля в запрос. В первом столбце
бланка запроса в ячейке Поле (Reid) появится значение Товары*, а
в ячейке Имя таблицы - значение Товары.

Совет. Щелчок на звездочке позволяет переместить сразу все поля таб-
лицы на бланк запроса, не создавая для каждого их них столбец. Однако
если требуется задать сортировку или условие отбора для определенного
поля, нужно поместить его в отдельный столбец, тем самым добавив на
бланк запроса дважды. Чтобы избежать двойного отображения полей в
результатах запроса, очистите флажок Вывод на экран (Show) для отдельных
полей.

6. Прокрутите список полей таблицы Товары до конца и щелкни-
те дважды на поле Поставки прекращены, чтобы скопировать его в
первый свободный столбец.
7. В меню Запросы (Queries) щелкните на команде Удаление (Delete
Query), чтобы преобразовать запрос на выборку в запрос на уда-
ление.
На бланке запроса строки Сортировка (Sort) и Вывод на экран (Show)
исчезли, зато появилась строка Удаление (Delete). В первом столб-
це, который содержит ссылку на все поля таблицы, в ячейке
Удаление (Delete) содержится слово Из (From), означающее, что это
та таблица, из которой удаляются записи. Для отдельных по-
лей в ячейке Удаление (Delete) отобразится слово Условие (Where), оз-
начающее, что это поле может включать критерий удаления.
8. В ячейку Условие отбора (Criteria) столбца Поставки прекращены вве-
дите Да.
Поле Поставки прекращены имеет логический тип данных и отобра-
жается в таблице как флажок. Выделенный флажок соответ-
ствует значению Да (Yes). Следовательно, чтобы выявить това-
ры, продажа которых прекращена, нужно найти записи,
имеющие значение Да (Yes) в поле Поставки прекращены.

Ш 9. Чтобы убедиться, что запрос работает правильно, щелкните
на кнопке Вид (View).
190 Microsoft Access 2002. Шаг за шагом

В таблице отобразятся 18 товаров, продажа которых прекра-
щена, но, как видите, они все еще в таблице. Прокрутить запи-
си вправо, чтобы убедиться, что флажки в поле Поставки прекра-
щены выделены.
10. Щелкните на кнопке Вид (View), чтобы вернуться в режим кон-
структора.

Совет. Прежде чем удалять записи, можно отобразить окно Схема данных
(Relationships), щелкнув на команде Схема данных (Relationships) в меню Сервис (Tools).
Если таблица, из которой удаляются записи, связана с другой таблицей,
содержащей информацию, которую не следует удалять, щелкните пра-
вой кнопкой мыши на линии связи, а затем щелкните на команде Изменить
связь (Edit Relationship) в контекстном меню. Убедитесь, что флажок Обеспече-
ние целостности данных (Enforce Referential Integrity) выделен, а флажок Каскадное уда-
ление связанных записей (Cascade Delete Related Records) - нет.

11. Щелкните на кнопке Запуск (Run), чтобы выполнить запрос на
удаление.

Появится предупреждение о том, что отменить это действие
нельзя.
12. Щелкните на кнопке Да (Yes), чтобы удалить записи.
Появится еще одно предупреждение, где указано, что Access
не может удалить две записи. Дело в том, что два товара, про-
дажа которых прекращена, упоминаются в таблице Сведения о
заказе. Между таблицами Товары и Сведения о заказе существует от-
ношение один-ко-многим, и задан параметр Обеспечение целостно-
сти данных (Enforce Referential Integrity).
13. Щелкните на кнопке Да (Yes), чтобы выполнить запрос, а за-
тем щелкните на кнопке Вид (View), чтобы отобразить два товара,
которые не были удалены.
14. Если предполагается использовать этот запрос в дальней-
шем, щелкните на кнопке Сохранить (Save), введите имя запроса и
щелкните на кнопке ОК.
Глава 6. Обеспечение достоверности данных 191


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

15. Закройте запрос, а затем закройте базу данных.
16. Если вы не намерены переходить к следующей главе, вый-
дите из Access.
Модификация отчета,
созданного с
помощью мастера,
стр. 199




Создание отчета с нуля, стр. 204




РФ
шш: товар ав г о алфавиту
=Form TtDatf O;iQmf˜




Добавление
подчиненного отчета,
стр.210



Изменение отчета в
режиме конструкто-
ра, стр. 199
Глава 7
Работа с отчетами

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

В бизнесе под отчетами обычно понимаются документы, которые содер-
жат выводы и обобщения, сделанные на основе больших объемов инфор-
мации. Так, например, в базе данных GardenCo хранятся сведения о тыся-
чах заказов. Ввод и корректировка этой информации осуществляется либо
непосредственно в таблицах, либо с помощью форм. Но для того, чтобы
проанализировать динамику роста продаж, понадобится отчет.
Подобно печатным отчетам или сводному отчету по результатам деятель-
ности компании за год, отчеты, созданные в Microsoft Access, использу-
ются для подведения итогов и представления информации в виде, рас-
считанном на определенного читателя. При конструировании отчета
важно понимать, для кого он предназначен и какая степень обобщения
требуется.
Между формами и отчетами много общего. Для их создания используют-
ся аналогичные мастера и похожая среда конструктора. Как и формы,
отчеты могут содержать надписи, поля, рисунки и другие элементы уп-
равления, отображать информацию из одной или нескольких таблиц или
запросов, а также включать заголовки и примечания.
В этой главе вы узнаете, как создать и напечатать отчет, из-
влекающий определенную информацию из базы данных, и при-
дать ему удобный для чтения формат. В процессе выполнения
упражнений будут использоваться файлы базы данных GardenCo,
которые хранятся в папках RepByWiz, Modify, ByDesign, Subreport и Print,
вложенных в папку SBS\Access\Reports.


7 - Access 2002
194 Microsoft Access 2002. Шаг за шагом


Создание отчета с помощью мастера
Ас2002-7-1 Содержание отчета Access может быть разделено на две основ-
Ас2002е-4-1 ные категории: данные, извлеченные из таблиц, и все осталь-
Ас2002е-4-3 ное. Последняя категория включает заголовок, колонтитулы,
вводный и пояснительный текст, логотипы, фон и рисунки, а
также вычисления, базирующиеся на содержимом базы дан-
ных.
С помощью мастера можно быстро создать основу для отчета: выбрать
макет, присвоить стили, вставить поля и определить надписи. В некото-
рых случаях вся работа по созданию отчета выполняется в мастере. Если
же этого недостаточно, можно затем открыть отчет в режиме конструк-
тора и доработать.
GardenCo В этом упражнении вы воспользуетесь мастером, чтобы создать
простой отчет, который отображает упорядоченный по алфа-
виту список товаров, предлагаемых компанией «Все для сада».
В качестве рабочей будет использоваться папка SBS/Access/Reports/
RepB^Wiz. Выполните следующие шаги.
1. Откройте базу данных GardenCo, расположенную в рабочей
папке.
2. На панели объектов щелкните на Таблицы (Tables), а затем щел-
кните на таблице Товары, чтобы выделить ее.


Формы и отчеты
Формы и отчеты имеют одинаковое назначение: обеспечить удобный дос-
туп к информации, хранящейся в базе данных. Тем не менее между ними
имеются существенные различия, перечисленные ниже.
• Формы используются для ввода, просмотра и редактирования данных,
а отчеты - только для просмотра информации.
• Формы ориентированы на отображение на экране. Отчеты также мож-
но просматривать на экране, но преимущественно они создаются для
печати и последующего анализа.
• Формы подробно отображают записи и предназначены для персона-
ла, который непосредственно работает с базой данных. Отчеты исполь-
зуются для обобщения данных и предназначены для людей, которые
не имеют дела с базой данных, но получают из нее информацию.
Глава 7. Работа с отчетами 195

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


Совет. Если выделить таблицу или запрос перед запуском мастера отче-
тов, эта таблица (или запрос) станет основой для отчета.

3. В меню Вставка (Insert) щелкните на команде Отчет (Report), чтобы
отобразить диалоговое окно Новый отчет (New Report). Обратите вни-
мание, что таблица Товары уже выделена в качестве базисной
для отчета.
4. Щелкните дважды на пункте Мастер отчетов (Report Wizard), чтобы
открыть окно Создание отчетов (Report Wizard). Первая страница мас-
тера позволяет выбрать поля, которые нужно включить в от-
чет.

Совет. Мастер отчетов можно также запустить одним из следующих спо-
собов: воспользовавшись диалоговом окном Новый отчет (New Report), которое
открывается, если щелкнуть на пункте Отчет (Report) в списке кнопки Новый
объект (New Object); щелкнув на кнопке Создать (New) на панели инструментов
окна базы данных; щелкнув дважды на команде Создание отчета с помощью
мастера (Create report by using wizard) в окне базы данных.

5. Щелкните дважды на полях ОписаниеТовара, Заказано и Минималь-
ныйЗаказ, чтобы переместить их в список Выбранные поля (Selected Reids).

Совет. Поля отобразятся в отчете в той же последовательности, что и в
списке Выбранные поля (Selected Reids). Чтобы не создавать себе лишних про-
блем в дальнейшем, расположите их в нужном порядке.

6. В списке Таблицы и запросы (Tables/Queries) щелкните на Таблица: Типы
(Tables: Categories), чтобы отобразить поля этой таблицы.
7. В списке Выбранные поля (Selected Reids) щелкните на поле Описа-
ние Товара, чтобы выделить его. Следующее поле, которое будет
добавлено в список выбранных полей, расположится под выде-
ленным полем.
8. Щелкните дважды на поле НазваниеТипа. Окно мастера должно
выглядеть, как показано на следующем рисунке.
Microsoft Access 2002. Шаг за шагом
196


' : :, > Щ| : Щ




Ar'jriy4Ka*?K>., г > -ч. : .1; t > и-. i.H'-f:!:! --и; '-ч I p




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

9. Щелкните на кнопке Далее (Next), чтобы перейти ко второй стра-
нице мастера, которая имеет следующий вид.


ЭписаниеТовара, Название Типа,
жазано, МимимальныйЗаказ




"" """
ЩЦЩ


Если в отчет включено несколько таблиц, мастер учитывает вза-
имосвязь между ними и предлагает сгруппировать записи в лю-
бой из доступных логических систем. В данном случае возможна
группировка по типам или товарам. Щелкните на каждом вари-
анте и посмотрите, как изменится образец в правой панели.
Глава 7. Работа с отчетами 197


Важно. Если связь между таблицами не установлена (в диалоговом окне
Схема данных (Relationships)), прекратите работу мастера и установите связи.

10. Примите предложенную по умолчанию группировку по то-
варам - Товары и щелкните на кнопке Далее (Next). Эта страница
позволяет задать уровни группировки. В данном случае нужно
сгруппировать записи по первой букве названия товара.
11. Щелкните дважды на поле ОписаниеТовара, чтобы переместить
его вверх образца отчета в правой панели.
12. Щелкните на кнопке Группировка (Grouping Options) внизу стра-
ницы, чтобы открыть диалоговое окно Интервалы группировки
(Grouping Intervals).

Интервалы группировки
в необходтн.'-1 яiт •;• ,ллы ц,,пптЩ< m.w»'i.

MHi^r.^rivynnHf.^'! '. rmw - I
Ц|ОписаниеТовара




13. Отобразите список интервалов группировки, щелкните на
st
элементе по 1-й букве (1 Letter), а затем щелкните на кнопке ОК.
Окно мастера теперь выглядит следующим образом.




ЭписаниеТовара, Название
Заказано, МинимальныйЗакаэ
Microsoft Access 2002. Шаг за шагом
198

14. Щелкните на кнопке Далее (Next), чтобы перейти к странице
мастера, где можно указать порядок сортировки и параметры
вычислений.
15. Укажите поле ОписаниеТовара в качестве первого поля сорти-
ровки по возрастанию. Эта страница позволяет задать до че-
тырех полей сортировки. Если среди полей имеются числовые,
кнопка Итоги (Summary Options) становится доступной. Щелкнув на
ней, можно отобразить список числовых полей, снабженных
флажками для функций Sum, Avg, Min и Мах. Данный отчет содер-
жит только одно числовое поле МинимальныйЗаказ и не требует
подведения итогов.
16. Щелкните на кнопке Далее (Next), чтобы перейти к следую-
щей странице отчета. Щелкните на каждом макете, чтобы по-
смотреть, как он выглядит. Для ваших целей подойдет макет
Структура 1 (Outline 1).
17. Выделите вариант Структура 1 (Outline 1), оставьте ориентацию
Portrait (Книжная), а затем щелкните на кнопке Далее (Next), чтобы
отобразить список стандартных стилей.
18. Щелкните на стиле Сжатый (Compact) и щелкните на кнопке Далее
(Next), чтобы перейти к последней странице мастера.
19. Введите Список товаров по алфавиту в качестве имени от-
чета и щелкните на кнопке Готово (Finish), чтобы просмотреть от-
чет, который должен выглядеть, как показано ниже.
И




Список товаров по алс]




20. Закройте окно отчета, а затем закройте базу данных.
Глава 7. Работа с отчетами 199

Модификация отчета
Ас2002е-4-1 С помощью мастера можно быстро создать отчет, а затем дора-
ботать его в режиме конструктора, чтобы учесть конкретные
особенности и улучшить внешний вид. Доводка отчета пред-
ставляет собой итеративный процесс, то есть, вам придется
постоянно переключаться между режимами конструктора и
предварительного просмотра, чтобы оценить каждое измене-
ние, прежде чем вносить следующее. К счастью, режим конст-
руктора для отчетов очень похож на режим конструктора для
форм, с которым вы уже знакомы.
В этом упражнении вы поработаете над отчетом Список товаров по
GardenCo
алфавиту, хранящемся в базе данных GardenCo. В качестве рабо-
чей будет использоваться папка SBS/Access/Reports/Modify. Выпол-
ните следующие шаги.
1. Откройте базу данных GardenCo, расположенную в рабочей
папке.
2. На панели объектов щелкните на Отчеты (Reports).
3. Щелкните на Список товаров по алфавиту, а затем щелкните на
кнопке Просмотр (Preview), чтобы открыть отчет в окне, показан-
ном ниже.
Microsoft Access 2002. Шаг за шагом
200

4. Увеличьте окно, а затем переместите указатель по странице.
Указатель примет форму лупы со знаком плюс. Это означает,
что, если щелкнуть кнопкой мыши, масштаб отображения стра-
ницы увеличится. Щелкните, чтобы увеличить масштаб, и об-
ратите внимание на следующие недостатки макета отчета:
• под заголовком нет даты;
• часть горизонтальных линий нужно удалить (или добавить);
• имеется лишний текст;
• надписи к полям нуждаются в упорядочивании;
• списки разбиваются внутри групп;
• имеются упущения в форматировании.
5. Чтобы устранить перечисленные выше недостатки, щелкни-
те на кнопке Вид (View), чтобы отобразить отчет в режиме конст-
руктора, как показано на следующем рисунке.

Селектор Раздел заголовка Раздел верхнего
Селектор
заголовка колонтитула (закрыт)
отчета отчета
отчета I
Список товарм; по алфавиту : отчет
I•5• • Э • i • 10 • i • 11 • ,*.
1
2• I




an
СЕИСС К Т.ОВФО1 ПС
Селектор
верхнего _ *Sepi»w колонтитул ;.:;..
колонтитула * ЗУОЛОЮК гр -

даа-др nj([O
Опнса шеТовАра - п! i=Lenj([Oniic эннеТ( еара];1;
Селектор
области ^ц^а^д-
данных
а^иеТофра | | ||нЦвание[ипа |



ri. . . . . . .
Селектор _
нижнего
I-NOW
колонтитула аЯ'К'ШК'?:1.::'::..




Селектор Раздел Раздел нижнего Область
примечания примечания колонтитула данных
отчета отчета (закрыт)

6. Укажите на верхнюю границу селектора заголовка страни-
цы. Когда указатель примет форму двуглавой вертикальной
Глава 7. Работа с отчетами 201

стрелки, перетащите селектор вниз примерно на 0,5 см. Долж-
ны появиться двойные линии под названием отчета. (Горизон-
тальные линии, вставленные мастером, на самом деле состоят
из двух линий.)
7. В разделе Заголовок отчета (Report Header) щелкните на одной из
линий над названием, чтобы выделить ее, и нажмите клавишу
| Del |, чтобы удалить линию. Повторите этот шаг, чтобы уда-
лить вторую линию над названием и одну из линий под назва-
нием.
8. Если панель элементов не отображается на экране, щелкни-
те на кнопке Панель элементов (Toolbox) чтобы открыть ее.

9. На панели элементов щелкните на элементе управления Поле
(Text box), а затем щелкните справа в разделе Заголовок отчета (Report

Header), чтобы вставить поле и надпись к нему.
10. Щелкните на новой надписи и удалите ее.
11. Перетащите новое поле под название отчета, выровняв по
левой границе названия. Нажмите клавишу | F4|, чтобы открыть
окно Свойства (Properties) для нового поля.
12. На вкладке Данные (Data) щелкните в поле свойства Данные (Data
Source) и введите =Format(Date();"dd-mmm-yyyy").
Функция Дата (Date) возвращает текущую дату, а функция Фор-
мат (Format) задает формат ее отображения (например, 11-дек-
2001). Выражение, которое вы ввели, обеспечивает отображе-
ние'текущей даты при просмотре или печати отчета.
13. Закройте диалоговое окно Свойства (Properties).

Совет. Можно быстро вставить поле, отображающее дату или время, вос-
пользовавшись одним из стандартных форматов. Для этого в режиме кон-
структора щелкните на команде Дата и время (Date and Time) в меню Вставка (Insert),
укажите формат и щелкните на кнопке ОК. Access вставит поле в раздел
заголовка, а если он отсутствует, то в область данных. Перетащите поле
даты в нужное положение. За дополнительными сведениями о форматах
даты обратитесь к справочной системе Access.

14. В разделе Заголовок группы 'ОписаниеТовара' (ProductName Header)
удалите все жирные линии до и после надписей (учтите, что
здесь тоже двойной набор линий).
Microsoft Access 2002. Шаг за шагом
202

15. Удалите надпись ОписаниеТоварапо 1-ой букве, а соответству-
ющее поле перетащите к левому краю раздела.
16. В разделе Нижний колонтитул (Page Footer) щелкните в поле, со-
держащем текст =Now(), и удалите его.
17. Выделите все надписи в разделе Заголовок группы 'ОписаниеТова-
ра' (ProductName Header) и все поля в области данных, протащив
указатель таким образом, чтобы заключить нужные элементы
в прямоугольную рамку. Вокруг всех элементов управления
появятся границы и рукоятки выделения. Теперь их можно пе-
ремещать как группу.
18. Переместите элементы управления влево, так чтобы левая
граница Описания Товаров оказалась на уровне отметки 1,5 см на
горизонтальной линейке. Окно отчета должно выглядеть сле-
дующим образом.

Список товаров по алфавиту , отчет




19. Сохраните изменения, а затем переключитесь в режим про-
смотра, чтобы решить, что еще следует изменить. Нужно доба-
вить тонкую линию в конце каждой группы и принять меры,
препятствующие разрыву группы при переходе на следующую
страницу.
20. Переключитесь в режим конструктора и щелкните на кноп-
ке Сортировка и группировка (Sorting and Grouping) на панели инструмен-
тов, чтобы отобразить следующее диалоговое окно.
Глава 7. Работа с отчетами 203



JSJ i. Ю возрастанию
l Поi возрастанию
j Повозрастанию




Заголи- 'Да

Груге»фоюсз • (кам




Воспользуйтесь этим диалоговым окном, чтобы задать свойства
группы. Верхнее поле выделено и помечено значком, который
указывает, что по этому полю производится группировка за-
писей. Установки свойств Заголовок группы (Group Header) и Примеча-
ние группы (Group Footer) управляют отображением заголовка и при-
мечания группы. Так как недостающую линию предполагается
добавить в примечание группы, его следует отобразить.
21. В разделе Свойства группы (Group Properties) установите значение
Да (Yes) для свойства Примечание группы (Group Footer). В окне конст-
руктора над разделом Нижний колонтитул (Page Footer) появится раз-
дел Примечание группы ОписаниеТовара (ProductName Footer).
22. В поле свойства Не разрывать (Keep Together) укажите Вся группа
(Whole Group) и закройте диалоговое окно Сортировка и группировка
(Sorting and Grouping).
23. Щелкните на элементе управления Линия (Line), а затем щел-
кните вверху раздела Примечание группы ОписаниеТовара (ProductName
Footer), чтобы вставить короткую горизонтальную линию.
24. Если диалоговое окно Свойства (Properties) отсутствует, нажми-
те клавишу [ F4|, чтобы открыть его, а затем щелкните на вклад-
ке Макет (Format).
25. В поле свойства От левого края (Left) введите 0, а в поле свойства
Ширина (Width) введите 16,5.
26. Сохраните изменения и переключитесь в режим просмотра.
Внешний вид отчета улучшится, если удалить линии над но-
мером страницы и подровнять колонки.
27. Переключитесь в режим конструктора и удалите две линии
вверху раздела Нижний колонтитул (Page Footer).
Microsoft Access 2002. Шаг за шагом
204

Если линии не видны, протащите указатель вверх, начертив
прямоугольник, пока не выделите линии.
28. В разделах Заголовок группы 'ОписаниеТовара' (ProductName Header) и
Область данных (Details) выделите поле МинимальныйЗаказ и надпись к
нему, а затем перетащите оба элемента вправо, так чтобы их
правая граница совместилась с краем формы.
29. В тех же разделах перетащите поле Заказано и надпись к нему
вправо, так чтобы их левая граница оказалась на отметке 9,75 см.
30. Расширьте поля НазваниеТипа и Заказано и надписи к ним. Отчет
в режиме конструктора должен выглядеть следующим образом.

Список товаров по алфавиту : отчет

7 • I • 8 • I • 9 • I • 10 • I • 11 • I • 12 2




шир
Cm сок: товаров г о алфавиту
=FOrrn




Ц Зяго.ь* I »• ЦЦ .1'! I Ччисдние! а|>,:<|>-')'




31. Сохраните изменения и просмотрите отчет.
32. Закройте отчет, а затем закройте базу данных.

Создание отчета с нуля
Ас2002е-4-1 Если нужно создать отчет, содержащий данные из нескольких
таблиц, проще всего воспользоваться мастером отчетов. Но
иногда главный отчет всего лишь служит рамкой для подчи-
ненных отчетов, и практически не содержит информации из
базовых таблиц. В таких случаях проще создать главный отчет
вручную в режиме конструктора.
Глава 7. Работа с отчетами 205

GardenCo В этом упражнении вы воспользуетесь запросом в качестве ба-
зиса для создания отчета, в котором перечислены суммы про-
даж по типам. Заголовок группы должен содержать текущий
тип, но верхний колонтитул, область данных и нижний колон-
титул останутся пустыми. В качестве рабочей будет использо-
ваться папка SBS/Access/Reports/ByDesign. Выполните следующие
шаги.
1. Откройте базу данных GardenCo, расположенную в рабочей
папке.
2. На панели объектов щелкните на Запросы (Queries).
3. Щелкните на запросе Продажа по типам, чтобы выделить его.
4. В меню Вставка (Insert) щелкните на команде Отчет (Report).
5. Щелкните дважды на Конструктор (Design View), чтобы открыть
пустой отчет.

Совет. По умолчанию для нового отчета создаются область данных, верх-
ний и нижний колонтитулы. Можно удалить любые из этих элементов и
добавить другие.

Откроется окошко, в котором отображаются поля запроса Про-
дажа по типам.
6. В меню Вид (View) щелкните на команде Заголовок/примечание отче-
та (Report Header/Footer). В отчет будут включены разделы заголов-
ка и примечания отчета.
7. В меню Вид (View) щелкните на команде Сортировка и группировка
(Sorting and Grouping), чтобы отобразить одноименное диалоговое
окно. Воспользуйтесь этим диалоговым окном, чтобы указать
поля, которые будут использоваться для группировки записей
в отчете.
8. Разверните список Поле/выражение (Reid/Expression) для верхней
строки и щелкните на НазваниеТипа.
9. В области Свойства группы (Properties) установите значение Да (Yes)
для свойства Заголовок группы (Group Header).
На кнопке селектора слева от НазваниеТипа появится значок груп-
пировки, а в окне конструктора появится раздел Заголовок группы
НазваниеТипа (CategoryName Header).
206 Microsoft Access 2002. Шаг за шагом

10. Закройте диалоговое окно Сортировка и группировка (Sorting and
Grouping).
11. Если панель элементов отсутствует на экране, щелкните на
кнопке Панель элементов (Toolbars).

12. Щелкните на селекторе отчета в верхнем левом углу отче-
та, а затем нажмите клавишу [ F4 ], чтобы открыть диалоговое
окно Свойства (Properties).
гзи^тизйга^шая»^^

Совет. Если отчет уже выделен, селектор отчета содержит черный квад-
ратик.

13. В диалоговом окне Свойства (Properties) щелкните на вкладке
Макет (Format) и установите значение 4 для свойств Число делений по
X (Grid X) и Число делений по Y (Grid Y). Точечная сетка, отображающа-
яся на заднем плане отчета, станет крупнее, что облегчит вы-
равнивание элементов управления.
14. Задайте высоту всех разделов, поочередно щелкая на се-
лекторе раздела и указывая следующие значения для свойства
Высота (Height) на вкладке Макет (Format) диалогового окна Свойства
(Properties).
Область Установка

Заголовок отчета (Report Header) 2,5 см
Верхний колонтитул (Page Header) 0 см
Заголовок группы НазваниеТипа (CategoryName Header) 5,5 см
Область данных (Details) 0 см
Нижний колонтитул (Page Footer) 0,5 см
Примечание отчета (Report Footer) Осм

Совет. Высоту раздела можно также установить, перетащив верхнюю
границу селектора радела в нужном направлении.

Окно конструктора должно выглядеть следующим образом.
Глава 7. Работа с отчетами 207




15. Теперь, когда общие черты отчета определены, щелкните
на кнопке Сохранить (Save), введите Продажа по типам в качестве
имени отчета и щелкните на кнопке ОК.
16. Чтобы ввести название отчета, щелкните на элементе уп-
равления Надпись (Label) на панели элементов, а затем щелкните
вверху раздела Заголовок отчета (Report Header) на расстоянии при-
мерно 5 см от левого края формы. Access вставит узкую над-
пись.
17. Введите Продажа по типам и нажмите клавишу | Enter |. По
мере ввода текста надпись расширится, а после нажатия на
клавишу [ E n t e r [ надпись будет выделена и откроется диало-
говое окно Свойства (Properties).
18. Установите следующие значения для свойств, определяю-
щих атрибуты шрифта.
Свойство Установка

Times New Roman
Шрифт (Font)
Размер шрифта (Font Size) 20
Bold (Полужирный)
Начертание (Font Weight)
Да (Yes)
Курсив (Font Italic)
Microsoft Access 2002. Шаг за шагом
208

Все изменения сразу же отображаются в надписи, и к тому мо-
менту, когда вы измените все атрибуты, текст перестанет уме-
щаться в рамке.
19. В меню Формат (Format) укажите на команду Размер (Size) и щел-
кните на По размеру данных (То Fit).
20. Вставьте теперь поле даты. В меню Вставка (Insert) щелкните
на команде Дата и время (Date and Time), чтобы отобразить следую-
щее диалоговое окно.
Дата и время

т
• чгТЕ-.врГ, Л" u.-аль If! 7IJ1S? : .
'

Сипели

г o2.?t.«2 |

Р 'Мдамгьрп^ии .
;I !,t.-4-:,5
:г,«
; Г 13:41 : 1




!




21. Убедитесь, что флажок Формат даты (Include Date) и первый (длин-
ный) формат даты выделены, очистите флажок Формат времени
(Include Time) и щелкните на кнопке ОК. В левом верхнем углу раз-
дела Заголовок отчета (Report Header) появится поле, содержащее зна-
чение =Date(). Если бы отчет не имел раздела заголовка, это поле
появилось бы в области данных.
22. Перетащите новое поле под название отчета, отрегулируй-
те его ширину, чтобы она соответствовала ширине названия, и
щелкните на кнопке По центру (Center) на панели инструментов
Форматирование, чтобы отцентрировать содержимое поля.
23. Перетащите поле НазваниеТипа из окошка, содержащего спи-
сок полей, в верхнюю часть раздела Заголовок группы НазваниеТипа
(CategoryName Header).
24. Удалите надпись НазваниеТипа, которая была вставлена вмес-
те с полем.
25. Выделите поле НазваниеТипа и установите те же значения для
свойств шрифта, что использовались для названия отчета.
Глава 7. Работа с отчетами 209

26. В меню Формат (Format) укажите на команду Размер (Size) и щел-
кните на По размеру данных (То Fit).
27. Разместите поле НазваниеТипа в самом верху раздела на рас-
стоянии 0,5 см от левого края формы, а затем расширьте его,
перетащив правую границу на отметку 7 см.
28. Щелкните на кнопке Сохранить (Save), чтобы сохранить отчет,
а затем просмотрите его в режиме Просмотр (Print Preview).




Продажа пс
четверг, Февраль:


Водные растения




29. Вернитесь в режим конструктора и вставьте надпись. Для
этого щелкните на элементе Надпись (Label) на панели элементов,
щелкните под левым краем поля НазваниеТипа, введите Товар и
нажмите клавишу [ Enter |.
30. Установите те же значения для свойств шрифта, что и для
поля НазваниеТипа, за исключением размера шрифта, который
должен быть равен 12.
31. Щелкните правой кнопкой мыши на надписи, в контекст-
ном меню укажите на команду Размер (Size) и щелкните на По раз-
меру данных (То Fit).
32. Расположите новую надпись вплотную к нижней границе
поля НазваниеТипа, выровняв их левые границы.
33. Вставьте номер страницы в нижний колонтитул, щелкнув
на команде Номера страниц (Page Number) в меню Вставка (Insert), чтобы
отобразить следующее диалоговое окно.
Microsoft Access 2002. Шаг за шагом
210

Номера страниц




I
' »1»11ПИ«'Л(»1Ч-П-,11




34. Выделите варианты Страница N из М (Page N of M) и Нижний колон-
титул (Bottom of Page(Footer)) в разделах Формат (Format) и Расположение
(Position). В поле Выравнивание (Alignment) установите значение По цен-
тру (Center), оставьте выделенным флажок Отображать номер на пер-
вой странице (Show Number of First Page) и щелкните на кнопке ОК. В
нижнем колонтитуле появится отцентрированное поле, содер-
жащее выражение ="Страница" & [Page] &" из" & [Pages].
35. Сохраните отчет, просмотрите результаты, а затем закрой-
те его.
36. Закройте базу данных.

Добавление подчиненного отчета
Ас2002-7-2 С помощью мастера можно быстро создать отчет на основе ин-
Ас2002е-4-2 формации, содержащейся в одной или нескольких таблицах
базы данных. Однако многие отчеты состоят из разделов, объе-
диненных единой темой, но не имеющих отношения друг к дру-
гу. Например, отчет может включать диаграммы, электронные
таблицы и другие типы информации, описывающие структуру
или деятельность компании, или сведения о товарах, спросе и
перспективах развития. Все эти разделы, связанные между
собой с точки зрения бизнеса, плохо вписываются в структуру
отчета Access.
Одним из возможных решений является печать нескольких отчетов, ко-
торые можно затем переплести в одной папке. Но гораздо проще восполь-
зоваться подчиненными отчетами. Подчиненный отчет представляет со-
Глава 7. Работа с отчетами 211

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

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

GardenCo В этом упражнении вы откроете главный отчет и вставите в него
подчиненный. Подчиненный отчет должен содержать суммар-
ные продажи для каждого типа товара, указанного в главном
отчете, а также поле для вычисления суммарной продажи для
данного типа. В качестве рабочей будет использоваться папка
SBS/Access/Reports/Subreport. Выполните следующие шаги.
1. Откройте базу данных GardenCo, расположенную в рабочей
папке.
2. Откройте отчет Продажа по типам в режиме конструктора.
3. На панели элементов щелкните на Подчиненная форма/отчет
(Subform/Subreport), а затем щелкните под левым краем надписи
Товар, отступив от нее вниз примерно на два деления сетки.
В главном отчете откроется пустой свободный отчет и появит-
ся первая страница Мастер подчиненных отчетов (Subreport Wizard), по-
казанная на следующем рисунке.
Microsoft Access 2002. Шаг за шагом
212

Мастер подчиненных отчетов
; Создать tl4'H'MMi"V>1 t'llMV « • : •.,:.'.' 'I.M «•.••.:•.,...•,,•.: ЮЛИЮ
«
Г»1боИ!И«Н>№Г"1,ф>.!«Ы, ЛИ| Л ... а˜'-




| р ДЗНЙЫг: 1;>Н'-:М;,СПИО 1Й.1МЧМ • • . ' • ; : . , V ° 4 " •'!!! -Т
Ц| 'ЙОРИУ (141!




С ИнеГОЩ| '< О" GV MLI И




Клиенты . Форма
подчиненная форма Товарь Форма
Типы (Форма •'-. |




4. Убедитесь, что выделен вариант Имеющиеся таблицы и запросы (Use
existing Tables and Queries), и щелкните на кнопке Далее (Next).
5. В списке Таблицы и запросы (Tables/Queries) выделите Запрос: Прода-
жа по типам (Query: Sales by Category).
6. Щелкните дважды на полях КодТипа, ОписаниеТовара и ПродажаТо-
вара, чтобы переместить их в список Выбранные поля (Selected Reids),
а затем щелкните на кнопке Далее (Next).
7. Согласитесь с заданным по умолчанию вариантом Выбор из спис-
ка (Choose from list), щелкнув на кнопке Далее (Next).
8. Примете предложенное имя подчиненного отчета и щелкните
на кнопке Готово (Finish). Подчиненный отчет Продажа по типам займет
место свободного элемента управления в главном отчете.
9. Если диалоговое окно Свойства (Properties) не отображается, щел-
кните на подчиненном отчете и нажмите клавишу [ F4 ], чтобы
открыть окно свойств подчиненного отчета.
10. На вкладке Макет (Format) задайте значения 10 для ширины и
2,5 для высоты подчиненного отчета и нажмите клавишу | Enter |.
11. В подчиненном отчете щелкните правой кнопкой мыши на
селекторе раздела Заголовок отчета (Report Header), а затем щелкни-
те на команде Заголовок/примечание отчета (Report Header/Footer) в кон-
текстном меню, чтобы удалить заголовок и примечание. Щелк-
ните на кнопке Да (Yes) в окне сообщения.
Глава 7. Работа с отчетами 213

11. В подчиненном отчете щелкните правой кнопкой мыши на
селекторе области Верхний колонтитул (Page Header), щелкните на
команде Колонтитулы (Page Header/Footer) в контекстном меню и щел-
кните на кнопке Да (Yes) в окне сообщения. Подчиненный отчет
теперь содержит только раздел Область данных (Detail).
13. В области данных удалите поле КодТипа
14. Щелкните в поле ОписаниеТовара и установите ширину поля
равной 6,1.
15. Щелкните в поле ПродажаТовара, введите 7,6 в поле От левого
края (Left) и 2,5 - в поле Ширина (Width).
16. В главном отчете щелкните на частично скрытой надписи
Подчиненный отчет Продажа по типам (Sales by Category subreport) и уда-
лите ее.

Совет. Если вы что-нибудь случайно удалили, нажмите на клавиши
| Ctrl | + (˜Z˜|, чтобы отменить удаление.

Подчиненный отчет должен выглядеть следующим образом.




17. Теперь нужно добавить область для вычисления итоговых
продаж для каждого типа. Щелкните на селекторе в верхнем
Microsoft Access 2002. Шаг за шагом
214

левом углу подчиненного отчета, а затем щелкните на команде
Заголовок/примечание отчета (Report Header/Footer) в меню Вид (View), что-
бы отобразить эти разделы.
18. Прокрутите подчиненный отчет, чтобы отобразить раздел
Примечание отчета (Report Footer). На панели элементов щелкните на
Поле (Text box), а затем щелкните в любом месте раздела приме-
чания. В отчете появится свободный элемент и надпись к нему.
Воспользуйтесь им для вычислений.
19. Введите текст надписи Всего:. Для свойства Шрифт (Font) ус-
тановите значение Arial, в поле свойства Размер шрифта (Font Size)
укажите 9, а в свойстве Насыщенность (Font Weight) установите зна-
чение Полужирный (Bold).
20. Щелкните в новом поле, в диалоговом окне Свойства (Properties)
щелкните на вкладке Данные (Data) и щелкните на кнопке постро-
ителя ....чтобы открыть окно Построитель выражений (Expression Builder).
21. В первом столбце щелкните дважды на элементе Функции
(Functions), а затем щелкните на Встроенные функции (Built-in Functions).
Прокрутите третий столбец и щелкните дважды на Сумма (Sum).
В поле выражения появится строка Sum(«expr»).
22. Выделите «ехрг», в первом столбце щелкните на элементе
Подчиненный отчет Продажа по типам (Sales by Category subreport), а затем
щелкните дважды на ПродажаТовара во втором столбце. В резуль-
тате окно Построитель выражений (Expression Builder) должно иметь сле-
дующий вид.


Sum ([ПродажаТовара]) |




«-4JT4CT.»
BackColor
<Список полей >
BackStyle
КодТипа_Надпись
Ш Запросы
ОписаниеТовара_Надпись BorderColor
CB Forms ПродажаТовара _Надпись BorderLlneStyle
ffi)Reports Линияб BorderStyle
КодТипа BorderWidth
И Функции
U О Встроенные функции р'Д ОписаниеТов BottomMargin
CanGrow
i^jl Линия?

<<

стр. 6
(всего 10)

СОДЕРЖАНИЕ

>>