Owner's manual

DOKuStar Validation for Ascent Capture Page 17
Events
Concept
Certain objects can get events. You will probably use the events defined for the FieldType and the
DocumentType object, but there are many more objects which have the ability to get events. For example, an
event may be assigned to a single
Field (instead of the FieldType), e.g. to the amount field on the first document.
So you could add code that would be executed if the user changed the amount on the first document, but not, if he
changed the amount on one of the following documents.
This manual will not describe every event for every object, but concentrates on the most important items. To see the
complete list, use VBA‘s object browser: Open the VBA development studio, press
F2 and select the
DOKuStarValidation library.
DOKuStar Validation event handling routines use a special naming scheme: They all begin with
On... and end with
...
ing, ...ed or …ingCanceled. For example, consider the OnFieldChanging, OnFieldChanged and
OnFieldChangingCanceled event. For most events, you will always have such a group of three events. Rules:
The ...
ing event always comes first. The ...ing events can be aborted by the scripting routine. If the scripting routine
wants to abort the event, it must return
False, else True. So, for the OnFieldChanging example, this event
means: “The value of the field is about to be changed. Any Objection?” When
True is returned, you will next get
the
…ed event, in our case the OnFieldChanged. This event indicates, that the changing of the field now took
place. Contrarily, when
False was returned in the …ing you will next get an …ingCanceled , indicating that
the changing of the value was canceled.
Note that when you return
False in the ...ing event, all events that might follow will not be fired (except the
Canceled event); especially, you will not get the corresponding ...ed event.
In the example above the
OnFieldChanging event was used, since we wanted to abort the changing in some
situations. If the
OnFieldChanged event had been used, the old contents could not have been restored.
Consequently, event handling routines for ...
ing events are always functions that return a boolean; while ...ed
routines are always subroutines.