Table of Contents
Previous Chapter
--------------------------------------------------------------
Field Type DCT Initial Access Modify Rec Proc PP
Monitor
--------------------------------------------------------------
VAL LONG No 0 Yes Yes No Yes
SELM RECCHOICE Yes 0 Yes Yes No No
SELN USHORT No 1 Yes Yes No No
SELL INLINK Yes 0 No No N/A No
PREC SHORT Yes 0 Yes Yes No No
DLY1 DOUBLE Yes 0 Yes Yes No No
DOL1 INLINK Yes 0 No No N/A No
DO1 DOUBLE No 0 Yes Yes No No
LNK1 OUTLINK Yes 0 No No N/A No
DLY2 DOUBLE Yes 0 Yes Yes No No
DOL2 INLINK Yes 0 No No N/A No
DO2 DOUBLE No 0 Yes Yes No No
LNK2 OUTLINK Yes 0 No No N/A No
DLY3 DOUBLE Yes 0 Yes Yes No No
DOL3 INLINK Yes 0 No No N/A No
DO3 DOUBLE No 0 Yes Yes No No
LNK3 OUTLINK Yes 0 No No N/A No
DLY4 DOUBLE Yes 0 Yes Yes No No
DOL4 INLINK Yes 0 No No N/A No
DO4 DOUBLE No 0 Yes Yes No No
LNK4 OUTLINK Yes 0 No No N/A No
DLY5 DOUBLE Yes 0 Yes Yes No No
DOL5 INLINK Yes 0 No No N/A No
DO5 DOUBLE No 0 Yes Yes No No
LNK5 OUTLINK Yes 0 No No N/A No
DLY6 DOUBLE Yes 0 Yes Yes No No
DOL6 INLINK Yes 0 No No N/A No
DO6 DOUBLE No 0 Yes Yes No No
LNK6 OUTLINK Yes 0 No No N/A No
DLY7 DOUBLE Yes 0 Yes Yes No No
DOL7 INLINK Yes 0 No No N/A No
DO7 DOUBLE No 0 Yes Yes No No
LNK7 OUTLINK Yes 0 No No N/A No
DLY8 DOUBLE Yes 0 Yes Yes No No
DOL8 INLINK Yes 0 No No N/A No
DO8 DOUBLE No 0 Yes Yes No No
LNK8 OUTLINK Yes 0 No No N/A No
DLY9 DOUBLE Yes 0 Yes Yes No No
DOL9 INLINK Yes 0 No No N/A No
DO9 DOUBLE No 0 Yes Yes No No
LNK9 OUTLINK Yes 0 No No N/A No
DLYA DOUBLE Yes 0 Yes Yes No No
DOLA INLINK Yes 0 No No N/A No
DOA DOUBLE No 0 Yes Yes No No
LNKA OUTLINK Yes 0 No No N/A No
--------------------------------------------------------------
-----------------------------------------------------------------------------------------------
Name Summary Description
-----------------------------------------------------------------------------------------------
VAL Value Field Not used.
SELM Select Mechanism: SELECT_ALL: Select all links
SELECTED: Use SELN as index (1 to 6)
MASK: Use SELN as a mask to select an arbitrary
combination of links.
SELN Link Selection If SELM=SELECT_ALL then this field is not used.
If SELM=SELECTED then this is the index (1 to 6) of the
link to select.
If SELM=MASK then this is the mask (in decimal) used to
determine the selected links. For example, if SELN=1,
then LNK1 will be processed. If SELN=3 then LNK1 and
LNK2 will be processed. If SELN=63 then links LNK1,
LNK2, ... LNK6 will be processed.
SELL Link Selection SELN is read from SELL. SELL can be a constant, a
Location database link, or a channel access link.
PREC Display Precision Precision with which to display DLY1-DLYA and DO1-
DOA fields. This field is used by record support to supply
a value when get_precision is called.
DLY1-DLYA Delay time This represents the delay time (in seconds) to wait before
processing the input and output link pair (ie. DOLn and
LNKn.)
DOL1-DOLA Input link selection DO is read from DOL. DOL can be a constant, database
link or channel access link. If it is a constant, it is only
copied to the DO field once at initialization time.
Otherwise, it is re-fetched each time the record is
processed.
DO1-DOA Desired output This field holds the desired output value that will be
value placed in the output location indicated by the LNK field.
LNK1-LNKA Output link field DO is written to LNK. LNK can be a database link or a
channel access link.
-----------------------------------------------------------------------------------------------
First, PACT is set to TRUE, and the link selection is fetched. Depending on the selection mechanism, the link selection output links are processed in order from LNK1 to LNKA. When LNKn is processed, the corresponding DLYn value is used to generate a delay via watchdog timer.
After DLYn seconds have expired, the input value is fetched from DOn (if DOLn is constant) or DOLn (if DOLn is a database link or channel access link) and written to LNKn.
When all links are completed, an asynchronous completion call back to dbProcess is made (see the Application Developer's Guide for more information on asynchronous processing.)
Then UDF is set to FALSE.
Monitors are checked.
The forward link is scanned, PACT is set FALSE, and the process routine returns.
For the delay mechanism to operate properly, the record is processed asynchronously. The only time the record will not be processed asynchronously is when there are no non-NULL output links selected (ie. when it has nothing to do.) The processing of the links is done via callback tasks at the priority set in the PRIO field in dbCommon (see the Application Developer's Guide for more information on callback tasks.)