textbook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И...

26
1 Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И ОТЧЕТОВ Экранные формы можно рассматривать как некие маски, через которые пользователь рассматривает поля записи базы данных. Маска скрывает от поль- зователя ненужные ему в данный момент поля. Пользователь может создать экранные формы, в которых поля размещены по всему полю экрана в удобном ему порядке. По его требованию в форме могут быть интегрированы и другие элементы (надписи, командные кнопки, селекторные кнопки, контрольные ин- дикаторы, списки, иллюстрации и т.д.). Формы можно раскрасить любыми дос- тупными красками, использовать для оформления растры и графические эле- менты (линии и прямоугольники). Экранные формы предназначены для того, чтобы облегчить пользователю ввод данных в базу и в качестве дополнительной информации могут содержать тексты помощи, отвечающие на вопрос, как ввести данные в некое поле, а так- же образцы заполнения полей. Формы должны быть обозримыми и наглядны- ми, в противном случае теряется их изначальный смысл. Формы одно из основных средств для работы с базами данных в СУБД MS Access. Они используются для ввода новых записей (строк таблиц), про- смотра и редактирования уже имеющихся данных, задания параметров запро- сов и вывода ответов на них и др. Формы выглядят как прямоугольные окна с размещенными в них элементами управления. Существует возможность созда- ния форм динамически при исполнении программы, однако естественным ре- жимом их создания является режим визуального конструирования. Отчет это форматированное изображение данных, которое выводится на экран, в печать или файл на диске. Отчеты позволяют извлечь из базы нужные сведения и отобразить их в виде, удобном для восприятия, а также предостав- ляют широкие возможности для обобщения и анализа данных. При печати таб- лиц и запросов информация выдается практически в том виде, в котором хра- нится. Часто возникает необходимость перегруппировать данные в виде отче-

Upload: others

Post on 03-Oct-2020

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

1

Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И ОТЧЕТОВ

Экранные формы можно рассматривать как некие маски, через которые

пользователь рассматривает поля записи базы данных. Маска скрывает от поль-

зователя ненужные ему в данный момент поля. Пользователь может создать

экранные формы, в которых поля размещены по всему полю экрана в удобном

ему порядке. По его требованию в форме могут быть интегрированы и другие

элементы (надписи, командные кнопки, селекторные кнопки, контрольные ин-

дикаторы, списки, иллюстрации и т.д.). Формы можно раскрасить любыми дос-

тупными красками, использовать для оформления растры и графические эле-

менты (линии и прямоугольники).

Экранные формы предназначены для того, чтобы облегчить пользователю

ввод данных в базу и в качестве дополнительной информации могут содержать

тексты помощи, отвечающие на вопрос, как ввести данные в некое поле, а так-

же образцы заполнения полей. Формы должны быть обозримыми и наглядны-

ми, в противном случае теряется их изначальный смысл.

Формы – одно из основных средств для работы с базами данных в СУБД

MS Access. Они используются для ввода новых записей (строк таблиц), про-

смотра и редактирования уже имеющихся данных, задания параметров запро-

сов и вывода ответов на них и др. Формы выглядят как прямоугольные окна с

размещенными в них элементами управления. Существует возможность созда-

ния форм динамически при исполнении программы, однако естественным ре-

жимом их создания является режим визуального конструирования.

Отчет – это форматированное изображение данных, которое выводится на

экран, в печать или файл на диске. Отчеты позволяют извлечь из базы нужные

сведения и отобразить их в виде, удобном для восприятия, а также предостав-

ляют широкие возможности для обобщения и анализа данных. При печати таб-

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

нится. Часто возникает необходимость перегруппировать данные в виде отче-

Page 2: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

2

тов, которые имеют традиционный вид и легко читаются. Подробный отчет

включает всю информацию из таблицы или запроса, но содержит заголовки и

разбит на страницы с указанием верхних и нижних колонтитулов.

Отчеты, как и формы, являются главными элементами интерфейса баз

данных. Они позволяют выводить на печать информацию о содержимом базы в

удобном для пользователя виде. Большая часть отчетов создается на этапе про-

