Для отбора конкретной информации из таблицы используется запрос форма макрос конструктор

Обновлено: 26.04.2024

С помощью действия ApplyFilter можно применить к фильтр, запрос или предложению SQL WHERE предложение таблица, форма или отчет для ограничения или сортировки записей в таблице, а также записей из таблицы или запроса формы или отчета. Для отчетов это действие можно использовать только в макрос, заданном свойством события OnOpen отчета.

Примечание: Применить предложение SQL WHERE с помощью этого действия можно только при использовании серверного фильтра. Серверный фильтр нельзя применить к источнику записей хранимой процедуры.

Примечание: Макрокоманда "ПрименитьФильтр" недоступна в веб-приложениях Access.

Настройка

Аргументы макрокоманды ПрименитьФильтр описаны ниже.

Аргумент макрокоманды

Имя фильтра

Имя фильтра или запроса, используемого для отбора или сортировки записей в таблице, форме или отчете. В поле Имя фильтра в разделе Аргументы макрокоманды области "Конструктор макросов" можно указать имя существующего запроса либо фильтра, сохраненного в качестве запроса.

Примечание: Когда эта макрокоманда используется для применения серверного фильтра, аргумент Имя фильтра должен быть пустым.

Условие Where

Действительное предложение SQL WHERE (без слова WHERE) или выражение, выполняющее отбор записей таблицы, формы или отчета.

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

Forms!имя_формы!имя_элемента_управления

Имена полей заключаются в двойные кавычки, а строковые литералы — в одинарные.

Максимальная длина аргумента условия Where составляет 255 знаков. Если нужно указать более длинное предложение SQL WHERE, используйте метод ПрименитьФильтр объекта DoCmd из модуля Visual Basic для приложений (VBA). Длина предложений SQL WHERE в VBA может составлять до 32 768 знаков.

Примечание: Аргумент Имя фильтра можно использовать, если уже определен фильтр, содержащий соответствующие данные. С помощью аргумента условия Where можно непосредственно задать ограничительное условие. При использовании обоих аргументов Access применяет предложение WHERE к результатам фильтрации. Необходимо использовать один или оба этих аргумента.

Замечания

Фильтр или запрос можно применить к форме в представлении формы или режиме таблицы.

Применяемые фильтр и условие WHERE становятся значением свойства Фильтр или ServerFilter формы или отчета.

При работе с таблицами и формами выполнение этой макрокоманды аналогично выбору команды Применить фильтр/Отсортировать или Применить серверный фильтр в меню Записи. Команда меню применяет последний созданный фильтр к таблице или форме, в то время как макрокоманда ПрименитьФильтр применяет указанный фильтр или запрос.

Если в базе данных Access после выполнения макрокоманды Применить фильтр навести указатель мыши на элемент Фильтр в меню Записи и выбрать команду Расширенный фильтр, Окно расширенного фильтра или сортировки отображает условия фильтрации, выбранные с помощью этой макрокоманды.

Чтобы удалить фильтр и отобразить все записи таблицы или формы в базе данных Access, можно воспользоваться макрокомандой ПоказатьВсеЗаписи или командой Удалить фильтр в меню Записи. Чтобы убрать фильтр в проекте Access (ADP), можно вернуться в окно серверный фильтр по форме и удалить все условия фильтрации, а затем выбрать команду Применить серверный фильтр в меню Записи на панели инструментов или задать для свойства ServerFilterByForm значение Ложь (0).

При сохранении таблицы или формы Access сохраняет фильтр, заданный в соответствующем объекте в данный момент, однако не применяет его автоматически в следующий раз при открытии этого объекта (при этом автоматически применяются условия сортировки, которые были применены к объекту на момент его сохранения). Чтобы автоматически применять фильтр при первом открытии формы, задайте макрос с макрокомандой ПрименитьФильтр или процедуру события, содержащую метод ПрименитьФильтр объекта DoCmd в качестве значения свойства события OnOpen формы. Применить фильтр также можно с помощью макрокоманд ОткрытьФорму и ОткрытьОтчет или их соответствующих методов. Чтобы автоматически применять фильтр при первом открытии таблицы, ее можно открывать с помощью макроса, содержащего макрокоманду ОткрытьТаблицу, за которой сразу следует макрокоманда ПрименитьФильтр.

