【发布时间】:2016-01-05 18:01:02
【问题描述】:
我有一个包含已处理信息的数据集,用于 4 个不同的部门,我需要将其拆分为每个部门的一个数据集。这是一般记录结构:
XXXXXXX = 不相关的字符串
AAA = 3 个字母的字母部门 ID
记录细节无关紧要,行数可变
000001 0000000000000000000000000000000000000XXXXXXXAAA171220150000
000002 <irrelevant record details>
000003 <irrelevant record details>
000004 999999999999999999999999999999999999900000004000000000005700
000005 0000000000000000000000000000000000000XXXXXXXBBB171220150000
000006 <irrelevant record details>
000007 <irrelevant record details>
000008 <irrelevant record details>
000009 <irrelevant record details>
000010 <irrelevant record details>
000011 999999999999999999999999999999999999900000004000000000005700
000012 0000000000000000000000000000000000000XXXXXXXCCC171220150000
000013 <irrelevant record details>
000018 999999999999999999999999999999999999900000004000000000005700
如何使用 DFSORT 和 JCL 完成此任务?
【问题讨论】:
-
我们在这里帮助您解决代码问题。查看带有 BEGIN、END 和 PUSH 的 WHEN=GROUP 的 ID。四个 OUTFIL,前三个使用 ID (INCLUDE=/OMIT=),最后一个使用 SAVE。
-
注意:OUTFIL 仅在您事先知道部门* 是什么并为每个部门编写 OUTFIL 语句时才起作用(分配的输出数据集与其一起使用)。从发现部门代码的意义上说,DFSORT 中没有“分桶”。 * 我在这里使用“部门”,因为这是提问者的关键字段。
-
@BillWoodger 我对 DFSORT 不是很熟悉,有一个紧迫的任务要完成,抱歉这个问题。
-
@MartinPacker 如果不是“桶”,您会在 OUTFIL 上调用什么 SAVE?
-
@MartinPacker 我并不是要“分桶”。这些部门以前是已知的。
标签: sorting dataset mainframe jcl dfsort