The system I am working on has been designed to pass a commarea of greater than 32K by specifying a length of 0. This is a slightly dodgy practice, but does work. There is nothing that I can do to change this or this design.
I am attempting to call a top level Cobol/CICS transaction from a batch Cobol program using the CICS external interface EXCI. This bit is working fine. This top level cobol program EXEC CICS LINKS to other programs which exploit this greater than 32k limit.
When my top level Cobol CICS program issues the CICS RETURN statement in order to pass control back to the batch CICS program, everything abends with 0C4 exception error, because CICS has got it addressing in a mess.
I am under the impression that the only reason it works in the online environment is because the front end is a PC and the connecting infrastructure is not CICS (Interworking I think).
So my question is, is there anyway to stop a Cobol CICS transaction other than a return statement. Alternatively, if anybody has run across this before and knows a way round it, I'd be grateful for help.
Regards,
Marc
I am attempting to call a top level Cobol/CICS transaction from a batch Cobol program using the CICS external interface EXCI. This bit is working fine. This top level cobol program EXEC CICS LINKS to other programs which exploit this greater than 32k limit.
When my top level Cobol CICS program issues the CICS RETURN statement in order to pass control back to the batch CICS program, everything abends with 0C4 exception error, because CICS has got it addressing in a mess.
I am under the impression that the only reason it works in the online environment is because the front end is a PC and the connecting infrastructure is not CICS (Interworking I think).
So my question is, is there anyway to stop a Cobol CICS transaction other than a return statement. Alternatively, if anybody has run across this before and knows a way round it, I'd be grateful for help.
Regards,
Marc