IBM Support

Avoiding JCL error with IEFC019I MISPLACED DD STATEMENT

Troubleshooting


Problem

IEFC019I MISPLACED DD STATEMENT received when SUBMIT pre-processing inserts TIVDST00 and TIVDSTAL into JCL

Cause

JCL conventions

For example, the following JCL causes this problem:

//JOBLIB DD DSN=$SCSRNG.TSO.LOAD,DISP=SHR
// INCLUDE MEMBER=SKIPIT
/*
//FLPALE01 EXEC PGM=IEFBR14


where member SKIPIT contains:

// DD DSN=XXX.PROD.PLI.RUNTIME,
// DISP=SHR
// DD DSN=XXX.PROD.COB.COB2LIB,
// DISP=SHR

In this case, the two OUTPUT statements are inserted BEFORE the INCLUDE card is expanded, which causes a sequence of:

JOBLIB
OUTPUT
DD

which is not permitted.

Resolving The Problem

Use of the SKIPINCLUDE parameter in RCLOPTS and a member containing RCLSKIP statements can avoid this problem.

For example, add to RCLOPTS:

SKIPINCLUDE(SKIPMEM)

Then add in PARMLIB (EQQPARM DD) a member named SKIPMEM which has the following contents:

RCLSKIP INCLNAME(SKIPIT)

With this parameter and PARMLIB member in place, the OUTPUT statements added for Restart&Cleanup processing will be placed AFTER the expanded INCLUDE member, instead of BEFORE it.

The controller must be cycled after making this change to process the new SKIPINCLUDE parameter-- however, if subsequently additional RCLSKIP statements are added to the parmlib member, the following command will REFRESH the SKIPINCLUDE list (so a cycle of the controller will not be needed):


F subsystem,SKIPINC(member)

where:

subsystem is the name of the controller subsystem

member is the member name specified on the SKIPINCLUDE statement (SKIPIT in the above example).

[{"Product":{"code":"SSRULV","label":"IBM Workload Scheduler for z\/OS"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"--","Platform":[{"code":"PF035","label":"z\/OS"}],"Version":"Version Independent","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
13 September 2019

UID

swg21145480