Использование масок ввода
Если форматирование помогает варьировать представление данных в полях таблицы, то такие свойства, как Маска ввода и Условие на значение, предусмотрены, чтобы не допустить в таблице некорректных данных.
Маска позволяет при вводе информации показывать в поле готовый шаблон, в который заносятся данные. Благодаря маскам обеспечивается соответствие введенных данных определенному формату и заданному типу значений. Как правило, маски ввода используются в текстовых, числовых, денежных полях и полях типа Дата/время. Если, например, тип поля задан как текстовый, но в него должны вводиться только цифры (например, телефонные номера), можно оговорить это условие с помощью маски. Кроме того, работать с масками очень удобно: при наличии в поле специального шаблона пользователю не нужно при вводе данных заботиться о соблюдении всех «формальностей», например, указания в нужных позициях пробелов, правильных разделителей, дополнительных символов и т.д.
Часто, особенно у начинающих пользователей, возникает вопрос, чему отдать предпочтение: форматированию или маске ввода? Необходимо уяснить принципиальное отличие этих опций: свойство Формат поля применяется уже после того, как данные введены и сохранены в поле, а свойство Маска ввода действует еще до размещения информации в таблице, регламентируя ввод данных в конкретное поле.
Если для поля определены как формат отображения, так и маска ввода, то при добавлении и редактировании данных программа Access предложит в поле маску ввода, а при выводе данных приоритет будет иметь свойство Формат поля (маска ввода при этом игнорируется).
Указывая и формат и маску ввода для одного и того же поля, убедитесь в том, что они не противоречат друг другу.
Маска ввода может содержать до трех разделов, разделенных точкой с запятой(;).
1-й раздел – непосредственно сама маска ввода (например, "Номер заказа:" 0000). Символы, которые могут быть использованы в маске ввода, указаны в таблице 5.
2-й раздел — здесь указывается, будет ли программа Access сохранять при вводе промежуточные символы в таблице. Значение 0 указывает, что текстовые константы (например, дефисы и скобки в маске ввода телефонных номеров), которые добавляются к символам, вводимым пользователем, сохраняются вместе с данными; значение 1 или пустое значение этого разряда указывает, что сохраняются только сами данные.
3-й раздел — определяет символ, используемый для отображения пустых позиций в маске ввода, куда должны помещаться данные, вводимые пользователем. По умолчанию используется символ подчеркивания (_).
Таблица 6
Символы, используемые для создания масок ввода
Символ |
Описание |
0 |
Цифра (0-9); обязательный символ; знаки "плюс" (+) и "минус" (-) не разрешены |
9 |
Цифра или пробел; необязательный символ; знаки "плюс" (+) и "минус" (-) не разрешена |
# |
Цифра или пробел; необязательный символ; незаполненные позиции отображаются как пробелы при редактировании, но при сохранении данных удаляются; знаки "плюс" (+) и "минус" (-) разрешены |
L |
Буква (А-Я или A-Z); обязательный символ |
? |
Буква (А-Я или A-Z); необязательный символ |
A |
Буква или цифра; обязательный символ |
a |
Буква или цифра; необязательный символ |
& |
Любой символ или пробел; обязательный символ |
C |
Любой символ или пробел; необязательный символ |
. , : ; - / |
Десятичный разделитель; разделители групп разрядов, времени и даты |
> (больше чем) |
Все символы, содержащиеся в этом поле, выводятся на экран прописными буквами |
< (меньше чем) |
Содержимое поля отображается в виде строчных букв |
! |
Заполнение маски ввода справа налево (по умолчанию — слева направо). Этот символ помещается в произвольную позицию в маске ввода |
\ |
Выводит следующий символ как текстовую константу (можно использовать для этих же целей кавычки) |
Пароль |
Все символы, вводимые в это поле, будут сохраняться, но отображаться на экране в виде звездочек (*) |
Маски ввода можно создать двумя способами: с помощью мастера и собственными силами.
Так, например, для поля Телефон таблицы Поставщики может быть вручную создана следующая маска: !\(999\)000\-0000;;_. Тогда при вводе данных в поле появится следующий шаблон-«подсказка»: (___)___-____. Ввод цифр, заключенных в скобки (код города), необязателен, а вот следующие 7 цифр (непосредственно телефонный номер) должны быть указаны. В качестве заполнителя в тех позициях, где вводятся цифры, использован символ подчеркивания. Наличие символа (!) необходимо для того, чтобы программа Access заполняла маску с правого края, иначе при пропуске кода и вводе семизначного телефонного номера (например, 444-4646)в поле высветится значение (444) 464-6.
Создание маски ввода с помощью мастера
Сфера компетенции мастера создания масок ввода ограничена текстовыми полями и полями типа Дата/время. Чтобы воспользоваться услугами мастера, необходимо выполнить следующее.
1. В режиме конструктора щелкнуть (в столбце Имя поля) на том поле таблицы, для которого будет создаваться маска ввода.
2. В области Свойства поля щелкнуть в поле ввода опции Маска ввода. Справа от этой строки появится маленькая кнопка с троеточием (кнопка Построить). Далее щелкнуть на кнопке Построить.
3. На экране появится диалоговое окно Создание масок ввода (рис. 3), где мастер предлагает список возможных масок для поля с учетом его типа.
4. Из списка доступных масок ввода нужно выбрать наиболее подходящую и щелкнуть на ее имени. При желании можно проверить, как она работает, введя пробные данные в поле Проба. Если результат устраивает, то необходимо щелкнуть на кнопке Далее.
Рис.3. Окно мастера создания масок ввода
5. Появится следующее окно мастера, где можно при необходимости отредактировать маску и выбрать из раскрывающегося списка Заполнитель тот символ, который будет использован в позициях шаблона. В этом окне также предусмотрено поле Проба. Когда все коррективы внесены, нужно щелкнуть на кнопке Далее.
6. В заключительном окне мастера щелкнуть на кнопке Готово, чтобы создать маску. Через мгновение она появится в области конструктора (рис. 4).
Рис.4. Маска ввода для поля ДатаВыдачи таблицы Выдача товара