Sample COBOL program using FABGXDR


The following figure shows a COBOL program that uses FABGXDR.

See member PFUGXDR in the Fast Path/EP sample library for a COBOL program example.


Example
IDENTIFICATION DIVISION.
PROGRAM-ID.SAMP0030 2.
AUTHOR. BMC SOFTWARE.
INSTALLATION. BMC SOFTWARE.
DATE-COMPILED.
REMARKS.
  READ EXTRACTED SEGMENT DATA FROM TWO
  DATABASES AND FORMAT A REPORT.

ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. IBM-370.
OBJECT-COMPUTER. IBM-370.

INPUT-OUTPUT SECTION.
FILE-Control.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.

77 FUNC-INIT                 PIC X(4) VALUE 'INIT'.
77 FUNC-GET                  PIC X(4) VALUE 'GET'.
77 FUNC-EOJ                  PIC X(4) VALUE 'EOJ'.

01 XDRPARM1.
   05 FUNCTION               PIC X(4) VALUE SPACES.
   05 FUNC REDEFINES FUNCTION.
      10 FILLER              PIC X(03).
      10 FUNC-SUFFIX         PIC X.
   05 STATUS                 PIC X(2) VALUE SPACES.
   05 SEGMENT-CODE           PIC S9(4) COMP.
   05 SEGMENT-NAME           PIC X(08).
01 XDRPARM2.
   05 KEY-LENGTH             PIC S9(4) COMP.
   05 KEY-DATA               PIC X(3840).
01 XDRPARM3.
   05 SEGDATA-LENGTH         PIC S9(4) COMP.
   05 SEGDATA                PIC X(28552).

PROCEDURE DIVISION.

A100-MAINLINE
******************************************
** INITIALIZATION SECTION               **
******************************************
MOVE FUNC-INIT TO FUNCTION.
MOVE '1' TO FUNC-SUFFIX.
CALL 'FABGXDR' USING XDRPARM1.
MOVE '2' TO FUNC-SUFFIX.
CALL 'FABGXDR' USING XDRPARM1.
 .
 .
 .
******************************************
** MAIN PROCESSING SECTION              **
******************************************
MOVE FUNC-GET TO FUNCTION.
MOVE '1' TO FUNC-SUFFIX.
PERFORM B100-PROCESS THRU B100-PROCESS-X
   UNTIL STATUS = 'GB'.

MOVE '2' TO FUNC-SUFFIX.
MOVE SPACES TO STATUS.
PERFORM B100-PROCESS THRU B100-PROCESS-X
   UNTIL STATUS = 'GB'.

******************************************
** END-OF-JOB SECTION                   **
******************************************
MOVE FUNC-EOJ TO FUNCTION.
CALL 'FABGXDR' USING XDRPARM1.
GOBACK.

B100-PROCESS.
******************************************
** PROCESSING SECTION                   **
******************************************
CALL 'FABGXDR' USING XDRPARM1,
XDRPARM2,
XDRPARM3.
IF STATUS = 'GB'
GO TO B100-PROCESS-X.
 .
. report formatting
 .
 .
B100-PROCESS-X.
EXIT.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*