查看上一个主题 :: 查看下一个主题
|
作者 |
信息 |
拉克希米kondur
新的用户
已加入:2006年1月5日 帖子:9 地点:海得拉巴
|
|
|
|
你好
我需要使用DFsort打印文件中该字段的特定值的出现次数。
I / P数据
20000000003400000647
20000000003400000645
20000000003400000647
20000000003400000645
20000000003400000647
20000000003400000645
20000000005500000641
20000000003400000647
O / P
0647 4(重复0647的次数)
0645 3(重复0645次)
0641 1(重复0641的次数)
输入文件为VB文件,记录长度为394,字段位置从17开始,长度为4。
请让我知道使用DFsort的过程。
提前致谢。 |
|
回到顶部 |
|
 |
尼克·克劳斯顿
全球主持人
加入时间:2007年5月10日 帖子:2455 地点:英国汉普郡
|
|
|
|
ICETOOL和OCCURS为我做了类似的事情。 |
|
回到顶部 |
|
 |
拉克希米kondur
新的用户
已加入:2006年1月5日 帖子:9 地点:海得拉巴
|
|
|
|
尼克
感谢您的回复。
您能否在ICETOOL中给我一个有关这种情况的示例,以便对我有帮助。 |
|
回到顶部 |
|
 |
阿伦·拉吉(Arun Raj)
主持人
已加入:2006年10月17日 帖子:2481 位置:@我的办公桌
|
|
|
|
拉克希米kondur,
输出文件中的记录顺序对您来说重要吗? |
|
回到顶部 |
|
 |
拉克希米kondur
新的用户
已加入:2006年1月5日 帖子:9 地点:海得拉巴
|
|
|
|
阿伦
输出中记录的顺序对我来说并不重要。可以是任何顺序。
问候,
拉克希米 |
|
回到顶部 |
|
 |
阿伦·拉吉(Arun Raj)
主持人
已加入:2006年10月17日 帖子:2481 位置:@我的办公桌
|
|
|
|
拉克希米kondur,
尽管您已经提到输入字段的起始位置为17,但我怀疑由于您的输入文件是VB,所以它应该是21。
假设输出文件为FB,LRECL = 80,这应该对您有用。
码: |
// STEP01 EXEC PGM=SORT
// SYSOUT DD SYSOUT=*
// SORTIN DD DISP = SHR,DSN =输入文件 --> (VB/394)
//整理 DD DISP = SHR,DSN =输出文件-> (FB/80)
// SYSIN DD *
INREC BUILD=(1,4,21,4)
SORT FIELDS=(5,4,CH,A)
OUTTOIL VTOF,REMOVECC,NODETAIL,SECTIONS =(5,4,
TRAILER3=(5,4,X,COUNT=(M10,LENGTH=2))),BUILD=(80X) |
|
|
回到顶部 |
|
 |
魅力
新的用户
已加入:2007年10月25日 帖子:81 所在地:澳大利亚
|
|
|
|
你好
这是我用来创建报告的内容。如果您不希望报告的标题和标题,请使用INCLUDE运算符再执行一个步骤以消除这些记录
JCL
码: |
// STEP020 EXEC PGM=ICETOOL
//工具 DD SYSOUT=*
// DFSMSG DD SYSOUT = *
// INDD DD *
20000000003400000647
20000000003400000645
20000000003400000647
20000000003400000645
20000000003400000647
20000000003400000645
20000000005500000641
20000000003400000647
/*
//输出 DD DISP=(NEW,CATLG,DELETE),
// DSN = GT0734.GTS758.PER.JCL.OUTPUT,
// SPACE=(CYL,(20,25),RLSE),
// LRECL = 80,BLKSIZE = 0,RECFM = FBA,DSORG = PS
// TOOLIN DD *
OCCUR FROM(INDD) LIST(OUTDD) -
LINES(999) -
TITLE(“发生次数的报告”) -
HEADER('FIELD VALUE') ON(17,4,CH) -
HEADER('NO OF OCCURENCE') ON(VALCNT,N15)
/* |
输出文件
码: |
**************************************数据顶部************** ********************
发生次数报告
栏位值 NO OF OCCURENCE
----------- ----------------
0641 1
0645 3
0647 4
**********************************数据底部*************** ***************** |
请注意,对于VB输入文件,您需要添加4字节的RDW。所以TOOLIN应该有ON(21,4,CH) |
|
回到顶部 |
|
 |
dbzTHEdinosauer
全球主持人

已加入:2006年10月20日 帖子:6967 位置:瓷宝座
|
|
|
|
引用: |
这是我用来创建报告的内容。如果您不希望报告的标题和标题,请使用INCLUDE运算符再执行一个步骤以消除这些记录
|
还是可能只删除生成报告标题的控制卡? |
|
回到顶部 |
|
 |
恩里科·索里切蒂
高级主持人

已加入:2007年3月14日 帖子:10715 所在地:意大利
|
|
|
|
正是这个问题,可以选择不同的记录布局,不难更改,
已被要求并提供了解决方案
最近两天至少三遍
为什么天堂里的人们在问之前不去搜索 |
|
回到顶部 |
|
 |
魅力
新的用户
已加入:2007年10月25日 帖子:81 所在地:澳大利亚
|
|
|
|
[quote =“ dbzTHEdinosauer”]
您仍然会获得默认标题
码: |
//输出 DD SYSOUT=*
// TOOLIN DD *
OCCUR FROM(INDD) LIST(OUTDD) -
ON(17,4,CH) -
ON(VALCNT,N15)
/*
|
输出
码: |
**************************************数据顶部************** ********************
(17,4,CH) VALUE COUNT
0641 1
0645 3
0647 4
**********************************数据底部*************** ***************** |
|
|
回到顶部 |
|
 |
拉克希米kondur
新的用户
已加入:2006年1月5日 帖子:9 地点:海得拉巴
|
|
|
|
谢谢大家的快速回复。
我已经尝试过使用ICETOOl,并且它正在工作。 |
|
回到顶部 |
|
 |
弗兰克·雅格
DFSORT开发人员

已加入:2005年2月15日 帖子:7129 地点:加利福尼亚州圣何塞
|
|
|
|
您可以使用NOHEADER操作数消除标题。 |
|
回到顶部 |
|
 |
|