【发布时间】:2017-04-21 16:59:18
【问题描述】:
我正在使用以下 JCL 将 DSNTEPZ 查询的结果转换为所需的布局,并在页眉和尾页上添加标签。我已经能够完成我的任务,但感觉很笨拙。那里有任何 JCL 向导能够压缩这些步骤中的任何一个吗?我真的很讨厌最后的排序,但我找不到任何方法在格式 MMYYYY 的标题中输出日期。
//**********remove extra output lines/reformat *******************
//SORT EXEC PGM=SORT,
// REGION=2000K
//SORTIN DD DSN=&&SORT1IN,DISP=(OLD,DELETE,DELETE) * pds of query results
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(20,5))
//SORTOUT DD DSN=&&SORT1OUT,
// DISP=(NEW,PASS,DELETE),
// AVGREC=K,LRECL=100,
// SPACE=(100,(900,100),RLSE)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=COPY -
INCLUDE COND=(97,1,CH,EQ,C'1',OR, * This removes the 'informational' Query lines
97,1,CH,EQ,C'2',OR,
97,1,CH,EQ,C'0') -
OUTREC FIELDS=(C'DTL',32,9,71,10,5X,49,19,2X,84,4,89,2, *Arranging the Output
92,2,97,1,43X)
/*
//************************ add hdr/trl ***********************
//SORT2 EXEC PGM=SORT,
// REGION=2000K
//SORTIN DD DSN=&&SORT1OUT,DISP=(OLD,DELETE,DELETE)
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(20,5))
//SORTOUT DD DSN=&&SORT2OUT,
// DISP=(NEW,PASS,DELETE),
// AVGREC=K,LRECL=100,
// SPACE=(100,(900,100),RLSE)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
OPTION COPY
OUTFIL REMOVECC,
HEADER1=(C'HEADERENE',DATENS=(DM4),19:82X),
TRAILER1=(C'TRAILER',COUNT=(M11,LENGTH=9),83X)
/*
//************************ CONVERT DATE ***********************
//SORT3 EXEC PGM=SORT,
// REGION=2000K
//SORTIN DD DSN=&&SORT2OUT,DISP=(OLD,DELETE,DELETE)
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(20,5))
//SORTOUT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
OPTION COPY
OUTREC IFTHEN=(WHEN=(1,7,CH,EQ,C'HEADERE'),
BUILD=(1,9,12,6,85X))
/*
//
【问题讨论】: