48780 (588610), страница 5
Текст из файла (страница 5)
• Вызов связанной формы по кнопке. Мастер форм позволяет создать связанные формы, которые не включаются непосредственно в форму. При этом вместо подчиненной формы включается лишь кнопка, представляющая связанную форму, по которой ее можно вызвать.
• Многотабличная форма без подчиненных и связанных форм. Составная многотабличная форма, построенная Мастером, может не включать подчиненных и связанных форм. Такая форма создастся, если необходимо отображать записи подчиненной таблицы, дополненные полями из одной или нескольких главных таблиц. В этом случае источником данных для записей, выводимых в форме, является запись подчиненной таблицы. Форма отображает поля из записи подчиненной таблицы и поля из единственной связанной с ней записи главной таблицы.
При создании формы в окне Новая форма выбирается режим создания Мастер форм и в качестве источника данных основной части формы выбирается таблица или запрос. В открывшемся первый раз диалоговом окне Создание форм последовательно выбираются таблицы и из них — поля, включаемые в форму. В следующем окне Создание форм в области Выберите тип представления данных надо выделить таблицу, которая является источником основной части формы.
Если таблица — источник основной части формы является главной по отношению к другой таблице, выбранной для формы, в окне Создание форм можно выбрать одни из возможных типов подключения формы:
-
для непосредственного включения подчиненной формы надо выбрать Подчиненные формы;
-
для включения кнопки, вызывающей связанную форму, надо выбрать Связанные формы.
Далее можно выбрать вид Ленточная или Табличная для подчиненной или связанной формы.
Если таблица — источник основной части формы является подчиненной по отношению к другой таблице, тоже выбранной для формы, то создаваемая многотабличная форма не будет включать подчиненную форму. Однако эта форма будет содержать поля из главной таблицы. В окне Создание форм автоматически будет установлен тип формы Одиночная форма. Далее предоставляется возможность выбрать вид формы: В один столбец, Ленточный или Табличный.
Далее предоставляется возможность выбрать стиль оформления, который определяет отображение надписей и значений полей в форме. В последнем диалоговом окне Создание форм можно отредактировать заголовки форм.
После нажатия кнопки Готово Мастер завершает создание формы. Сохранение форм производится автоматически. После работы Мастера можно произвести нужную доработку формы в режиме Конструктора. При этом можно перемешать, добавлять, удалять поля, менять их свойства, в том числе шрифт и размеры, подпись поля, текст в заголовке формы.
3.4 Запросы к базе данных
Основы разработки запросов
Запрос позволяет выбрать необходимые данные из одной или нескольких взаимосвязанных таблиц, произвести вычисления и получить результат в виде таблицы. Через запрос можно производить обновление данных в таблицах, добавление и удаление записей. Запрос строится на основе одной или нескольких таблиц базы данных. Кроме того, могут использоваться сохраненные таблицы, полученные в результате выполнения других запросов. Запрос может строиться непосредственно на другом запросе с использованием его временной таблицы с результатами.
В Microsoft Access имеется удобное для пользователя графическое средство формирования запроса по образцу — QBE (Query By Example), с помощью которого легко может быть построен сложный запрос. Запрос QBE включает подсхему данных с используемыми таблицами и бланк запроса. При конструировании запроса достаточно, работая мышью, выделить и перетащить необходимые поля из таблиц, представленных в схеме данных запроса, в бланк запроса и ввести условия отбора записей.
Назначение и виды запросов
Средствами запроса можно:
• выбрать записи, удовлетворяющие условиям отбора;
• включить в результирующую таблицу запроса нужные поля;
• произвести вычисления в каждой из полученных записей;
• сгруппировать записи с одинаковыми значениями в одном или нескольких полях и выполнить над ними групповые функции;
• произвести обновление полей в выбранном подмножестве записей;
• создать новую таблицу базы данных, используя данные из существующих таблиц;
• удалить выбранное подмножество записей из таблицы базы данных;
• добавить выбранное подмножество записей в другую таблицу. Многотабличный запрос позволяет сформировать новую таблицу, записи которой образуются путем объединения взаимосвязанных записей из разных таблиц базы данных и включения нужных полей из этих таблиц.
Последовательное выполнение ряда запросов позволяет решать достаточно сложные задачи, не прибегая к программированию. В Access может быть создано несколько видов запросов.
• Запрос на выборку — выбирает данные из взаимосвязанных таблиц и других запросов. Результатом его является таблица, которая существует до закрытия запроса.
• Запрос на создание таблицы — основам на запросе выборки, но, в отличие от него, результат запроса сохраняется в новой таблице,
• Запросы на обновление, добавление, удаление — это запросы-действия, в результате выполнения которых изменяются данные в таблицах.
Запрос па выборку играет особую роль, так как на его основе строятся запросы другого вида.
Основы конструирования запроса
Основные принципы конструирования запроса заложены в технике конструирования запроса на выборку. Запрос на выборку позволяет достаточно просто выбрать данные из одной или нескольких взаимосвязанных таблиц. Результаты выполнения запроса отображаются в виде таблицы, существующей до ее закрытия. Записи этой таблицы формируются на основе задаваемых и запросе условий отбора записей в исходных таблицах и связей между этими таблицами, имеющимися в схеме данных запроса. Поля, включаемые в записи результата, указываются пользователем в бланке запроса.
Таблица с результатами запроса может применяться при дальнейшей обработке данных. В запросе на выборку могут использоваться не только таблицы базы данных, но и ранее созданные запросы (таблицы, являющиеся результатом их выполнения). При этом нет необходимости сохранять таблицы, получаемые в результате выполнения ранее созданных запросов.
Непосредственное использование в запросе другого запроса невозможно. В этом случае включаемый запрос надо преобразовать в запрос на создание таблицы. Этот запрос отличается от запроса на выборку только сохранением результата запроса как новой таблицы базы данных. Эта таблица далее может использоваться в другом запросе.
Результаты выполнения запроса выводятся в режиме таблицы. Окно запроса в режиме таблицы аналогично окну просмотра таблицы базы данных.
Разработка запроса производится в режиме Конструктора запросов.
Окно запроса
Для создания запроса в окне базы данных надо открыть вкладку Запрос и нажать кнопку Создать. В открывшемся окне Новый запрос выбрать Конструктор.
В окне Добавление таблицы выбрать используемые в запросе таблицы и нажать кнопку Добавить. Затем кнопкой Закрыть выйти из окна Добавление таблицы.
В результате появится окно Конструктора запросов — : запрос на выборку.
Окно Конструктора запросов разделено на две панели:
Верхняя панель содержит схему данных запроса, которая включает выбранные для данного запроса таблицы. Таблицы представлены списками полей. Схема данных отображает связи между таблицами, имеющиеся в схеме данных базы, и связи объединения, которые устанавливает Access, если таблицы имеют поля с одинаковыми именами и типами данных. Кроме того, пользователь сам может установить нужные связи (объединения), перетащив задействованные в связи поля из одного списка полей в другой.
Нижняя панель является бланком запроса по образцу, который нужно заполнить. Каждый столбец бланка относится к одному полю, с которым нужно работать в запросе. Поля могут использоваться для включения их в результат выполнения запроса, для задания сортировки по ним и для задания условий отбора записей.
При заполнении бланка запроса необходимо: в строку Поле включить имена полей, используемых в запросе, в строке Вывод на экран отметить поля, которые должны быть включены в результирующую таблицу, в строке Условие отбора задать условия отбора записей, в строке Сортировка выбрать порядок сортировки записей результата.
Каждый столбец бланка запроса соответствует одному из полей таблиц. Кроме того, здесь может размещаться вычисляемое поле, значение которого вычисляется на основе значений других полей, или итоговое поле, использующее одну из встроенных групповых функций Access. Для включения нужных полей из таблиц в соответствующие столбцы запроса достаточно перетащить нужное поле из списка полей таблицы в схеме данных запроса в первую строку бланка запроса.
Условия отбора записей
Условия отбора записей могут задаваться для одного или нескольких полей в соответствующей строке бланка запроса. Условием отбора является выражение, которое состоит из операторов сравнения и операндов, используемых для сравнения. В качестве операндов выражения могут использоваться некоторые заданные значения и идентификаторы (ссылки). Идентификатор представляет собой ссылку на значение поля, элемента управления или свойства. Идентификаторами могут быть имена полей, таблиц, запросов, форм, отчетов и т. д. Они должны заключаться в квадратные скобки. Если необходимо указать ссылку па поле в конкретной таблице, форме, отчете, то перед именем поля ставится имя таблицы, также заключенное в квадратные скобки и отделенное от имени поля восклицательным знаком. Например: [Имя таблицы]|[Имя поля].
Вычисляемые поля
В запросе над полями могут производиться вычисления. Результат вычисления образует вычисляемое поле в таблице, создаваемой по запросу. При каждом выполнении запроса производится вычисление с использованием текущих значений полей. При вычислениях могут использоваться арифметические выражения и встроенные функции Access.
Выражение вводится в бланк запроса в пустую ячейку строки Поле. В этой ячейке после нажатия клавиши или перевода курсора в другую ячейку формируется имя поля Выражением, где N — целое число, увеличивающееся на единицу для каждого нового создаваемого вычисляемого поля в запросе. Имя вычисляемого поля выводится перед выражением и отделяется от него двоеточием. Например, Выражение1: [Цена]*[Количество], где Цена и Количество — имена полей.
Имя вычисляемого поля «Выражение1» становится заголовком столбца в таблице с результатами выполнения запроса. Это имя можно изменить. Пользователь имеет возможность переименовать вычисляемое поле. Для этого достаточно в бланке запроса вместо Выражение N ввести повое имя.
Параметры запроса
Конкретное значение поля в условии отбора может вводиться непосредственно в бланк запроса или задаваться пользователем при выполнении запроса в диалоговом окне. Чтобы выводилось диалоговое окно для ввода конкретного значения поля в условия отбора, нужно определить параметр запроса. Имя параметра запроса может вводиться непосредственно в условия отбора в квадратных скобках. При выполнении запроса это имя появится в диалоговом окне Введите значение параметра. Если в запрос вводится несколько параметров, то порядок их ввода через диалоговые окна определяется порядком расположения полей с параметрами в бланке запроса.
Мастера создания запросов
Простейшие запросы некоторых видов могут быть созданы с помощью Мастеров Access. Мастер запросов ускоряет процесс создания запроса, автоматически выполняя первоначальные простейшие действия по подготовке запроса. Вызванный Мастер запросов запрашивает у пользователя сведения и создает запрос на основе ответов пользователя. При необходимости можно в режиме Конструктора отредактировать запрос.
Создание запроса с помощью Мастера начинается с выбора в окне базы данных вкладки Запросы и нажатия кнопки Создать. В окне диалога Новый запрос надо выбрать из списка нужный вид запроса. Далее следует выполнять инструкции, выводящиеся в окнах диалога Мастера. В последнем окне диалога предлагается выбрать запуск запроса или просмотр структуры запроса в режиме Конструктора.
С помощью Мастера можно создать:
• простой запрос на выборку;
• запрос для поиска повторяющихся записей;
• запрос для поиска записей, не имеющих подчиненных записей;
• перекрестный запрос.
Заметим, что запрос для поиска повторяющихся записей и запрос для поиска записей, не имеющих подчиненных, являются элементарными запросами на выборку.
3.5. Формирование и вывод отчетов
Средства Access по разработке отчетов предназначены для создания отчета, по которому может быть осуществлен вывод данных из таблиц в виде выходного печатного документа. Эти средства позволяют конструировать отчет сложной структуры, обеспечивающий вывод взаимосвязанных данных из многих таблиц.
При этом могут быть выполнены самые высокие требования к оформлению документа. Перед началом конструирования отчета пользователь должен произвести подготовительную работу, в результате которой нужно определить требуемый макет отчета.
В процессе конструирования определяется состав и содержание разделов отчета, а также размещение в нем выводимых значений из полей таблиц базы данных. Кроме того, оформляются заголовки, подписи реквизитов отчета, определяется размещение вычисляемых реквизитов.
Средства конструирования отчета позволяют группировать данные по нескольким уровням. Для каждого уровня могут производиться вычисления итогов, определяться заголовки и примечания по каждой группировке. При формировании отчета могут производиться разнообразные вычисления.
Отчет может создаваться с помощью Мастера или в режиме Конструктора отчетов. Во многих случаях удобно использовать Мастера. Созданный Мастером отчет можно доработать в режиме Конструктора.