ектирования офисного приложения.

MS Access отображает в отчете данные из запроса или таблицы, добавляя

к ним текстовые элементы, которые упрощают его восприятие. К числу таких

элементов относятся:

– заголовок. Этот раздел печатается только в верхней части первой стра-

ницы отчета. Используется для вывода данных, таких как текст заголовка отче-

та, дата или констатирующая часть текста документа, которые следует напеча-

тать один раз в начале отчета;

– верхний колонтитул. Используется для вывода данных, таких как заго-

ловки столбцов, даты или номера страниц, печатающихся сверху на каждой

странице отчета;

– область данных, расположенная между верхним и нижним колонтиту-

лами страницы. Содержит основной текст отчета. В этом разделе появляются

данные, распечатываемые для каждой из тех записей в таблице или запросе, на

которых основан отчет;

– нижний колонтитул. Этот раздел появляется в нижней части каждой

страницы. Используется для вывода данных, таких как итоговые значения, даты

или номера страницы, печатающихся снизу на каждой странице отчета;

– примечание. Используется для вывода данных, таких как текст заклю-

чения, общие итоговые значения или подпись, которые следует напечатать

один раз в конце отчета.

Многообразие возможностей формирования различных типов форм и от-

четов в современных развитых СУБД, гибкая настройка их вида, обилие эле-

Page 3: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

3

ментов управления делают практически невозможным подробное рассмотрение

этих составляющих банка данных в данном учебном пособии. Поэтому в на-

стоящем разделе рассматривается только наиболее употребительные возможно-

сти СУБД MS Access по разработке экранных форм и отчетов.

8.1. Создание несложных форм с помощью Мастера

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

новую экранную форму, надо выбрать вкладку «Forms» в окне базы данных и

нажать кнопку «New». После этого появится окно «New Form» (рис. 8.1).

Рисунок 8.1 – Начальное окно для создания формы

При создании формы, связанной с таблицами базы данных, лучше снача-

ла воспользоваться возможностями «Мастера», а потом модифицировать полу-

Page 4: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

4

ченную таким образом форму. Это ускорит и упростит процесс создания форм.

В окне «New Form» кроме выбора способа создания/вида формы можно опре-

делить и источник данных для создаваемой формы (рис. 8.1). Из окна «New

Form» можно выбрать только одну таблицу в качестве источника данных для

формы.

В качестве примера создадим форму для таблицы «Accounts». Выбор ис-

точника можно осуществить и на следующем шаге (рис. 8.2) в окошке «Ta-

bles/Queries». Если источником должны являться несколько таблиц, то можно

поступить несколькими разными способами, которые подробно рассмотрены в

литературе [1].

Рисунок 8.2 – Выбор полей для включения в форму

Следующим шагом при создании форм является выбор полей, которые

будут включены в экранную форму (рис. 8.2). Поля могут переноситься в фор-

му по одному и все сразу. В первом случае надо позиционироваться на нужное

Page 5: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

5

поле и нажать кнопку с одинарной стрелкой, направленной вправо. Чтобы пе-

ренести все поля, надо воспользоваться кнопкой с двойной стрелкой. Когда по-

ля включены в форму, на этапе определения состава полей их можно исклю-

чить, воспользовавшись кнопками, со стрелками, направленными влево. При

использовании Мастера при создании формы, выбор таблицы и хотя бы одного

поля обязательны.

Источником данных для формы могут быть не только таблица/таблицы,

но и запросы. Напомним, что в запросах можно использовать знак «звездочка».

При его использовании все поля исходной таблицы выводятся в ответ. Если

уже после создания такого запроса в таблицу будут добавлены новые поля, то

они попадут в ответ. Если же на основе такого запроса создана экранная форма,

то в нее войдут те поля, которые на момент создания экранной формы содержа-

лись в таблице.

Поля, которые вставлены в таблицу после создания экранной формы, в

запрос, являющийся источником, будут попадать, а в экранной форме отра-

жаться не будут. Поэтому, если необходимо, чтобы все поля исходной таблицы

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

