Page History
[ |../../index.htm#lansa/ugubc_c10125.htm]
You are here:
...
Examples of Trigger use
Example 1: Calculates the current balance of the account:
...
| No Format |
|---|
Object : |
...
Account (ACNT) |
...
Trigger Field : "Account Balance" (ACCBAL) |
...
Trigger Method : Calculates the current balance of the account. Trigger Event(s) |
...
: |
...
1. AFTER READ when ACCBAL is REF (referenced) |
...
Invoked By : (i.e. |
...
How is an account balance retrieved ?) |
...
FETCH FIELDS(....#ACCBAL....) FROM_FILE(ACNT) |
...
or SELECT FIELDS(....#ACCBAL....) FROM_FILE(ACNT) |
...
Comments : Quite efficient because ACCBAL is only
calculated when the requester asks for it. |
Example 2: Submits batch order print job:
...
| No Format |
|---|
Object : |
...
Order (ORDR) |
...
Trigger Field : "Print Required" (PRINT_REQ) |
...
Trigger Method : Submits batch order print job. Batch function prints order and updates PRINT_REQ to 'N'. |
...
Trigger Event(s) |
...
: |
...
1. AFTER INSERT when PRINT_REQ EQ 'Y' |
...
2. AFTER UPDATE when PRINT_REQ EQ 'Y' |
...
and PRINT_REQ NEP PRINT_REQ |
...
Invoked By : (i.e. |
...
How is an order submitted for printing ?) CHANGE #PRINT_REQ 'Y' UPDATE FIELD(#PRINT_REQ) |
...
IN_FILE(ORDR) |
...
Comments : It may seem a little obscure as an IBM i
based trigger but what if the update
comes from a PC based application via
the LCOE facility, or from a batch job
that starts automatically every morning
and automatically selects certain
orders for printing ? |