Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Контроль с помощью элементов управления

Поиск

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

 

 

Блокировка полей

В БД почти все порции информации — объекты для изменения. Но это не означает, что сле­дует всем предоставить свободный доступ ко всем полям.

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

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

У любого присоединенного элемента управления (элемента, отображающего поле вашей таблицы) есть два свойства, которые можно применять для контроля редактирования. Эти свойства можно изменять в Окне свойств в режиме Конструктор.

Блокировка (Locked) определяет, можно ли изменять поле. Если у свойства значение Да, нельзя редактировать значение поля. Но при этом можно выделить содержимое поля и скопировать его.

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

 

 

Подсказка

Если вы хотите запретить любые варианты редактирования, рассмотрите возможность приме­нения свойств формы Разрешить изменение (Allow Edits), Разрешить удаление (Allow Deletions) и Разрешить добавление (Allow Additions), описанных в табл. 12.2.


Предупреждение ошибок с помощью условий на значения

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

Но в некоторых ситуациях условия на значения не помогут, поскольку они применяются не всегда, а время от времени. Вы вряд ли захотите, чтобы продавцы в Boutique Fudge вво­дили новый заказ со старой датой. Ясно, что это ошибка — у нового заказа должна быть те­кущая дата. Для выявления и устранения этой проблемы умный разработчик, вроде вас, может использовать следующее условие на значение в поле OrderDate:

<=Date ()

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

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

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

Условие на значение (Validation Rule) задает выражение, которому должно удовлетворять значение для того, чтобы считаться допустимым. Например, выражение <=Date ()
сравнивает текущее значение поля с датой, возвращаемой функцией Date () (которая представляет текущую дату). Ввод разрешается, только если вводимая дата сегодняшняя или предшествующая. Гораздо больше примеров выражений для проверки значений можно найти в разд. "Запись условия на значение поля" главы 4.

Сообщение об ошибке (Validation Text) задает текст сообщения об ошибке, которое выводится, если вы пытаетесь ввести значение, нарушающее условие на значение. Этот пользовательский текст заменяет общее сообщение об ошибке программы Access — "Для введенного значения не выполняется условие на значение данного поля или элемента управления" — в котором для реальных пользователей мало смысла.

Маска ввода (Input Mask) задает образец, который направляет и ограничивает пользовательский ввод. Маски ввода — хороший способ обработки текстовых значений фиксированной длины, например, телефонных номеров, почтовых кодов и номеров социального обеспечения. В разд. "Маски ввода" главы 4 приведена подробная информация о том, как действуют и создаются маски ввода.

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


Примечание


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

 

 



Поделиться:


Последнее изменение этой страницы: 2016-08-14; просмотров: 131; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.110.5 (0.006 с.)