вручную. Предположим, что мы хотим создать форму на основе таблицы «Ac-

counts» и включить в эту форму все поля исходной таблицы (рис. 8.2).

После определения состава полей, включенных в форму, следует выбрать

внешний вид формы (рис. 8.3). Удобнее сначала выбрать вид «Columnar», а за-

тем разместить элементы формы по экрану так, как это удобно для последую-

щей работы с формой. Название вида формы «Columnar» несколько условно.

Действительно MS Access при данном выборе создает экран «анкетной» фор-

мы: один под другим располагаются пары «название поля/содержание поля».

Но когда полей много, и все они не умещаются в один столбец на экране, то

система автоматически помещает их в два, три и т.д. столбца.

Page 6: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

6

Рисунок 8.3 – Выбор дизайна формы

Рисунок 8.4 – Выбор стиля формы

Page 7: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

7

Следующим шагом является выбор стиля формы (рис. 8.4). Стиль экран-

ной формы позволяет выбрать цвет и «фактуру» формы, т.е. позволяет решить

чисто оформительские проблемы.

Создание формы завершается заданием ее имени (рис. 8.5). По умолча-

нию дается имя, совпадающее с именем источника данных.

Созданная экранная форма может не полностью соответствовать потреб-

ностям разработчика. Чтобы ее подправить, можно сразу перейти в режим Кон-

структора, выбрав переключатель «Modify the form’s design», а можно это сде-

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

нее созданную форму в режиме Конструктора.

Рисунок 8.5 – Выбор имени формы

8.2. Доработка форм в режиме Конструктора

Как уже говорилось, форма, созданная Мастером, может быть скорректи-

рована. Для этого надо одним из указанных ранее способов перейти в режим

Page 8: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

8

конструктора. Экранная форма, полученная с помощью Мастера, в режиме

Конструктора будет иметь вид, показанный на рис. 8.6.

Рисунок 8.6 – Вид формы в режиме Конструктора

В верхней части экрана, помимо главного меню, видны три инструмен-

тальных панели: форматирования («Formatting»), конструктора форм («Form

Design») и панели элементов («Toolbox»). Первая из панелей стандартная для

всех офисных приложений Microsoft. Многие из элементов второй панели так-

же понятны. Некоторые из специфичных кнопок и их применение будут пояс-

нены ниже.

Как видно из рис. 8.6, все элементы полученной формы размещены в об-

ласти данных. Область заголовка формы («Form Header») закрыта, но ее можно

Page 9: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

9

раскрыть и ввести в нее заголовок формы и другие данные, относящиеся ко

всей форме. Так как назначение и способы работы с областями форм и отчетов

одинаковы, а их использование в отчетах более актуально, эти вопросы рас-

смотрены во второй части данного раздела учебного пособия, посвященной от-

четам.

8.2.1. Изменение включенных в форму элементов управления

Изменения, вносимые в исходную форму, могут быть разнообразными.

Прежде всего, существует возможность перемещения, изменения размеров и

выравнивания уже включенных в форму элементов управления. Для этого эле-

менты, которые надо изменить, должны быть выделены. Для выделения эле-

мента управления надо установить на него указатель и нажать кнопку мыши.

Чтобы выделить несколько элементов управления, следует нажать клавишу

Shift и, не отпуская ее, выделить все нужные элементы. Если выделяемые эле-

менты находятся рядом, и их не разделяют никакие элементы, которые не

должны входить в выделяемую группу, то можно нажать левую клавишу мыши

и, не отпуская ее, охватить появившимся контуром все те элементы, которые

надо выделить. Выделенные элементы имеют характерные маркеры по углам

элемента и по серединам его сторон.

Чтобы переместить выделенные элементы, надо позиционироваться на

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

нажатой левую клавишу мыши, переместить элементы на требуемое место. В

этом случае перемещаться будут все выделенные элементы. Если из пары

«подпись-элемент управления» надо переместить что-то одно, то надо пози-

ционироваться на левый верхний угол нужного элемента и добиться, чтобы

указатель приобрел форму указательного пальца: в этом случае будет передви-

гаться только этот элемент.

