DML084 error in the IDMSDMLC pre-compile of a cobol program.

Document ID : KB000006371
Last Modified Date : 14/02/2018
Show Technical Document Details

A cobol compile is getting error DML084 in the IDMSDMLC pre-compile.

CA-IDMS, any release from r17.0 onwards.The same cobol source compiles cleanly on releases prior to r17.0.

There was a change introduced in r17.0 which enforces the requirement that in a FIND/OBTAIN WITHIN SET USING SORT-KEY statement, the SORT-KEY identified by the USING clause can only be one field. This requires that the statement be delimited with a “;” or a “.”.


The best resolution is to add a “;” or a “.” to the statement depending on whether or not the statement is inside an IF/THEN/ELSE construct.

Alternatively, optional bits 309 and/or 310 can be used to change the behaviour of the compiler.

By default, the DML084 will cause the compile to end with RC=8.

If you enable bit 309 in RHDCOPTF, the compile will end with RC=4.

If you enable bits 309 and 310 in RHDCOPTF, the compile will end with RC=0.

The functionality of bits 309 and 310 was added to CA-IDMS by r17.0 APAR RO12491.

From r18.0 and onwards, APAR RO12491 is fixed in the base release of CA-IDMS and therefore should not, and can not, be applied at those releases. 

Additional Information: