The following extracts from a COBOL program show how to invoke the RRS Commit_UR and Backout_UR services. The COBOL program is a subroutine that is called to perform a certain action as defined in ACTION-CD. Only the CA IDMS task level and RRS actions are shown.
*RETRIEVAL
*NO-ACTIVITY-LOG
*DMLIST
IDENTIFICATION DIVISION.
PROGRAM-ID. MBINDSUB.
*******************************************************************
* SUBSCHEMA CONTROL IS PASSED FROM MAINLINE PROGRAM.
*******************************************************************
ENVIRONMENT DIVISION.
IDMS-CONTROL SECTION.
PROTOCOL. MODE IS BATCH DEBUG
IDMS-RECORDS MANUAL.
DATA DIVISION.
SCHEMA SECTION.
DB EMPSS01 WITHIN EMPSCHM VERSION 100.
WORKING-STORAGE SECTION.
01 WK-DATA.
02 I PIC S9(4) COMP.
01 COPY IDMS SUBSCHEMA-NAMES.
01 COPY IDMS SUBSCHEMA-RECORDS.
LINKAGE SECTION.
01 DB-PARM.
02 DBNAME-IN PIC X(8).
02 FILLER PIC X.
02 DBNODE-IN PIC X(8).
02 FILLER PIC X.
02 ACTION-CD PIC X.
88 ACT-BIND VALUE 'R'.
88 ACT-BINDU VALUE 'U'.
88 ACT-DML1 VALUE '1'.
88 ACT-DML2 VALUE '2'.
88 ACT-DML3 VALUE '3'.
88 ACT-UPDT VALUE '4'.
88 ACT-FIN VALUE 'F'.
88 ACT-TCOM VALUE 'C'.
88 ACT-RCOM VALUE 'D'.
88 ACT-TFIN VALUE 'X'.
88 ACT-TBAK VALUE 'B'.
88 ACT-RBAK VALUE 'Y'.
02 RETURN-CD PIC S9(8) COMP.
...
01 COPY IDMS SUBSCHEMA-CTRL.
PROCEDURE DIVISION USING DB-PARM, SUBSCHEMA-CTRL.
MAINLN SECTION.
MOVE 0 TO RETURN-CD.
...
IF ACT-BINDU
PERFORM BIND-IT
ELSE IF ACT-RCOM
PERFORM RCOM-IT
ELSE IF ACT-TFIN
PERFORM TFIN-IT
ELSE IF ACT-TBAK
PERFORM TBAK-IT
ELSE IF ACT-RBAK
PERFORM RBAK-IT
ELSE IF ...
...
ELSE
MOVE 32 TO RETURN-CD.
GOBACK.
BIND-IT SECTION.
MOVE SPACES TO SUBSCHEMA-CTRL.
MOVE 'MBINDSUB' TO PROGRAM-NAME.
BIND RUN-UNIT DBNODE DBNODE-IN
DBNAME DBNAME-IN.
READY USAGE-MODE UPDATE.
PERFORM CHECK-STAT.
BIND EMPLOYEE.
PERFORM CHECK-STAT.
BIND DEPARTMENT.
PERFORM CHECK-STAT.
...
TCOM-IT SECTION.
COMMIT TASK.
PERFORM CHECK-STAT.
RCOM-IT SECTION.
* Issue RRS Commit_UR
CALL 'SRRCMIT' USING RETURN-CD.
PERFORM CHECK-RRS.
TFIN-IT SECTION.
FINISH TASK.
PERFORM CHECK-STAT.
RBAK-IT SECTION.
* Issue RRS Backout_UR
CALL 'SRRBACK' USING RETURN-CD.
PERFORM CHECK-RRS.
...
|
Copyright © 2014 CA.
All rights reserved.
|
|