Пример

Применение фильтра с помощью макроса

Следующий макрос содержит набор действий, каждый из которых фильтрует записи для формы списка телефонов клиентов. В нем показано использование действий ApplyFilter,ShowAllRecordsи GoToControl. Кроме того, в нем показано использование условий для определения того, какой в группе параметров был выбран параметр. Каждая строка действия связана с кнопкой-перегной, которая выбирает набор записей, начиная с A, B, C и так далее, или все записи. Этот макрос должен быть присоединен к событию AfterUpdate группы параметров CompanyNameFilter.

Презентация на тему: " Лекция 14. MS Access: запросы, формы, отчеты, макросы. Запрос это объект базы данных, являющийся основным инструментом выборки, обновления и обработки." — Транскрипт:

1 Лекция 14. MS Access: запросы, формы, отчеты, макросы. Запрос это объект базы данных, являющийся основным инструментом выборки, обновления и обработки данных в таблицах базы данных. Запрос на выборку позволяет сформировать пользовательское представление о данных, Не обязательно отвечающее требованиям нормализации. Результат выполнения запроса на выборку это новая, чаще всего временная, таблица, которая существует до закрытия запроса. Структура такой таблицы определяется выбранными из одной или нескольких взаимосвязанных таблиц полями. Записи формируются путем объединения записей таблиц, участвующих в запросе. Способ объединения записей различных таблиц указывается при определении их связи. Условия отбора, сформулированные в запросе, позволяют фильтровать записи, составляющие результат объединения таблиц.

2 Простейшие запросы могут быть созданы с помощью мастера. Любой запрос можно создать в режиме конструктора. Конструктор предоставляет удобное для пользователя диалоговое графическое средство формирования, с помощью которого легко может быть построен сложный запрос. Запрос может получать данные из одной или нескольких таблиц, из существующих запросов или из комбинаций таблиц и запросов, объединяя данные, содержащиеся в них. Таблицы и запросы, объединенные для получения данных, образуют источник записей для запроса. Запрос, построенный на другом запросе, использует его временную таблицу с результатами в качестве источника записей.

5 Назначение и виды запросов Запрос позволяет выбрать необходимые данные из одной или нескольких взаимосвязанных таблиц, произвести вычисления и получить результат в виде виртуальной таблицы. Полученная таблица может использоваться в качестве источника данных в формах, отчетах, других запросах. Через запрос можно производить обновление данных, добавление и удаление записей и таблицах.

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

7 В Access может быть создано несколько видов запроса: -запрос на выборку выбирает данные из взаимосвязанных таблиц базы данных и таблиц запросов. Результатом является таблица, которая существует до закрытия запроса. На основе такого запроса могут строиться за­просы других видов; замечание Таблицу с результатами запроса на выборку можно использовать для работы с данными в таблицах, на которых построен запрос. Например, через таблицу запроса можно корректировать данные в исходных таблицах базы данных. Запросы могут служить источниками записей для форм и отчетов. - запрос на создание таблицы также выбирает данные из взаимосвязанных таблиц и других запросов, но в отличие от запроса на выборку результат сохраняется в новой постоянной таблице базы данных;

8 -запросы на обновление, добавление, удаление являются запросами, в результате выполнения которых изменяются данные в таблицах. Для создания запроса может быть использован либо режим конструктора, либо мастер. Если пользователь знаком с созданием инструкций SQL (таких как SELECT, UPDATE или DELET, включающих предложения, например WHERE, ORDER BY или GROUP BY), можно создать запрос в режиме SQL.

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

10 Групповые операции в запросах. Назначение групповых операций Групповые операции позволяют выделить группы записей с одинаковыми значениями в указанных полях и использовать для этих групп одну из статистических функций. В Access предусматривается девять статистических функций: Sum сумма значений некоторого поля для группы; Avg среднее от всех значений поля в группе; Max, Min максимальное, минимальное значение поля в группе; Count число значений поля в группе без учета пустых значений; StDev – среднеквадратичное отклонение от среднего значения поля в группе. Var -дисперсия значений поля в группе; First, Last значение поля из первой или последней записи в группе. Результат запроса с использованием групповых операций содержит по одной записи для каждой группы.

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

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

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

