Igen i denne uge vil jeg bringe en forbedring af et tidligere tip. Det drejer sig om tippet fra uge 43/2004, hvor jeg skrev om, hvor outputtet fra SYSOUT kan dirigeres hen. Faktisk findes der en compileringsoption, der angiver, hvilket DD navn DISPLAY statement skal udskrives på. Denne option hedder OUTDD og default er sjovt nok SYSOUT.
Angivelse af compileringsoptions i sourcen har jeg beskrevet i uge 50/2006. Du skal benytte en PROCESS OUTDD(MYDDNAME), hvor du udskifter MYDDNAME med dit foretrukne valg af DD navn. Behandlingen af dette DD navn er præcis den samme som for SYSOUT. Du skal være opmærksom på, at OUTDD virker på program-niveau. Hvis dit hovedprogram angiver OUTDD(CBLMAIN) og dit underprogram OUTDD(CBLSUB), så kommer DISPLAY fra hovedprogrammet ud på CBLMAIN, mens DISPLAY fra underprogrammet kommer ud på CBLSUB. DISPLAY i CICS programmer kommer fortsat ud på CEEOUT, uanset hvad du skriver i OUTDD.
Hvis du benytter DD navn SYSPRINT, som er default for PLI PUT statementet, og du blander COBOL DISPLAY og PLI PUT under eksekveringen, så er det ikke sikkert, at data kommer ud i den rigtige rækkefølge, da COBOL og PLI benytter forskellige buffer-teknikker. Jeg vil derfor anbefale dig at afprøve denne blanding, før du kaster dig ud i en storstilet anvendelse.