IBM大型机论坛索引
 
 登录
 
IBM大型机论坛索引 大型机:搜索 IBM Mainframe论坛:常见问题解答  寄存器
 

条件匹配时打印下一行


IBM大型机论坛 -> DFSORT / ICETOOL
 发表新话题     回复主题
查看上一个主题 :: 查看下一个主题  
作者 信息
Tgmuntor

新的用户


加入:2020年5月20日
帖子:2
地点:巴西

 发布 发表于:2020年5月20日,星期三9:08 pm
引用回复

您好开发人员,

考虑到我具有如下所述的包含条件,我试图使用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
地点:德国班贝格

 发布 发表于:2020年5月20日,星期三9:24 pm
引用回复

您首先应该知道所使用的SORT产品。 同步排序 或DFSORT。 icon_rolleyes.gif

使用INREC从您的条件开始时开始GROUP(WHEN = GROUP,BEGIN..PUSH =(..,SEQ = 8))。在OUTFIL上,您过滤SEQ =<n>/ String“ 重新启动:”就是这样。简单。
回到顶部
查看用户资料 发送私信
Tgmuntor

新的用户


加入:2020年5月20日
帖子:2
地点:巴西

 发布 发表于:2020年5月20日,星期三10:32 pm
引用回复

我正在使用Z / OS DFSORT V2R4。
icon_biggrin.gif
回到顶部
查看用户资料 发送私信
乔格·芬代森

活跃用户


已加入:2015年8月15日
帖子:389
地点:德国班贝格

 发布 发表于:2020年5月20日,星期三10:35 pm
引用回复

Tgmuntor 写道:
我正在使用Z / OS DFSORT V2R4。
icon_biggrin.gif

现在,您只需要以一种很好的方式对其进行编码。
回到顶部
查看用户资料 发送私信
谢尔盖肯

活跃的成员


已加入:2008年4月29日
帖子:939
所在地:马里兰

 发布 发表于:2020年5月20日,星期三11:30 pm
引用回复

乔格·芬代森 写道:
您首先应该知道所使用的SORT产品。 同步排序 或DFSORT。 icon_rolleyes.gif

对于此特定问题,两者之间没有区别。
回到顶部
查看用户资料 发送私信
乔格·芬代森

活跃用户


已加入:2015年8月15日
帖子:389
地点:德国班贝格

 发布 发表于:2020年5月20日,星期三11:34 pm
引用回复

塞尔吉肯写道:
对于此特定问题,两者之间没有区别。

张贴在论坛的正确部分?  icon_wink.gif
回到顶部
查看用户资料 发送私信
乔格·芬代森

活跃用户


已加入:2015年8月15日
帖子:389
地点:德国班贝格

 发布 发表于:2020年5月21日,星期四6:55上午
引用回复

对于给定的样本,这应该可以工作:
码:
//假    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
地点:德国班贝格

 发布 发表于:2020年5月21日,星期四9:46上午
引用回复

如果您有多个实例,这应该会更好地工作:

码:
// 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
地点:美国纽约

 发布 发表于:星期五五月22,2020 3:44上午
引用回复

码:
// 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
地点:美国纽约

 发布 发表:2020年5月22日星期五7:41下午
引用回复

乔格·芬代森 写道:
如果您有多个实例,这应该会更好地工作:

码:
// 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小时
论坛索引 -> DFSORT / ICETOOL

 


类似主题
话题 论坛 回覆
 没有新帖 DB2I面板中的命令行放置 TSO / ISPF 2
 没有新帖 删除基于S ...的重复记录 DFSORT / ICETOOL 4
 没有新帖 文件辅助批处理如何重复一行... Compuware和其他工具 2
 没有新帖 SQL的下一行 DB2 4
 没有新帖 JOINKEYS匹配两个输入文件... DFSORT / ICETOOL 3
搜索我们的论坛:


 回到顶部