查看上一个主题 :: 查看下一个主题
|
作者 |
信息 |
Tgmuntor
新的用户
加入:2020年5月20日 帖子:2 地点:巴西
|
|
|
|
您好开发人员,
考虑到我具有如下所述的包含条件,我试图使用SYNCSORT甚至ICETOOL来打印下一行中放置的信息:
输入:
码: |
002567 OPINFORETRI。 结束 ED A
002568 CP UPDT BY A091540 MCP RERUN APPL: EZBA
002569 12/26 11.20.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
002570 RESTART OF: EZBATCH CONFIR |
结论:
码: |
包括 COND=(39,03,CH,EQ,C'MCP') |
所需信息:
11/26 11.20.29 EZBATCH
我遇到的困难是将字符串放置在所需条件的下一行中。 |
|
回到顶部 |
|
 |
乔格·芬代森
活跃用户

已加入:2015年8月15日 帖子:389 地点:德国班贝格
|
|
|
|
您首先应该知道所使用的SORT产品。 同步排序 或DFSORT。
使用INREC从您的条件开始时开始GROUP(WHEN = GROUP,BEGIN..PUSH =(..,SEQ = 8))。在OUTFIL上,您过滤SEQ =<n>/ String“ 重新启动:”就是这样。简单。 |
|
回到顶部 |
|
 |
Tgmuntor
新的用户
加入:2020年5月20日 帖子:2 地点:巴西
|
|
|
|
我正在使用Z / OS DFSORT V2R4。
 |
|
回到顶部 |
|
 |
乔格·芬代森
活跃用户

已加入:2015年8月15日 帖子:389 地点:德国班贝格
|
|
|
|
Tgmuntor 写道: |
我正在使用Z / OS DFSORT V2R4。
 |
现在,您只需要以一种很好的方式对其进行编码。 |
|
回到顶部 |
|
 |
谢尔盖肯
活跃的成员

已加入:2008年4月29日 帖子:939 所在地:马里兰
|
|
|
|
乔格·芬代森 写道: |
您首先应该知道所使用的SORT产品。 同步排序 或DFSORT。  |
对于此特定问题,两者之间没有区别。 |
|
回到顶部 |
|
 |
乔格·芬代森
活跃用户

已加入:2015年8月15日 帖子:389 地点:德国班贝格
|
|
|
|
塞尔吉肯写道: |
对于此特定问题,两者之间没有区别。 |
张贴在论坛的正确部分?  |
|
回到顶部 |
|
 |
乔格·芬代森
活跃用户

已加入:2015年8月15日 帖子:389 地点:德国班贝格
|
|
|
|
对于给定的样本,这应该可以工作:
码: |
//假 EXEC PGM=ICEMAN
// SORTIN DD *
OPINFORETRI. 结束 ED A
CP UPDT BY A091540 MCP RERUN APPL: EZBA
12/26 11.20.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
重新启动: EZBATCH CONFIR
/ *
// SYSOUT DD SYSOUT = *
//整理 DD SYSOUT = *
// SYSIN DD *
OPTION COPY
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(39,3,CH,EQ,C'MCP'),END=(2,2,CSF,EQ,NUM,AND,5,2,CSF,EQ,NUM),
PUSH=(134:SEQ=8))
出FIL FNAMES=(SORTOUT),
包括=(134,8,CSF,EQ,NUM),
REMOVECC,NODETAIL,
TRAILER1=(2,14,X,58,8)
结束
/ * |
输出:
码: |
12/26 11.20.29 EZBATCH |
|
|
回到顶部 |
|
 |
乔格·芬代森
活跃用户

已加入:2015年8月15日 帖子:389 地点:德国班贝格
|
|
|
|
如果您有多个实例,这应该会更好地工作:
码: |
// SYSIN DD *
OPTION COPY
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(39,3,CH,EQ,C'MCP'),END=(2,2,CSF,EQ,NUM,AND,5,2,CSF,EQ,NUM),
PUSH=(134:39,3))
出FIL FNAMES=(SORTOUT),
包括=(134,3,CH,EQ,C'MCP',AND,2,2,CSF,EQ,NUM,AND,5,2,CSF,EQ,NUM),
REMOVECC,
BUILD=(2,14,X,58,8)
结束
/ * |
输出:
码: |
12/26 11.20.29 EZBATCH
12/26 11.20.29 EZBATCH |
|
|
回到顶部 |
|
 |