15 Форма состоит из элементов управления, которые отображают поля таблиц, и графические элементы, не связанные с полями таблиц. Графические элементы управления предназначены, прежде всего, для разработки макета формы: надписей, внедряемых объектов (рисунков, диаграмм), вычисляемых полей, кнопок, выполняющих печать, открывающих другие объекты или задачи. Как форма в целом, так и каждый из ее элементов обладает множеством свойств. Посредством их изменения можно настроить внешний вид, размер, местоположение элементов в форме, определить источник данных формы, режим ввода/вывода, привязать к элементу выражение, макрос или программу. Набор свойств доступен в соответствующем окне, где они разбиты на категории, каждая из которых представлена на своей вкладке. Основными вкладками в окне свойств являются:

16 Макет представляет свойства, ориентированные на определение внешнего вида формы или ее элементов; Данные представляет свойства для определения источника данных формы или ее элементов, режима использования формы (только разрешение на изменение, добавление, удаление и т. п.); События событиями называют определенные действия, возникающие при работе с конкретным объектом или элементом: нажатие кнопки мыши, изменение данных, до обновления, после обновления, открытие или закрытие формы и т. д. Они могут быть инициированы пользователем или системой. С событием может связываться макрос или процедура обработки события на языке VBA, выполняющая некоторые действия или рассчитывающая значения. Например, в процедуре можно организовать открытие связанной формы, обновление данных таблицы расчетными значениями, печать формы, вывод отчета. Запрограммировав в процедурах вызов различных объектов базы данных, можно автоматизировать выполнение задач приложения.

17 Для быстрого создания формы предназначены мастера Access. Однако точное формирование макета формы, отвечающего заданным требованиям дополнение процедурами обработки событий, возникающих в форме, обеспечивается средствами конструирования. Конструктор форм можно пользовать как для создания новой формы, так и для редактирования формы, созданной мастером. Кроме того, в Access 2007 включены новые функциональные возможности, позволяющие выполнить доработку форм в режиме макета. В процессе создания формы выбираются поля таблицы, которые должны быть представлены в форме, осуществляется их размещение в форме, создаются вычисляемые поля, графические элементы кнопки, выключатели, элементы оформления, поясняющий текст и рисунки. Для настройки различных элементов формы используется типовой набор их свойств.

19 Этапы создания интерфейса в Access

20 Отчеты. Новые средства Access 2007 позволяют создать профессионально оформленные отчеты не только с помощью мастера или конструктора, но и в режиме макета. При этом простыми средствами перетаскивания в отчет нужных полей из таблиц базы данных строится запрос источник записей отчета, а использование свойств WYSIWYG позволяет сразу видеть, как именно будут выглядеть содержащиеся в нем данные на странице, и усовершенствовать макет. Чтобы правильно создавать отчеты, необходимо понимать назначение каждого его раздела. Например, от выбора раздела, в который будет помещен вычисляемый элемент управления, зависит способ вычисления результата. Создание и изменение макета отчета осуществляется в расчете на структуру отчета.

21 Назначение каждого из разделов: -Заголовок отчета обычно включает эмблему компании, название отчета, дату. Заголовок отображается перед верхним колонтитулом только один раз в начале отчета; -Верхний колонтитул отображается вверху каждой страницы и исполь­зуется в случае, когда нужно, чтобы название отчета и другая общая ин­формация повторялись на каждой странице; -Заголовок группы (Report Headler) используется при группировке запи­сей отчета для вывода названия группы и однократного отображения по­лей, по которым производится группировка. Отображается перед каждой новой группой записей. Например, если отчет сгруппирован по покупателям, в заголовке группы можно указать название покупателя, а также адрес, телефон и другие реквизиты. Допускается до 10 уровней группировки выводимых записей; -Область данных (Detail) отображает записи из источника данных, со­ставляющие основное содержание отчета;