Page 10: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

10

Чтобы изменить размер элемента, надо позиционироваться на границе

элемента таким образом, чтобы указатель принял форму двунаправленной

стрелки. Выбор направления стрелок (вверх-вниз, вправо-влево, по диагонали)

зависит от того, как вы хотите изменить размер элемента.

Чтобы выровнять выделенные элементы управления, в меню «Format»

надо выбрать команду «Align», а затем в появившемся списке выбрать способ

выравнивания.

Чтобы удалить выделенные элементы управления, надо нажать клавишу

«Del».

8.2.2. Включение новых элементов в форму

Если первоначально в форму были включены не все поля из таблицы (или

Вы случайно удалили нужный элемент), нетрудно добавить поля из таблицы,

являющейся источником данных формы. Для этого надо нажать кнопку «Field

List» на панели инструментов. Из появившегося ниспадающего списка надо

выбрать имя нужного поля, позиционировавшись на нем, нажать левую клави-

шу мыши и, не отпуская ее, переместить элемент в нужное место формы.

Более сложным является вариант, когда для этих целей используется

кнопка «Text Box» на панели элементов, а потом у вставленного в результате

этого действия свободного элемента меняется соответствующим образом свой-

ство «Control Source», а у его надписи – свойство «Caption». Но такой способ

лучше использовать только в том случае, когда иной путь невозможен, напри-

мер, при выводе в форму вычисляемого поля.

При создании вычисляемого поля в свойство «Control Source» надо ввести

выражение для вычисления значения этого поля. Вычисляемые поля могут вво-

диться не только в те формы, которые используются для вывода информации,

но и в те, которые используются для ввода данных в базу данных. Например,

при вводе данных в таблицу «Sellers», можно на экран вывести вычисляемое

Page 11: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

11

поле «Возраст»: это поле не будет храниться в таблице (в нее будет вводиться

только «Дата рождения»), а на экран автоматически при вводе даты рождения

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

ных.

Чтобы ввести в форму текст, надо нажать кнопку «Label» на панели эле-

ментов и, не отпуская кнопку мыши, переместиться в то место в форме, куда

следует поместить текст. После чего ввести нужный текст и нажать клавишу

Enter. Кроме текста и полей в форму могут быть включены линии, квадраты,

рисунки.

8.2.3. Изменение типа элемента управления

В экранной форме могут использоваться разные элементы управления, в

том числе список, поле со списком, которые широко используются при созда-

нии экранных форм. Если при создании таблицы поля были созданы как поля

подстановки, то в форме, полученной в результате использования Мастера,

этим полям будут соответствовать поля со списком.

Если поля были созданы как обычно, а Вы хотите в форме использовать,

например, поле со списком, то можно поступить для достижения желаемого

результата разными способами. Во-первых, можно изменить тип элемента

управления в форме. Для этого в режиме Конструктора надо выделить соответ-

ствующий элемент формы, щелкнуть правой клавишей мыши, и появившемся

контекстном меню выбрать позицию «Change to», как показано на рис. 8.7. Дос-

тупные преобразования будут зависеть от того, какой тип имеет выбранный

элемент.

Page 12: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

12

Рисунок 8.7 – Изменение типа элемента управления

8.2.4. Создание форм, состоящих из нескольких страниц

Существует несколько причин, по которым бывает необходимо разнести

данные, размещаемые в экранной форме, по нескольким страницам. Это может

быть в случае, когда элементов в форме много, и размещение всех их на одном

экране слишком загромождает его; либо может быть вызвано желанием сгруп-

пировать поля и показывать каждую группу отдельно и др.

Для достижения этих целей можно либо, воспользовавшись элементом

управления «Page Break», указать, в каких местах должен быть переход на сле-

дующую страницу, либо создать форму с несколькими закладками. Элемент

управления «Page Break» используется для указания горизонтальных разрывов

Page 13: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

13

между элементами управления в форме. Для перехода к странице, находящейся

над или под указанным разрывом, используются клавиши PgUp или PgDn.

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

пользоваться элементом управления «Tab Control». При выборе этой возможно-

