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

Glossary Item Box

Описание

Генерируется перед исполнением команды.

Опеделение

Visual Basic
Public Event CommandBeforeExecute( _
   ByVal pCommand As TDMSCommand, _
   ByVal pObject As TDMSObject, _
   ByRef bCancel As Boolean _
)

Параметры

pCommand
Команда, которая должна быть выполнена.
pObject
Объект, над которым должна быть выполнена команда.
bCancel
TRUE - отменить выполнение команды.

Заметки

1. Событие является отменяемым: если параметру bCancel присвоено значение TRUE, команда не будет выполнена.

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

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

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

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

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

Пример

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

Sub Command_BeforeExecute(Command, Obj, Cancel)
        'Запретить выполнение определенной команды над определенными типами объектов
        If Command.SysName = "CMD_TEST" AND Obj.ObjectDef.SysName = "OBJ_TEST" Then
                MsgBox "Данная команда не может быть выполнена на объектах типа """_
                         & Obj.ObjectDef.Description & """.", vbInformation, "Отмена выполнения команды"
                Cancel = True
        End If
End Sub
'======================================================================

Смотри также

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