Sort,Merge以及Copy文件

Q: 何为DFSORT?

A: DFSORT是一款由IBM提供的免费程序。这款强大的软件能够帮你实现对文件的排序,合并以及拷贝和分析,并且能够生成不同的报表。

利用DFSORT工具,你可以累加数据。比如,我们有一个公司的员工数据,表中的数据有员工的名字,部分以及他们的薪水。

 

例如说你想分开统计每个部门的累积薪水,我们可以使用DFSORT把各个部门(10,2)每一条记录中的薪水列(15,5)累加起来,然后产生报表。使用的DFSORT指令很简单:

程序执行结果生成的报表如下:

所以说,利用DFSORT工具,你可以分析数据,生成不同的商业报表。当然它不仅仅可以用来作为排序工具,它还是一款功能强大的分析和报表工具。

Q: 怎么用运行DFSORT工具?

A: 要使用DFSORT工具,你可以运行免费程序“SORT”。SORT程序要求提供四个文件:

简单介绍下这四个文件: SYSIN: SORT程序的核心,主要存放处理指令,通俗点说就是你希望SORT程序如何处理你的输入文件。SORTIN: 输入文件,存放你要处理的数据。 SORTOUT:输出文件。SYSOUT:可当做是SORT程序日志。JCL代码如下:

Q: 当写SORT控制的时候有啥规则?

A: 所有的指令比如SORT,MERGE等都可以下载第2到71列之间。

控制指令通常包含两个部分,一为操作符例如SORT或者MERGE等。二就是操作数。操作数有个参数:FIELDS. 格式如:FIELDS=(value1,value2,…).

Q: SORT程序中有哪些不同的数据格式?

A: DFSORT支持不同的数据格式。要处理数据,你必须告诉DFSORT你要处理的数据是那种格式: 字符还是数字(包括DIDPALY(显示?)二进制以及压缩格式,浮点数),日期或者时间等。具体参考下表:

Q: 如何通过设定关键Field来进行排序?

A:  通常在Excel中每一个列都有一个名字叫做A1,B2等。这里我们若有指定DFSORT根据那个Field进行排序,则需要知道你的Field所在的起始位置以及该Field的长度即可。例如下面的数据:

表中的数据,First-name起始位置喂1,长度为7。所以first-name这个Field责定为(1,7)。以此类推,last-name则定为(21,10)。若要对上面的数据按照First-Name,Mid-Name,Last-Name为KEY排序,我们的SORT控制卡该如何写呢?

因为它们都是字符,所以这里的格式设定为CH。A为升序,若要降序,则为D。

输出结果:

Q: 如何合并文件?

A:  我们还是看例子吧。假设图书馆有一个关于物理图书的清单:SYSADM.PHYSICS.BOOK.LIST且单中已经按照字母顺序排列。

同样有一张关于化学方面的图书清单:SYSADM.CHEM.BOOK.LIST

现在管理员需要对这两个清单按照书名合并,把图书合并的科学类图书架上。所以这里我们使用的是MERGE操作符,Title作为操作数制定关键域(Key-Field)。

这段代码不细说了,跟前面介绍的类似。当我们执行DFSORT程序之后,其输出如下:

程序代码如下:

与之前SORT稍微有点不同的是,这里有两个INPUT,即SORTIN01和SORTIN02。当然你有多于两个的就类推,SORTIN03等。

你可能还感兴趣的相关文章:

  1. 路过,学习啦。

  2. 更多功能可用icetool,更牛逼

      • Leyond
      • 2012年04月9日

      我以为你是专业摄影师呢 原来你对这方面很熟悉啊

  3. 功能看起来很强大啊

  1. 没有通告