5.3.6. Другие полезные функции
1. IsNull(выражение) — возвращает True, если <выражение> имеет значение Null; в противном случае функция возвращает значение False. Например, значение IsNull([Стипендия]![Сентябрь]) равно True, если текущее значение поля пусто (данный студент не получает стипендию), и False в противном случае.
2. IIF(условие; выражение1; выражение2) — возвращает значение <выражение1>, если условие равно True и <выражение2>, если условие равно False. Например, IIF([Пол]="м"; "студент"; "студентка") имеет значение «студент», если в поле Пол содержится буква "м", и значение «студентка» — в противном случае.
3. Nz(выражение[; представление]) — возвращает 0 (нуль), пустую строку ("") или другое указанное в аргументе <представление> значение, если <выражение> имеет значение Null. Например, Nz(([Стипендия]! [Сентябрь];"нет") возвращает значение стипендии студента за сентябрь, если он в сентябре получал стипендию, или слово «нет» в противном случае. Аргумент <представление> необязателен. Если он отсутствует, то функция Nz возвращает нуль или пустую строку в зависимости от контекста, требующего числовое или текстовое значение.
5.4. Построитель выражений
При создании выражений для таблиц, запросов и других объектов Access следует использовать построитель выражений. Для вызова построителя нужно сначала щелкнуть по ячейке, в которую будет вводиться выражение, а затем по кнопке Построить на панели инструментов или правой кнопкой мыши по раскрывающемуся списку ячейки (см. рис.5.1). На экране появится окно Построитель выражений (см. рис. 5.2), содержащее четыре поля.
Рис.5.1. Вызов окна Построителя выражений
Рис.5.2. Окно Построителя выражений
В верхнем поле располагается создаваемое выражение, а три нижних используются для выбора нужных элементов. Для выбора любого элемента в этих полях нужно сделать двойной щелчок по соответствующему имени. Левое поле отображает иерархию папок, содержащих основные типы компонентов выражений. После выбора элемента (папки) из левого поля в среднем поле будет выведен либо список его элементов (поля таблицы или запроса), либо список подтипов (элементы управления формы, категории функций и т.п.). При выборе подтипа в правом поле появится список его элементов (поля, функции, свойства элементов управления).
Чтобы ввести в формируемое выражение ссылку на имя поля таблицы или запроса, нужно выбрать в левом поле таблицу или запрос, а затем в среднем поле нужное поле.
Для ввода функции следует выбрать в левом поле папку Функции, а затем Встроенные функции. В среднем поле нужно выбрать категорию или вариант < Все >, а затем, прокрутив список в правом поле, — нужную функцию.
Для ввода оператора (+, >, And и др.) щелкните по соответствующей кнопке в окне построителя. Если требуемого оператора на кнопках нет, следует открыть в левом поле папку Операторы. Затем в среднем поле выбрать категорию или вариант <Все>, а в правом поле — нужный оператор.
Например, на рисунке 5.3 представлено выражение, вычисляющее сумму стипендий за Сентябрь и Октябрь.
Рис. 5.3.
Однако это выражение не будет давать правильный результат в ситуации, когда студент в одном из месяцев не получал стипендию. Поэтому более корректная форма его записи должна иметь следующий вид:
Nz([Стипендия]![Сентябрь]) + Nz([Стипендия]![Октябрь])
Access часто вставляет в создаваемое выражение вместе с выбранным элементом один или несколько прототипов, заключенных в кавычки («выражение», «number» и т.п). В этом случае нужно либо ввести вместо прототипа соответствующее значение, либо выделить прототип и заменить его элементом из правого списка, либо просто удалить его.
Для вставки элемента в выражение можно использовать кнопку Вставить. Чтобы отменить ошибочный ввод, нужно щелкнуть по кнопке Назад. Создание выражения завершается нажатием кнопки ОК.
Глава 6. Формы
Формы предназначены для просмотра, ввода, редактирования и управления данными. При использовании формы Access предоставляет пользователю существенно больше возможностей для работы с информацией, по сравнению с ее стандартным представлением в режиме таблицы. Удобство применения форм для работы с данными заключается в следующем:
– Формы обычно позволяют отобразить на экране всю запись целиком, причем порядок следования полей может быть изменен, а часть из них вообще не включена в форму.
– В формах кроме редактируемых полей, содержащих данные из таблиц БД, можно размещать и нередактируемые (вычисляемые) поля.
– В формы можно добавлять комментарии, рисунки, графики, изменять их внешний вид, подбирая подходящие шрифты, фон и стиль оформления. Это позволяет в случае необходимости разработать форму, имеющую большое сходство с бумажной формой.
– Формы позволяют существенно упростить, а зачастую полностью автоматизировать ввод новых данных.
– В формах можно размещать различные кнопки (кнопочные формы), нажатие на которые приводит к открытию других форм, выполнению запросов, печати отчетов и т. д.
– Формы могут использоваться в качестве диалоговых окон и содержать собственное меню пользователя.
Для разработки форм в Access существует специальный инструментарий. Прежде чем приступать к описанию процедур создания форм, обсудим несколько общих моментов.
6.1. Создание формы
Основным источником данных для формы являются таблицы и запросы. Информация может быть также включена в форму в результате импорта различных объектов либо проведения вычислений. Если через форму осуществляется обновление данных, то они обновляются и в источнике.
Построение формы — итеративный процесс. После создания макета формы нужно просмотреть его, чтобы убедиться в его пригодности. Если необходимо внести изменения, можно вернуться к корректировке макета.
Для создания макета формы нужно в окне БД перейти на вкладку Создание в раздел Формы. Access 2007 предлагает широчайшие возможности для создания форм (см. рис 1): автоматическое создание формы по определенной таблице, мастер форм, конструктор форм, пустая форма, разделенная форма( содержит и форму, и таблицу ниже). (см. рис.6.1).
Рис.6.1. Варианты создания форм
После выбора источника данных для формы, а также способа ее создания, при переходе к следующему этапу автоматически обновляются панели инструментов. Например, в режиме Конструктора панель инструментов такая:
Рис.2. Окно Конструктора форм
Создание, корректировка и просмотр формы осуществляется в различных режимах:
• в режиме конструктора форма создается и корректируется;
• в режиме формы или режиме таблицы форма используется для работы с данными;
• в режиме предварительного просмотра форма просматривается перед печатью.
6.2. Структура формы
Форма состоит из нескольких разделов (см. рис.6.3), причем обязательным является только один из них — область данных. Кроме этого раздела в форме могут присутствовать следующие разделы: заголовок и примечание формы, а также верхний и нижний колонтитулы. Информация в них вводится разработчиком формы.
Рис.6.3. Структура формы
Эти разделы имеют следующие назначения:
Заголовок формы может содержать название формы, инструкции по работе с ней, а также другую информацию (текущую дату, время и т.д.). В режиме формы он находится в верхней части экрана, а при печати — в верхней части первой страницы. В режиме таблицы этот раздел не отображается.