NetBase for MPE Reference Guide
NetBase Shadowing
5-51
Sample code:
PROCESS-USER-EXIT.
*
* Ignore this file, it's not the one we want.
*
IF EHI-FILE-NAME NOT = OUR-FILE THEN
MOVE 3 TO ECA-ACTION
GO EXIT-ROUTINE.
*
* Is the data base we want to update open?
*
IF ECA-FILE-NUMBER = 0 THEN
PERFORM OPEN-THE-DATA-BASE
IF DATA-BASE-NOT-OPEN THEN
MOVE -3 TO ECA-ACTION
GO EXIT-ROUTINE
ELSE
MOVE DATA-BASE-ID TO ECA-FILE-NUMBER
MOVE "I" TO ECA-FILE-TYPE.
*
* We're only interested in the updates to the INVENTORY set
*
IF EHI-DATA-SET NOT = USER-INVENTORY-SET THEN
MOVE 1 TO ECA-ACTION
GO EXIT-ROUTINE.
*
* Look up the corresponding entry in the data base.
*
PERFORM GET-THE-ENTRY.
*
* No entry! Say we've lost sync.
*
IF ENTRY-NOT-FOUND THEN
MOVE -2 TO ECA-ACTION
MOVE 1 TO ECA-STATUS
GO EXIT-ROUTINE.
COMPUTE INV-QTY = INV-QTY + (NEW-QTY - OLD-QTY).
PERFORM UPDATE-THE-ENTRY.
GO EXIT-ROUTINE.
Note. The database open routine would do the conversion of the dataset name
INVENTORY to a dataset number, using DBINFO mode 201. This value would be saved in
the USERAREA for subsequent use.