Справочное руководство по TDMS 7.0 API
ObjectBeforeCreate Событие
Смотри также  Пример  Отправить замечание
pObject
Создаваемый объект.
pParentObject
Объект, в составе которого создается новый объект.
bCancel
TRUE - отменить создание нового объекта.
TDMSApplication Объект : ObjectBeforeCreate Событие

Glossary Item Box

Описание

Генерируется перед созданием нового пользовательского объекта.

Опеделение

Visual Basic
Public Event ObjectBeforeCreate( _
   ByVal pObject As TDMSObject, _
   ByVal pParentObject As TDMSObject, _
   ByRef bCancel As Boolean _
)

Параметры

pObject
Создаваемый объект.
pParentObject
Объект, в составе которого создается новый объект.
bCancel
TRUE - отменить создание нового объекта.

Заметки

1. Событие является отменяемым: если параметру bCancel присвоено значение TRUE, создание нового пользовательского объекта будет отменено. Фактически это означает, что новая запись в базе данных (которая уже существует к настоящему моменту) будет удалена.

2. Событие генерируется при создании объекта через интерфейс:

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

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

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

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

при создании объекта в составе другого объекта см. на рисунке 2

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

Пример

VB Script (Visual Basic)Скопировать код
'======================================================================
'Текст обработчика может быть размещен в скрипте объекта, 
'профиля или общесистемном скрипте.

Sub Object_BeforeCreate(Obj, Parent, Cancel)
        'Проверить, где создается объект 
        If Parent.ObjectDefName = "OBJ_TEST" Then
                    msg = "Нельзя создавать новые объекты в составе объекта типа """ &_
                         Parent.ObjectDef.Description & """." 
                    MsgBox msg, vbInformation, "Создание объекта"
                    Cancel = True
        End If                
End Sub
'======================================================================

Смотри также

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