Programming structures for INMOD, OUTMOD, and Notify Exit routines differ, as reflected in the following sections.
INMOD Routines
The following table lists the programming language structures for communicating between FastExport and an INMOD routine.
INMOD Routine Language | Programming Structure |
---|---|
Assembler | First parameter:RRECORD DSECT RTNCODE DS F RLENGTH DS F RBODY DS CL32004 Second parameter: IPARM DSECT RSEQ DS F PLEN DS H PBODY DS CL100 |
C | First parameter:struct { long Status; long RecordLength; char buffer[32004]; } Second parameter: struct { long seqnum; short parmlen; char parm[80]; } |
COBOL | First parameter:01 INMOD-RECORD. 03 RETURN-CODE PIC S9(9) COMP. 03 RECORD-LENGTH PIC 9(9) COMP. 03 RECORD-BODY PIC X(32004) Second parameter: 01 PARM-STRUCT. 03 SEQ-NUM PIC 9(9) COMP. 03 PARM-LEN PIC 9(4) COMP. 03 PARM-BODY PIC X(80). |
PL/I | First parameter:DCL 1 PARMLIST, 10 STATUS FIXED BINARY(31,0) 10 RLENGTH FIXED BINARY(31,0) 10 REC CHAR(32004) Second parameter: DCL 1 PARMLIST, 10 SEQNUM FIXED BINARY(31,0) 10 PLENGTH FIXED BINARY(15,0) 10 PBODY CHAR(80) |
In each structure, the records must be constructed so that the left-to-right order of the data field corresponds to the order of the field names specified in the FastExport LAYOUT and subsequent FIELD and FILLER commands.
OUTMOD Routines
The structure for communicating between FastExport and an OUTMOD routine uses the standard C calling conventions for the following parameters:
- int *code;
- int * stmtnum;
- int *InLen;
- char * InBuf;
- int *OutLen;
- char *OutBuf;
Notify Exit Routines
The structure for communicating between FastExport and a Notify Exit routine is a pointer to an FXNotifyExitParm structure, as shown in "Sample Notify Exit Routine" in Generating Routines.