22 -Примечание группы (Footer) используется для отображения итогов и другой сводной информации по группе в конце каждой группы записей. Если поместить в примечание группы вычисляемый элемент управления, использующий статистическую функцию Sum, сумма будет рассчитываться для текущей группы; -Нижний колонтитул применяется для нумерации страниц и отображе­ния другой информации внизу каждой страницы; -Примечание отчета служит для отображения итогов и другой сводной информации по всему отчету один раз в конце отчета. Если в примечании отчета поместить вычисляемый элемент управления, использующий статистическую функцию Sum, сумма рассчитывается для всего отчета.

23 В Access существуют два представления, в которых можно вносить изменения в отчет: режим макета и режим конструктора. Режим макета является наиболее удобным для внесения изменений в отчет, поскольку пользователь сразу видит данные отчета. В этом режиме предусмотрено большинство инструментов, необходимых для его настройки. В нем можно изменить шрифт столбцов, поменять их местами, добавить или изменить уровни группировки и итоги. Можно также разместить в макете отчета новые поля, а также задавать свойства отчета и элементов управления.

25 Макросы. Макрос – программа, состоящая из последовательности макрокоманд (макрос от слова "макрокоманда"). Макрокоманда это инструкция, ориентированная на выполнение определенного действия над объектами Access и их элементами. Например, макрокомандой можно открыть форму, отчет, напечатать отчет, запустить на выполнение запрос, применить фильтр, присвоить значение, создать свое меню. Макрокоманда ВыполнитьКоманду (RunCommand) позволяет выполнить любую встроенную команду Access, которые выводятся на вкладках ленты или в контекстном меню. Имеющийся в Access набор макрокоманд (более 50) реализует практически любые действия, которые необходимы для решения задачи. Язык макросов обеспечивает возможность выполнения большинства задач, не прибегая к программированию на VBA. Макросы предоставляют пользователю средства решения задач, не требующие знания детального программирования. Язык макросов является языком более высокого уровня, чем VBA.

26 Макрос может быть наряду с другими объектами представлен как отдельный объект (изолированный макрос), который отображается в области переходов в группе Макросы (Macros). В Access 2007 макрос может быть внедрен в любые события в форме, отчете или элементе управления (внедренный макрос). При этом он не отображается как объект в группе Макросы (Macros), а становится компонентом формы, отчета. Макросы могут запускаться на выполнение прямо из области переходов. Возможно решение задач с помощью ряда взаимосвязанных макросов, первый из которых будет запускаться на выполнение из области переходов. Пользователь запускает главный макрос на выполнение и далее все управление выполнением задачи осуществляется изнутри макроса. Макрос сам открывает нужные объекты, выбирает и обрабатывает данные, вызывает другие макросы, следуя алгоритму, приводящему к решению задачи. При необходимости из макроса может быть инициирован диалог с пользователем. Для перехода по различным ветвям макроса в строке макрокоманды используется условие.

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

29 Конструирование макроса Создание макросов осуществляется в диалоговом режиме и сводится к записи в окне макроса последовательности макрокоманд, для которых задаются аргументы. Каждому макросу присваивается имя. При выполнении макроса макрокоманды выполняются последовательно в порядке их расположения. При этом используются объекты или данные, указанные в аргументах макрокоманд. Имеется возможность изменить порядок выполнения макрокоманд, определяя условия их выполнения. Выполнение макросов инициируется простой операцией и может сводиться к его открытию, как это делается и для других объектов базы данных. Помимо этого, Access предоставляет возможность автоматически инициировать выполнение макроса при наступлении некоторого события. Для связи макроса с событием достаточно в окне свойств объекта или его элемента управления внести в строку этого события имя макроса или создать внедренный макрос. События, с которыми можно связать макрос, определяются в свойствах форм и отчетов и их элементов управления.


8 чел. помогло.

Запрос — это объект базы данных, являющийся основным инструментом выборки, обновления и обработки данных в таблицах базы данных. Запрос на выборку позволяет сформировать пользовательское представление о данных, Не обязательно отвечающее требованиям нормализации. Результат выполнения запроса на выборку — это новая, чаще всего временная, таблица, которая существует до закрытия запроса. Структура такой таблицы определяется выбранными из одной или нескольких взаимосвязанных таблиц полями. Записи формируются путем объединения записей таблиц, участвующих в запросе. Способ объединения записей различных таблиц указывается при определении их связи. Условия отбора, сформулированные в запросе, позволяют фильтровать записи, составляющие результат объединения таблиц. Простейшие запросы могут быть созданы с помощью мастера. Любой запрос можно создать в режиме конструктора. Конструктор предоставляет удобное для пользователя диалоговое графическое средство формирования, с помощью которого легко может быть построен сложный запрос.

