Problem:
We are trying to code a Cobol stub program for a host security module that does not exist on the PC. Once into the Animator, we get a runtime error of 'RTS203 Call paramter not supplied'. What can be wrong?
Resolution:
The problem is with the Linkage Section definitions.
The MFCICS preprocessor always adds a PROCEDURE DIVISION USING header if one codes a Linkage Section item (DFHCOMMAREA) and the proprocessor will use the users definition of DFHCOMMAREA.
But if one leaves out the Linkage Section item, then the preprocessor uses its own one byte DFHCOMMAREA definition.
Try these examples:
Identification Division.
Program-Id. LORINCE.
Data Division.
Working-Storage Section.
1 ACF2-Parms.
2 ACF2-Pgm Pic X(8).
2 ACF2-Len Pic 9(4) Comp.
1 ACF2-Comm.
2 ReturnStatus Pic X(2).
2 Userid Pic X(8).
1 WsMisc.
2 WsMsg Pic X(64).
Procedure Division.
P1.
Move 'Lorince2' to ACF2-Pgm
Move 10 to ACF2-Len
Move ' Link to Locisp ' to WsMsg
Move Spaces to ACF2-Comm
Exec Cics Write Operator
Text(WsMsg)
Textlength(Length of WsMsg)
End-Exec
Exec Cics Link Program(ACF2-Pgm)
Commarea(ACF2-Comm)
Length(ACF2-Len)
End-Exec
Move ' Back From Lorince2 ' to WsMsg
Exec Cics Write Operator
Text(WsMsg)
Textlength(Length of WsMsg)
End-Exec
Exec Cics Return End-Exec
Goback.
----------
Identification Division.
Program-Id. LORINCE2.
Data Division.
Working-Storage Section.
Linkage Section.
1 Dfhcommarea.
2 Dfh-Ret-Stat Pic X(02).
2 Dfh-User-Id Pic X(08).
Procedure Division.
P1.
Move Zeroes to Dfh-Ret-Stat
Exec Cics Return End-Exec.
P1-Exit.
Exit.
#MFDS
#EnterpriseDeveloper