13.1.2.1 Example COBOl Code for ExternWriteOperator
Listing Example ExternWriteOperator.cbl Code
IDENTIFICATION DIVISION.
PROGRAM-ID. "ExternWriteOperator".
DATA DIVISION.
WORKING-STORAGE SECTION.
copy "ctypes".
01 ret-code usage int.
LINKAGE SECTION.
01 LK-TEXT pic x(1024).
01 LK-TEXTLENGTH PIC S9(9) COMP-5.
01 LK-ROUTECODES pic x(1024).
01 LK-NUMROUTES PIC S9(9) COMP-5.
01 LK-ACTION PIC X(2).
01 LK-REPLY pic x(1024).
01 LK-MAXLENGTH PIC S9(9) COMP-5.
01 LK-REPLYLENGTH PIC S9(9) COMP-5.
01 LK-TIMEOUT PIC S9(9) COMP-5.
PROCEDURE DIVISION USING LK-TEXT LK-TEXTLENGTH LK-ROUTECODES
LK-NUMROUTES LK-ACTION LK-REPLY
LK-MAXLENGTH LK-REPLYLENGTH LK-TIMEOUT.
* * display "ExternWriteOperator : LK-TEXT =<" LK-TEXT ">"
* * display "ExternWriteOperator : LK-TEXTLENGTH =<" LK-TEXTLENGTH ">"
* * display "ExternWriteOperator : LK-ROUTECODES =<" LK-ROUTECODES ">"
* * display "ExternWriteOperator : LK-NUMROUTES =<" LK-NUMROUTES ">"
* * display "ExternWriteOperator : LK-ACTION =<" LK-ACTION ">"
* * display "ExternWriteOperator : LK-REPLY =<" LK-REPLY ">"
* * display "ExternWriteOperator : LK-MAXLENGTH =<" LK-MAXLENGTH ">"
* * display "ExternWriteOperator : LK-REPLYLENGTH =<" LK-REPLYLENGTH ">"
* * display "ExternWriteOperator : LK-TIMEOUT =<" LK-TIMEOUT ">"
* * in case of REPLY
if LK-MAXLENGTH > zero
* * move "..............." to LK-REPLY
* * move 15 to LK-REPLYLENGTH
end-if
move zero to ret-code
* * return code
* * 0 = OK
* * -1 = operation failed (INVREC wil returned to the user program)
* * -9 = time out ocurred before the operators's reply was received
GOBACK returning ret-code.
Parent topic: External Interface for Write Operator