сти в форме создаются две закладки. В каждую из них можно переместить те

элементы, которые необходимо. Если необходимо создать большее число вкла-

док, то следует, находясь в зоне вкладок нажать правую клавишу мыши и в

появившемся контекстном меню выбрать позицию «Insert Page» (рис. 8.8).

Для включения элементов нужно выбрать необходимую вкладку и нажать

кнопку «Field List» на панели инструментов. Из ниспадающего списка надо вы-

брать имя нужного поля, позиционировавшись на нем, нажать левую клавишу

мыши и, не отпуская ее, переместить элемент в нужное место вкладки.

Рисунок 8.8 – Добавление вкладок

Page 14: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

14

Для того чтобы изменить название вкладки, надо воспользоваться правой

кнопкой мыши, в появившемся контекстном меню выбрать позицию

«Properties» и в свойстве «Name» записать требуемое название (рис. 8.9).

Рисунок 8.9 – Изменение названия вкладки

8.2.5. Последовательность обхода полей

Последовательность обхода полей при работе с формой может отличаться

от их расположения на экране. Для установления последовательности обхода

полей можно, позиционировавшись на заголовок окна формы в режиме Конст-

руктора, нажать на правую клавишу мыши. При этом появиться всплывающее

окно (рис. 8.10), в котором следует выбрать позицию «Tab Order». После чего

на экране появиться окно (рис. 8.11), в котором перечислены поля, включенные

в форму (если форма содержит несколько закладок, то будут выводиться только

те элементы, которые включены в «активную» закладку). Остается перетащить

их, создав нужную последовательность, с помощью мыши.

Page 15: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

15

Рисунок 8.10 – Изменение последовательности обхода полей

Рисунок 8.11 – Выбор последовательности обхода полей

Page 16: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

16

8.2.6. Свойства формы

Кроме свойств, относящихся к отдельным элементам формы, имеются

свойства, относящиеся ко всей форме. Их можно использовать для создания

дополнительных удобств при работе с формой, для обеспечения целостности

базы данных и других целей. Для того чтобы посмотреть и скорректировать

свойства формы, надо открыть форму в режиме Конструктора и двойным нажа-

тием кнопки мыши на «фон» под формой открыть окно свойств формы.

Перечень свойств формы обширен. Рассмотрим некоторые из них. Так, на

вкладке «Data» (рис. 8.12) имеется свойство «Data Entry». Если выбрать для не-

го значение «Yes», то можно создать форму, использующуюся только для ввода

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

торую можно вводить новые данные. Если вы хотите, чтобы выводились все

записи, то значение этого свойства должно быть «No». Можно, напротив, соз-

дать форму только для просмотра, запретив все корректировки.

Рисунок 8.12 – Свойства формы

Page 17: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

17

8.3. Возможные причины ошибок

Если в таблице, которая являлась источником данных для формы, будет

переименовано или удалено поле, включенное в форму, то при выводе формы в

соответствующем данному полю окошке будет выводиться строка «#Name?».

Это является примером нарушения целостности базы данных, когда был изме-

нен один элемент базы данных и не изменен связанный с ним другой элемент (в

данном случае – поле таблицы базы данных и базирующийся на нем элемент

экранной формы). Если поле было переименовано, то для соответствующего

элемента формы надо скорректировать свойство «Control Source». Если поле

было удалено из таблицы, то соответствовавший ему элемент надо удалить из

формы.

Все вышесказанное говорит о том, что желательно при первоначальном

проектировании и создании таблиц максимально продумывать проектные ре-

шения и с осторожностью подходить к дальнейшей корректировке структуры

таблиц базы данных.

8.4. Создание отчета с помощью Мастера

Для создания нового отчета, в окне базы данных следует перейти на за-

кладку «Reports», нажать на кнопку «New» и в верхней части появившегося ок-

на (рис. 8.13) выбрать способ создания отчета, а в нижней – указать таблицу

или запрос, данные из которого будут выводиться в отчете. После чего следует

нажать на кнопку «OK».

Page 18: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

18

Рисунок 8.13 – Начальное окно для создания отчета

