Friday, July 5, 2013

UNABLE TO DETERMINE ADDRESS while calling a CICS program

Mostly we get this type of error when we call a NON-CICS pogram from a CICS program. This occurs more obviously if we use a CICS COBOL complier and compile the NON-CICS COBOL program. Generally we use DFHCOMMAREA along with other LINKAGE SECTION  variables while calling sub-pgm. But internally the CICS compiler inserts the variable DFHEIBLK along with the LINKAGE SECTION parameters

DFHEIBLK:  (Data facility Heirarchy Exec Interface BlocK) is a cobol copy book which will be automatically included by the cics translator in all the cics programs.This will contain PIC clauses of all the fields that are mandatory in any cics program. 

Thus there is a address mismatch and it says 'UNABLE TO DETERMINE ADDRESS'. There is a mismatch between what the linkage section is sending and what the linkage section in the called program is receiving.
 To Overcome this situation, we need to include DFHEIBLK along with other parameters passed in the linkage section  in both  the called and calling program respectively.

1 comment: