Loop in IDMSIN1 ?

Discussion created by m.fuqua on Feb 24, 2017
Latest reply on Mar 18, 2017 by m.fuqua

We have a COBOL batch-autostatus program running under the CV that appears to be looping on the call to IDMSIN1 within the IDMS-STATUS-LOOP paragraph. The following output is observed:


PROGRAM NAME ------             
ERROR STATUS ------ 0326        
ERROR SET --------- CALC        
LAST GOOD RECORD --             
                --- ............

with the last line - which appears to be the 'DISPLAY SSC-STATUS-LABEL '--- ' SSC-STATUS-VALUE' statement near the end of the IDMS-STATUS-LOOP routine - being displayed until the job gets a S722 abend.


The 'LAST DBKEY -------- ', 'LAST DBKEY HEX ---- ', etc. lines that normally appear after the 'LAST GOOD AREA ---- ' line don't appear anywhere in the output, which makes us think that the condition(s) in IDMSIN1 that 'allows' the code to proceed past the 'DISPLAY SSC-STATUS-LABEL '--- ' SSC-STATUS-VALUE' statement is never 'satisfied' & that the value for SSC-IN01-REQ-RETURN never exceeds 0 which concludes the 'perform IDMS-STATUS-LOOP until SSC-IN01-REQ-RETURN > 0.' statement. The developer insists that this worked prior to release 19.0 (we've been running 19.0 since 8/2016 & haven't had this problem before or currently with any other programs), but I have no way to verify that.


We have modified the IDMS-STATUS routine to use paragraphs vs. a section due to the way a vast majority of our customers have coded their programs, but the changes appear to properly emulate the 'canned' version of IDMS-STATUS. I've attached our version of IDMS-STATUS along with the user routine that is called when an IDMS error has occurred & it in turn calls IDMS-STATUS.


My question - I apologize for the length of the post - has anyone else had this problem or have any suggestions as to what the cause may be? Thanks for your time & any assistance, I appreciate it.