Справочное руководство по TDMS 5.0 API
FormAttributeChange Event
Смотри также  Послать замечания
pForm
Форма ввода, атрибуты которой редактируются.
pObject
Объект, которому принадлежит форма ввода. Если форма открыта методом ThisApplication.InputForms("FRM_ID").Show, значение аргумента pObject = Nothing.
pAttribute
Ссылка на атрибут, значение которого было изменено.
bCancel
TRUE - отменить изменение значения атрибута.
pOldAttribute
Предыдущее значение атрибута (до наступления события).
TDMSApplication Объект : FormAttributeChange Event

Glossary Item Box

Описание

Генерируется после каждого изменения значения атрибута формы ввода при переключении фокуса ввода на другой элемент.

Определение

Visual Basic
Public Event FormAttributeChange( _
   ByVal pForm As TDMSInputForm, _
   ByVal pObject As TDMSObject, _
   ByVal pAttribute As TDMSAttribute, _
   ByRef bCancel As Boolean, _
   ByVal pOldAttribute As TDMSAttribute _
)

Параметры

pForm
Форма ввода, атрибуты которой редактируются.
pObject
Объект, которому принадлежит форма ввода. Если форма открыта методом ThisApplication.InputForms("FRM_ID").Show, значение аргумента pObject = Nothing.
pAttribute
Ссылка на атрибут, значение которого было изменено.
bCancel
TRUE - отменить изменение значения атрибута.
pOldAttribute
Предыдущее значение атрибута (до наступления события).

Заметки

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

2. Событие является отменяемым: если параметру bCancel присвоено значение TRUE, любое изменение значения атрибута будет немедленно отменено при потере фокуса ввода элементом формы. Т.е. при переходе в любое другое поле предыдущее значение измененного атрибута будет тут же восстановлено.

3. Обработчик может быть размещен в скриптах формы ввода, профиля и/или общесистемном (см. рисунок). Если обработчики определены на всех уровнях, то последовательность их вызова такова:

  • скрипт формы ввода;
  • скрипт профиля пользователя;
  • общесистемный скрипт.

Если на каком-либо уровне событие было отменено (параметру bCancel присвоено значение TRUE), то обработчики события, размещенные на последующих уровнях, вызваны не будут.

4. Схему последовательности генерации событий при редактировании атрибутов объекта в окне свойств см. на рисунке.

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

Включение генерации объектных событий

Пример

Смотри также

© 2016 CSoft Development. Все права защищены.