Запрос может получать данные из одной или нескольких таблиц, из существующих запросов или из комбинаций таблиц и запросов, объединяя данные, содержащиеся в них. Таблицы и запросы, объединенные для получения данных, образуют источник записей для запроса. Запрос, построенный на другом запросе, использует его временную таблицу с результатами в качестве источника записей.

^ Назначение и виды запросов

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

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

-сформировать на основе объединения записей взаимосвязанных таблиц новую виртуальную таблицу;

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

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

-произвести вычисления в каждой из полученных записей;

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

-добавить в результирующую таблицу запроса строку итогов;

-произвести обновление полей в выбранном подмножестве записей;

-создать новую таблицу базы данных, используя данные из существующих таблиц;

В Access может быть создано несколько видов запроса:

-запрос на выборку — выбирает данные из взаимосвязанных таблиц базы данных и таблиц запросов. Результатом является таблица, которая суще­ствует до закрытия запроса. На основе такого запроса могут строиться за­просы других видов;

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

- запрос на создание таблицы — также выбирает данные из взаимосвязан­ных таблиц и других запросов, но в отличие от запроса на выборку ре­зультат сохраняется в новой постоянной таблице базы данных;

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

Для создания запроса может быть использован либо режим конструктора, либо мастер. Если пользователь знаком с созданием инструкций SQL (таких как SELECT, UPDATE или DELET, включающих предложения, например WHERE, ORDER BY или GROUP BY), можно создать запрос в режиме SQL.

^ Вычисляемые поля

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

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

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

^ Групповые операции в запросах Назначение групповых операций

Групповые операции позволяют выделить группы записей с одинаковыми значениями в указанных полях и использовать для этих групп одну из сташ стических функций. В Access предусматривается девять статистических функций:

Sum — сумма значений некоторого поля для группы;

Avg — среднее от всех значений поля в группе;

Max, Min — максимальное, минимальное значение поля в группе;

Count — число значений поля в группе без учета пустых значений;

StDev – среднеквадратичное отклонение от среднего значения поля в группе.

Var -дисперсия значений поля в группе;

First, Last — значение поля из первой или последней записи в группе.

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

^ Многотабличные запросы

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

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

При проектировании и конструировании запроса важнейшим условием является правильное представление о том, как идет объединение записей таблиц при формировании результата.

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

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

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

Как форма в целом, так и каждый из ее элементов обладает множеством свойств. Посредством их изменения можно настроить внешний вид, размер, местоположение элементов в форме, определить источник данных формы, режим ввода/вывода, привязать к элементу выражение, макрос или программу. Набор свойств доступен в соответствующем окне, где они разбиты на категории, каждая из которых представлена на своей вкладке. Основными вкладками в окне свойств являются:

Макет — представляет свойства, ориентированные на определение внешнего вида формы или ее элементов;

Данные— представляет свойства для определения источника данных формы или ее элементов, режима использования формы (только разрешение на изменение, добавление, удаление и т. п.);

События — событиями называют определенные действия, возникающие при работе с конкретным объектом или элементом: нажатие кнопки мыши, изменение данных, до обновления, после обновления, открытие или закрытие формы и т. д. Они могут быть инициированы пользователем! или системой. С событием может связываться макрос или процедура обработки события на языке VBA, выполняющая некоторые действия или рассчитывающая значения. Например, в процедуре можно организовать открытие связанной формы, обновление данных таблицы расчетными значениями, печать формы, вывод отчета. Запрограммировав в процедурах вызов различных объектов базы данных, можно автоматизировать выполнение задач приложения.

