Instream data
Data typed directly inside the JCL, after a DD * statement, instead of being kept in a separate dataset.
Also written DD *, DD DATA, inline data, DLM
Instream data is data written straight into the JCL. Instead of pointing a DD statement at a dataset, you write DD * and put the data on the following lines. The program reads those lines as if they came from a dataset.
It is most often used for control statements. A sort step reads its SORT FIELDS statement this way, and an IDCAMS step reads its commands this way, usually under a DD statement named SYSIN.
The data ends at a line that starts with /* or at the next JCL statement, a line starting with //. If the data itself contains lines starting with //, use DD DATA instead, which only ends at /*. If it contains /* as well, the DLM parameter lets you choose a different end marker.
Instream lines are 80 characters long, like all JCL lines. Instream data is handy for small, fixed inputs. For anything large, or data that changes from run to run, keep it in a dataset and point the DD statement at it.
Where can I learn this hands-on?
Right here, at ZedBank. You take a junior job at a simulated bank and learn each part of the work by doing it, with Zed beside you. There's nothing to install.
Start at ZedBankRelated
- DD statementThe JCL statement that connects a name inside a program to a real dataset outside it.
- JCLJob Control Language: the language used to tell the mainframe what programs to run, in what order, and with what files.
- Utility programA supplied program that performs a standard job such as copying, sorting, comparing or managing datasets, driven by control statements.
- SYSPRINTThe conventional DD name a program uses for its messages and report output.
- IDCAMSThe utility used to create, list, copy and delete datasets, and the standard tool for anything involving VSAM.
- DFSORTThe standard sort utility, used far beyond sorting to select, merge, reformat and summarise records at speed.