Так же, как и при создании форм, отчеты лучше создавать, пользуясь од-

ним из Мастеров, а затем, в случае необходимости, произвести желаемую кор-

ректировку формы отчета. Мастерами в данном случае можно считать все воз-

можности, перечисленные в ниспадающем меню, изображенном на рис. 8.13,

кроме позиции «Конструктор».

Простейшим способом создания отчетов является использование т.н. ав-

тоотчетов («AutoReport»). При этом в отчет выводятся все поля выбранного ис-

точника данных (таблицы или запроса). Названием отчета и его заголовком

становится название источника данных. Никакое вмешательство пользователя в

процесс создания документа не предусматривается. Очевидно, такая возмож-

ность приемлема только для простейших, эпизодических отчетов.

Более гибкой возможностью является использование Мастера отчетов

(«Report Wizard»). Именно этот инструмент наиболее часто используется при

Page 19: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

19

первоначальном создании документа. При любом способе создания отчета не-

обходимо выбрать источник данных, на основе которого он будет формиро-

ваться. Им может быть одна или несколько таблиц или запрос (рис. 8.14).

Рисунок 8.14 – Выбор полей, включаемых в отчет

Если выбрать Мастер отчетов, далее система предложит определить поля

(рис. 8.14), которые будут входить в отчет. При выборе полей, входящих в от-

чет, можно использовать либо кнопку с двумя стрелками (в случае, если в отчет

будут входить все или большинство полей), либо переносить поля по одному,

используя кнопку с одной стрелкой. При этом следует обратить внимание на то,

что поля следует переносить не в том порядке, в котором они располагаются в

структуре исходной таблицы, а в том, в котором они будут использоваться в

отчете. И хотя потом, в режиме конструктора можно менять положение тех или

иных элементов в отчете, лучше сразу продумывать эти вопросы.

Page 20: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

20

Предположим, мы хотим на основе таблицы «Accounts» получить список

товаров, проданных каждым из продавцов, и принесенную ими выручку. Ин-

формация сгруппирована по продавцам. Для каждого продавца записи упоря-

дочены по алфавиту по полю «Товар», и далее – по датам продажи.

После определения полей, включаемых в отчет, система предлагает вы-

брать уровни группировки (рис. 8.15). В нашем примере нас устраивает пред-

ложенное поле группировки, и новых уровней группировки вводить не надо. В

общем случае, для выделения уровней группировки надо позиционироваться на

соответствующее поле, которое будет являться полем, по которому произво-

диться группировка, и нажать на кнопку со стрелкой. Если предполагается не-

сколько уровней группировки, то поля должны выбираться в порядке старшин-

ства группировки.

Рисунок 8.15 – Определение уровней группировки

Page 21: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

21

Следующий экран (рис. 8.16) позволяет задать порядок сортировки и, ес-

ли необходимо, вычисление итогов (рис. 8.17). Мы выбрали сортировку по дву-

м полям («Товар» и «Дата продажи») и получение суммарных итогов по полю

«Выручка». Для того, чтобы по каждому продавцу считалась сумма выручки,

необходимо нажать кнопку «Summary Options» и выбрать соответствующую

функцию «Sum».

Рисунок 8.16 – Определение порядка сортировки

Далее можно выбрать желаемый дизайн макета отчета, его стиль, а также

задать имя отчета (рис.8.18 – 8.20) и нажать на кнопку «Finish». В результате

выполненных действий будет сформирован отчет. Он выведется на экран в ре-

жиме предварительного просмотра (рис. 8.21).

Page 22: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

22

Рисунок 8.17 – Задание вычисления итогов

Рисунок 8.18 – Выбор дизайна отчета

Page 23: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

23

Рисунок 8.19 – Выбор стиля отчета

Рисунок 8.20 – Задание имени отчета

Page 24: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

24

Рисунок 8.21 – Первая страница полученного отчета

При создании отчета с использованием Мастера, на одном из последних

шагов система просит задать имя отчета. По умолчанию отчету присваивается

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

нашем случае это была таблица «Accounts»). Однако лучше сразу задать тре-