Для быстрого создания формы предназначены мастера Access. Однако точное формирование макета формы, отвечающего заданным требованиям дополнение процедурами обработки событий, возникающих в форме, обеспечивается средствами конструирования. Конструктор форм можно пользовать как для создания новой формы, так и для редактирования формы, созданной мастером. Кроме того, в Access 2007 включены новые функциональные возможности, позволяющие выполнить доработку форм в режиме макета.

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

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

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

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

^ Этапы создания интерфейса в Access


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

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

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

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

Новые средства Access 2007 позволяют создать профессионально оформленные отчеты не только с помощью мастера или конструктора, но и в режиме макета. При этом простыми средствами перетаскивания в отчет нужных полей из таблиц базы данных строится запрос — источник записей отчета, а использование свойств WYSIWYG позволяет сразу видеть, как именно будут выглядеть содержащиеся в нем данные на странице, и усовершенствовать макет.

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

Назначение каждого из разделов:

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

-Верхний колонтитул отображается вверху каждой страницы и исполь­зуется в случае, когда нужно, чтобы название отчета и другая общая ин­формация повторялись на каждой странице;

-Заголовок группы (Report Headler) используется при группировке запи­сей отчета для вывода названия группы и однократного отображения по­лей, по которым производится группировка. Отображается перед каждой новой группой записей. Например, если отчет сгруппирован по покупателям, в заголовке группы можно указать название покупателя, а также адрес, телефон и другие реквизиты. Допускается до 10 уровней группировки выводимых записей;

-Область данных (Detail) отображает записи из источника данных, со­ставляющие основное содержание отчета;

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

-Нижний колонтитул применяется для нумерации страниц и отображе­ния другой информации внизу каждой страницы;

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

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

Макрос – программа, состоящая из последовательности макрокоманд (макрос от слова "макрокоманда"). Макрокоманда — это инструкция, ориентированная на выполнение определенного действия над объектами Access и их элементами.

Например, макрокомандой можно открыть форму, отчет, напечатать отчет, запустить на выполнение запрос, применить фильтр, присвоить значение, создать свое меню. Макрокоманда ВыполнитьКоманду (RunCommand) позволяет выполнить любую встроенную команду Access, которые выводятся на вкладках ленты или в контекстном меню. Имеющийся в Access набор макрокоманд (более 50) реализует практически любые действия, которые необходимы для решения задачи.

Язык макросов обеспечивает возможность выполнения большинства задач, не прибегая к программированию на VBA. Макросы предоставляют пользователю средства решения задач, не требующие знания детального программирования. Язык макросов является языком более высокого уровня, чем VBA.

Макрос может быть наряду с другими объектами представлен как отдельный объект (изолированный макрос), который отображается в области переходов в группе Макросы (Macros). В Access 2007 макрос может быть внедрен в любые события в форме, отчете или элементе управления (внедренный макрос). При этом он не отображается как объект в группе Макросы (Macros), а становится компонентом формы, отчета.

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

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

^ Конструирование макроса

Создание макросов осуществляется в диалоговом режиме и сводится к записи в окне макроса последовательности макрокоманд, для которых задаются аргументы. Каждому макросу присваивается имя. При выполнении макроса макрокоманды выполняются последовательно в порядке их расположения. При этом используются объекты или данные, указанные в аргументах макрокоманд. Имеется возможность изменить порядок выполнения макрокоманд, определяя условия их выполнения.

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

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

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

Строки таблицы называются записями. Все записи таблицы имеют одинаковую структуру - они состоят из полей (элементов данных), в которых хранятся атрибуты объекта (рис. 1). Каждое поле записи содержит одну характеристику объекта и представляет собой заданный тип данных (например, текстовая строка, число, дата). Для идентификации записей используется первичный ключ. Первичным ключом называется набор полей таблицы, комбинация значений которых однозначно определяет каждую запись в таблице.

Для работы с данными используются системы управления базами данных (СУБД). Основные функции СУБД:

- определение данных (описание структуры баз данных);

Разработка структуры БД - важнейшая задача, решаемая при проектировании БД. Структура БД (набор, форма и связи ее таблиц) - это одно из основных проектных решений при создании приложений с использованием БД. Созданная разработчиком структура БД описывается на языке определения данных СУБД.

Любая СУБД позволяет выполнять следующие операции с данными:

- добавление записей в таблицы;