罗希特·乌马尔吉卡(Rohit Umarjikar)
全球主持人

已加入:2010年9月21日 帖子:2581 地点:美国纽约
|
|
|
|
码: |
// S1 EXEC PGM=ICETOOL
//工具 DD SYSOUT=*
// DFSMSG DD SYSOUT = *
//在 DD *
OPINFORETRI。 结束 ED A
CP UPDT BY A091540 MCP RERUN APPL: EZB
12/26 11.20.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
重新启动: EZBATCH CONFIR
//输出 DD SYSOUT=*
// TOOLIN DD *
从中选择(IN) TO(OUT) ON(81,8,CH) LASTDUP USING(CTL1)
// CTL1CNTL DD *
SORT FIELDS=COPY
INREC IFTHEN=(WHEN=INIT,
OVERLAY=(81:SEQNUM,8,ZD)),
IFTHEN=(WHEN=(40,3,CH,EQ,C'MCP'),
OVERLAY=(81:+ 1,ADD,81,8,ZD,M11,LENGTH = 8))
出FIL FNAMES=OUT,BUILD=(1,14,X,57,7)
// * |
输出-
码: |
12/26 11.20.29 EZBATCH |
|
|
回到顶部 |
|
 |
罗希特·乌马尔吉卡(Rohit Umarjikar)
全球主持人

已加入:2010年9月21日 帖子:2581 地点:美国纽约
|
|
|
|
乔格·芬代森 写道: |
如果您有多个实例,这应该会更好地工作:
码: |
// SYSIN DD *
OPTION COPY
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(39,3,CH,EQ,C'MCP'),END=(2,2,CSF,EQ,NUM,AND,5,2,CSF,EQ,NUM),
PUSH=(134:39,3))
出FIL FNAMES=(SORTOUT),
包括=(134,3,CH,EQ,C'MCP',AND,2,2,CSF,EQ,NUM,AND,5,2,CSF,EQ,NUM),
REMOVECC,
BUILD=(2,14,X,58,8)
结束
/ * |
输出:
码: |
12/26 11.20.29 EZBATCH
12/26 11.20.29 EZBATCH |
|
结束 的第一个比赛将停止PUSH'MCP',并且它将认为结束了小组。
扭曲您的解决方案-这将适用于多个实例,前提是没有记录格式更改或有许多不同的变量要编码
码: |
// SORTIN DD *
OPINFORETRI。 结束 ED A
CP UPDT BY A091540 MCP RERUN APPL: EZB
12/26 11.20.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
12/26 11.20.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
重新启动: EZBATCH CONFIR
OPINFORETRI。 结束 ED A
CP UPDT BY A091540 MCP RERUN APPL: EZB
12/26 11.21.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
12/26 11.21.29 CP UPDT BY A091540 OPER JOBNAME : EZBATCH
重新启动: EZBATCH CONFIR
//整理 DD SYSOUT=*
// SYSOUT DD SYSOUT = *
// SYSIN DD *
OPTION COPY
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(40,3,CH,EQ,C'MCP'),
结束 =(1,1,CH,EQ,C''和,40,3,CH,NE,C'MCP'),
PUSH=(134:40,3))
出FIL FNAMES=(SORTOUT),
包括=(134,3,CH,EQ,C'MCP',AND,1,1,CSF,EQ,NUM),
REMOVECC,
BUILD=(1,14,X,57,7)
结束 |
输出-
码: |
12/26 11.20.29 EZBATCH
12/26 11.20.29 EZBATCH
12/26 11.21.29 EZBATCH
12/26 11.21.29 EZBATCH |
|
|
回到顶部 |
|
 |
|
 |
查看书签
所有时间均为格林尼治标准时间+ 6小时 |
|