буемое имя отчета. Следует обратить внимание, что заданное имя выступает в

двух ролях: и имя объекта-отчета, и название документа, выводимое в заголов-

ке отчета. В нашем примере документ будет называться «Seller Proceeds». Та-

кие длинные имена объектам обычно не присваиваются.

Page 25: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

25

Если переименовать отчет после его создания, то его заголовок не изме-

нится. Это можно сделать, например, выделив название отчета в окне базы дан-

ных, после чего нажать правую клавишу мыши, в появившемся меню выбрать

позицию «Rename» и набрать новое имя.

Необходимо обратить внимание на то, что в данном учебном пособии мы

рассматриваем лишь некоторые возможности генератора отчетов как инстру-

ментального средства, но не рассматриваем вопросы проектирования БД. Что-

бы примеры были обозримыми, реальные ситуации чрезвычайно упрощены.

Так, чтобы реально определить выручку, даже если в этот период не проводи-

лось никаких акций, надо проверять, не продан ли данный товар с уценкой, не

имел ли покупатель права на скидку, не продан ли товар в кредит и т.п. Естест-

венно, что и сами таблицы должны быть спроектированы несколько по иному,

чем то, как это сделано в рассматриваемых примерах.

Источниками для отчетов могут служить несколько таблиц. При опреде-

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

лицы и запросы и отбирать нужные поля из них. Если отчет создается без ис-

пользования Мастера, то при необходимости использовать несколько источни-

ков следует сначала создать соответствующий запрос, а затем уже на его основе

формировать отчет.

8.5. Корректировка и сохранение отчета

Полученный отчет может в чем-то не соответствовать Вашим потребно-

стям, например, не устраивают стандартные сообщения, выдаваемые по умол-

чанию, не нужно выводить дату создания отчета, или, наоборот, надо ввести

какие-то дополнительные элементы и т.п. Чтобы скорректировать форму отче-

та, надо перейти в режим Конструктора. Для этого можно в пункте меню

«View» выбрать команду «Design View», либо выбрать соответствующую кноп-

ку на панели инструментов. Возможности Конструктора отчетов весьма много-

Page 26: TextBook 1 - Раздел 8. СОСТАВЛЕНИЕ ЭКРАННЫХ ФОРМ И …gritsunov.ru/Common/Education/Unpublished/Drafts/... · Раздел 8. СОСТАВЛЕНИЕ

26

образны и не рассматриваются в данном пособии. При необходимости читатель

может обратиться к более подробной литературе [1].

Готовый отчет может быть распечатан, либо сохранен в файле. Чтобы за-

помнить содержимое отчета в текстовом файле, можно использовать позиции

меню Tools / Office Links / Publish It with Microsoft Word, либо кнопку «Office-

Links», предназначенную для экспорта данных в MS Word или MS Excel. Мож-

но использовать и другой путь для сохранения содержимого отчета, а именно

использовать позиции меню File / Save As.

Сохранение содержимого отчета в файле следует использовать не только

тогда, когда печать отчета и его формирование по каким-либо причинам разне-

сено во времени, или отчет должен быть передан в электронном виде пользова-

телю, не имеющего доступа к Вашему компьютеру, но и для того, чтобы сохра-

нить отчет в том виде, который соответствовал содержимому базы данных на

момент получения данного отчета. В противном случае, при каждом открытии

отчета системой MS Access, его содержимое будет соответствовать состоянию

БД на момент открытия.

Вопросы и тесты для самоконтроля

1. Что такое экранная форма?

2. Можно ли обойтись без использования экранных форм и почему?

3. Как создать новую форму с помощью Мастера в СУБД MS Access?

4. Как доработать существующую форму с помощью Конструктора?

5. Расскажите, что Вы знаете о многостраничных формах.

6. Какие Вы помните свойства экранных форм?

7. Что такое отчеты и зачем они создаются?

8. Опишите процедуру создания отчета с помощью Мастера MS Access.

9. В чем сходство и различие отчетов MS Access и таблиц MS Excel?

10. Что можно сделать с готовым отчетом?