Page tree
Skip to end of metadata
Go to start of metadata

EVENT action


Function
Synchronous/asynchronous starting of a subevent.
Declaration
 EVENT eventIdent [(pubLoc1=param1, pubLoc2=param2, ... , pubLoc10=param10)] [ASYNC]

Parameters
eventIdent in Identifier of a Event type object.
pubLoc1, pubLoc2, ..., pubLoc10 in Local variables of PUBLIC type in the called event, the specified parameters will be assigned to.
param1, param2, ..., param10 in Local variables - their values will be assigned to the local variables of PUBLIC type.

Description
Before the subevent starts there are automatically filled:
  • values of PUBLIC local variables.
  • the predefined variables _FROM_HIP, _HIP_PAR_STR, _HIP_USER_DESC according to the script called.

Without the key word ASYNC, the subscript is to be started synchronously. The action EVENT is terminated after the subevent termination. Values of PUBLIC local variables are to be assigned to the called event (IN OUT parameters in principle). If the called event is terminated by an error, the calling event is not terminated and continues in the execution of next action.

For asynchronous calling an event (the key word ASYNC), the calling event doesn't wait for the termination of the running event.

When you using local variables of RECORD type, it is necessary that the types of the variables must be the same in the called and calling events, in regard to the NOALIAS attribute.


Examples
Asynchronous calling of script (no parameters)
 
 ;script that calls
 BEGIN
 MESSAGE "script began" ON srvskol1v.HIP
  EVENT E.podevent ASYNC
 MESSAGE "script ended" ON srvskol1v.HIP
 END 

 
 ;called script "E.podskript"
 BEGIN
 MESSAGE "subscript began" ON srvskol1v.HIP
 DELAY 200[ms]
 MESSAGE "subscript ended" ON srvskol1v.HIP
 END 

 
Synchronous calling of subscript (no parameters)
 
 ;script that calls
 BEGIN
  MESSAGE "script began" ON srvskol1v.HIP
  EVENT E.podevent
 MESSAGE "script ended" ON srvskol1v.HIP
 END 

 
 ;called script "E.podskript"
 BEGIN
  MESSAGE "subscript began" ON srvskol1v.HIP
 DELAY 100[ms]
 MESSAGE "subscript ended" ON srvskol1v.HIP
 END 

Write a comment…