- удаление записей из таблицы;

- обновление значений некоторых полей в одной или нескольких записях в таблицах БД;

- поиск одной или нескольких записей, удовлетворяющих заданному условию.

Для выполнения этих операций применяется механизм запросов. Результатом выполнения запросов является либо отобранное по определенным критериям множество записей, либо изменения в таблицах. Запросы к базе формируются на специально созданном для этого языке, который так и называется «язык структурированных запросов» (SQL - Structured Query Language).

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

Microsoft Access и объектов базы данных

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

В Microsoft Access база данных включает в себя все объекты, связанные с хранимыми данными. Ниже приведен список основных объектов базы данных Access.

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

2. Запрос. Объект, который позволяет пользователю получить нужные данные из одной или нескольких таблиц. Для создания запроса можно использовать бланк QBE (запрос по образцу) или инструкции SQL (структурированный язык запросов). Можно создать запросы на выборку, обновление, удаление или добавление данных. С помощью запросов можно также создавать новые таблицы, используя данные из одной или нескольких существующих таблиц.

3. Форма. Объект, предназначенный в основном для ввода данных, отображения их на экране или управления работой приложения. Формы можно также распечатать.

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

5. Макрос. Объект, представляющий собой структурированное описание одного или нескольких действий, которые должен выполнить Access в ответ на определенное событие.

6. Модуль. Объект, содержащий программы, написанные на языке Visual Basic для приложений.

Событие – любое изменение состояния объекта Microsoft Access. Например, событием является открытие формы, закрытие формы, ввод новой строки в форму, изменение содержимого текущей записи или элемента управления (объекта формы или отчета, который может содержать данные). Для обработки события вы можете создать макрос или процедуру Visual Basic для приложений.

Таблица в программе Microsoft Access. Понятие поля, понятие записи. Приемы работы с таблицей в режиме таблицы и в режиме конструктора. Ввод данных в таблицу. Поиск нужной информации в базе данных. Сортировка и фильтрация записей.

К основным объектам ACCESS относятся: таблицы, запросы, формы, отчеты, макросы и модули.

Таблица – это объект, который определяется и используется для хранения данных. Каждая таблица включает информацию об объекте определенного типа. Таблица содержит поля (столбцы) и записи (строки). Работать с таблицей можно в двух основных режимах: в режиме конструктора и в режиме таблицы.

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

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

Запрос – это объект, который позволяет пользователю получить нужные данные из одной или нескольких таблиц. Запрос – это вопрос, который пользователь задает ACCESS о хранящейся в базе данных информации.

Запросы можно создавать самостоятельно и с помощью мастеров. В ACCESS можно создавать следующие типы запросов:

- запрос на выборку;

- запрос с параметрами;

- запрос на изменение (запрос на удаление, обновление и добавление записей на создание таблицы);

- запросы на объединение, запросы к серверу, управляющие запросы, подчиненные запросы.

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

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

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

В форму могут быть внедрены рисунки, диаграммы, аудио (звук) и видео (изображение).

Режимы работы с формой:

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

- режим конструктора форм необходим, если необходимо изменить определение формы (структуру или шаблон формы), а не представленные в ней данные;

- режим таблицы позволяет увидеть таблицу, включающую все поля формы;

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

Режимы работы с отчетом:

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

- режим конструктора предназначен для изменения шаблона (структуры отчета).

Макрос – это объект, представляющий собой структурированное описание одного или нескольких действий, которые должен выполнить ACCESS в ответ на определенное событие.

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

Работа с формами и отчетами существенно облегчается за счет использования макрокоманд. В MS ACCESS имеется свыше 40 макрокоманд, которые можно включать в макросы. Макрокоманды выполняют такие действия, как открытие таблиц и форм, выполнение запросов, запуск других макросов, выбор опций из меню и т.д. Макрокоманды позволяют нажатием одной (иди нескольких) кнопки выполнять комплекс действий, который часто приходится выполнять в течение работы.

Модуль – объект, содержащий программы на MS ACCESS BASIC, которые позволяют разбить процесс на более мелкие действия и обнаружить те ошибки, которые невозможно было бы найти с использованием макросов.

Читайте также: