gpt4 book ai didi

cobol - 如何使用 3 个输入文件在 Cobol 中做平衡线?

转载 作者:行者123 更新时间:2023-12-05 09:14:35 26 4
gpt4 key购买 nike

我在类里面的挑战是编写一个程序,该程序读取 3 个输入 txt 文件并生成 1 个 txt 输出文件。所有输入文件必须优先行顺序模式,并且没有一个索引(这是打破我们思想的规则)。

文件1有字段ID-USER(按它排序)等;文件2有字段ID-USER(按它排序),ID-JOB等;文件 3 有字段 ID-JOB(按它排序)和其他字段。输出文件将加入来自 3 个文件的数据。

用 2 个文件在 cobol 中平衡线是一项艰巨的工作,但我可以做到。但是使用3个输入文件,当ID-USER在文件1和2中对应时,我必须提前读取文件3以记录文件2和3上对应的ID-JOB,而我的平衡线不再起作用,因为我没有不知道是否可以“重新启动”读取文件 3。

恢复:如何在特定输入文件(文件 3)上使用顺序模式重新开始读取?或者在同一个 cobol 程序上反向搜索。

最佳答案

两种可能的过程

  1. 2 个排序合并程序,一个在 Job-Id 上,一个在 ID-USER 上
  2. 将 File-3 加载到索引 文件(大型机上的 VSAM 文件)或数据库。 Index-File/Db 的键是 Job-Id。然后你可以做一个索引阅读

两个程序

确切的顺序取决于文件输出顺序。你可以

  1. 根据 Job-id 对 File-2 和 File-3 进行排序,并使用两个文件中的所需数据创建输出 file-4
  2. 根据 ID-USER 对 file-1 和 file-4 进行排序并合并这两个文件

或者你可以

  1. Sort Merge file-1 和 file-2 on ID-USER 并创建 file-4
  2. Sort Merge file-1 和 file-4 on Job-id

索引文件解决方案

  1. 在程序启动之前或作为初始化的一部分,将 file-3 加载到索引文件(比如 file-3i)(如果小可以使用数组)。
  2. Sort Merge ID-USER 上的 file-1 和 file-2,并对 File-3i 进行索引查找

关于cobol - 如何使用 3 个输入文件在 Cobol 中做平衡线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53815510/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com