问题标签 [dfsort]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6658 浏览

merge - JCL SORT - 需要将来自不同输入行的字段添加到单个输出行

我有一个 6 行输入文件,它由一个字段(位置 1 到 6)组成,每行包含不同的值。根据该字段中包含的不同值,其他字段(从位置 7 -80)将移至输出中的单行。

例如

输入:

输出:

我需要找出如何将这些全部读取为不同的行,然后输出到单行。我试过使用类似于代码的东西:

但这会将数据移动到单独行上的正确位置,如下所示:

所以现在我认为我需要在一个步骤中进行排序并在另一个步骤中进行合并。但是,如果可能的话,我更愿意合二为一。我很感激这方面的任何帮助。谢谢。

0 投票
1 回答
1056 浏览

sorting - 使用 JCL 排序在 x 条记录后写入字符

我编写了一个 JCL SORT,它将对各种字段进行排序/重新格式化并将它们打印到一个新的输出文件中,如下面的代码所示。我需要修改此代码,以便在每十(10)条记录的开头打印数字“9”。我想我需要一个“IFTHEN”,但我不确定它是否可以与“OUTREC FIELDS”一起使用。

0 投票
2 回答
1916 浏览

mainframe - 需要用JCL SORT比较不同记录中的同一个字段

我有一个输入文件,该文件中的第三个字段是一个数字。该数字通常在同一字段中重复大约 30-40 条记录,当读取该字段中具有不同值的记录时,我需要在下一条记录的第一个位置打印数字“1”。例如

我尝试过使用“SECTIONS”,例如:

但这将在单独的行上打印数字“1”:

我需要类似覆盖的东西,但我不确定如何将它与“SECTIONS”一起使用。
注意:上面的数字 317786762 从第 26 位开始。


修正案

我已经想出了如何将 1 移动到第一个位置(下面的代码)。完成此 SORT 的要求是在每 30 条记录后或当 POS 26,9 中的数字发生变化时在位置 1 打印一个“1”。

此代码在 POS 101,8 中设置序列号。然后,当 26,9 中有新值时,它会重新启动 Seqnum。当 SEQNUM 的值为 30 时,我还需要重新启动序列号。但据我所知,重新启动仅在字段值更改时才有效。你不能对它使用逻辑表达式。

所以我的问题是,有没有人知道一种编写 SORT 的方法,它将读取一个顺序文件并在每 30 条记录之后或在某个字段中找到新值之后在位置 1 打印一个“1”。

0 投票
3 回答
1936 浏览

mainframe - Simplifying a DF/Sort job thats reads SMF to analyse a dataset's lifecycle

So I have a batch job that extracts SMF type 14, 15 and 17 records into 3 separate files and then formats the files to produce a list of which datasets were read, written to and delete by which jobs. This is then sorted by timestamp so you can see the 'lifecycle' for a particular dataset.

However, I know that DF/Sortt is pretty powerful and I think that my initial step to separate out the type 14, 15 and 17 records isn;t necessary, and it could be done in one step, but I'm not really sure where to start as DFSort/ICETOOL has gotten pretty sophisticated.

Here's my current JCL:

It is possible to do this without separating the 14, 15 and 17 records into separate files?

Edit : the above JCL does exactly what I wan, but I'd like to be able to filter by dataset name or job name if possible, as this can produce a lot of output which is then too big for ISPF Edit or View for further analysis

Edit:

A further enhancement would be to check if an OPEN was actually creating the dataset. I should also add RENAMES, otherwise you might lose track of what happened to a particular dataset.

Edit:

Following Bill's guidelines, my JCL is now:

But this gives:

Leaving off the

,CONVERT

gives me :

Edit - latest update:

Just trying to isolate type 14 records, so current input is now:

0 投票
1 回答
2114 浏览

mainframe - 按字段长度排序

我想编写一个排序JCL,其中我想对可变记录长度文件进行排序

输入文件:

按升序对空格前的字段长度进行排序。这是对第一个 col/word Mark、Amy 等的长度进行排序。基于它们的长度。

第二个类似于按降序对空格后的字段进行排序,但如果字段中的任何元音应该始终是第一个,然后是其余数据。来到第二部分,这里就像空格或 aaaaa、bbbbb 和 ccccc 之后的字段,我们需要按降序(按字母顺序)对其进行排序,但我们还需要检查该字段是否为元音,如果有元音,则该字段将总是作为顶部,所以预期的输出将是这样的:考虑到上面的输入文件输出文件将是:

Mark aaaaaaaa
Paula cccccc
艾米 bbbbbb

现在这里 vovel 就像在第一条记录中一样,其中包含 aaaa 位于顶部,其余数据按降序排序。我想实现这一目标。

0 投票
1 回答
252 浏览

mainframe - 在原始员工订单中按员工的最晚日期保留记录

我需要过滤 PS 文件中每个员工的最新记录。如何使用 DFSORT 实现这一目标?

PS 文件中的记录为员工 ID(6 位)和日期(8 位)。我需要过滤每个员工的最新记录,保持员工出现的原始顺序。

示例:i/p 文件:

o/p 文件:

如果您得到的不是相同的订单而是最新的记录,也请分享答案。

0 投票
1 回答
5041 浏览

mainframe - 使用大型机中的 DFSORT 实用程序进行乘法除法

有两个文件 FILE1.DATA 和 FILE2.DATA 在 Mainframe 中使用 DFSORT 计算百分比(FILE1 中的记录数/FILE2 中的记录数)*100。如果超过阈值 (90%),则设置返回代码。

  1. 我面临的问题是尽管提到 LRECL 6,但数据集 FILE1.DATA.COUNT 和 FILE1.DATA.COUNT 被创建为 15 条记录长度。(注意,这是写第一个答案时存在的问题,现在不相关到上面的代码)。
  2. 我们可以将这两个步骤合二为一吗?
  3. 这, (15:X,1,6,ZD,DIV,+2,M11,LENGTH=6,X, (8,6,ZD,MUL,+100),DIV,1,6,ZD,MUL,+100,EDIT=(TTT.TT)), 具体是什么意思?
0 投票
1 回答
1066 浏览

mainframe - 从 ps 文件中删除多个标题

我有一个 ps 文件,如果它下面没有数据,我想在其中删除标题,即 . 如果连续两行中有标题(由 FIRST 3 个字母 HDR 识别),我想删除第一个,因为它没有数据。

输入数据

期望的输出

无论如何使用 dfsort ,我们可以做到这一点吗?

0 投票
2 回答
2244 浏览

jcl - 我想要一个 JCL 排序卡将数据集中第 n 到 n+k 列的所有记录写入一个新文件。如何做到这一点?

我想将所有带有 ABCD 的记录写入一个文件,将所有 PQRS 记录写入一个文件,将所有带有 FILQ 的记录写入一个文件,依此类推。我不知道这些列会是什么。

0 投票
1 回答
595 浏览

mainframe - 了解以下控制卡

我有以下控制卡,我看不懂。有人可以帮我解释一下这部分工作的表现吗?

我知道它会在 67 或 69 的位置搜索 ID 'XSCB'。但是一旦找到它,我就无法解释它接下来会做什么。