cobol - 在 Cobol 中,为什么你会有一个不存在段落名称的 PERFORM THRU
问题描述
我试图弄清楚 PERFORM 命令的目的是什么。代码是 20 年前编写的。ACPY-READ-FIRST、ACPY-READ-NEXT 和 ACPY-EXIT 不存在于程序中的任何位置。
MOVE ACPY-ID TO WS-ACPY-ID.
PERFORM ACPY-READ-FIRST THRU ACPY-EXIT.
150-PYMTS.
PERFORM ACPY-READ-NEXT THRU ACPY-EXIT.
IF NOT SUCCESSFUL OR
ACCT-ID NOT = ACPY-ACCT-ID
GO TO 160-DONE.
解决方案
答:您不会,因为这会在每个编译器中产生语法错误。
段落(或什至部分,但我会寻找前者)必须位于源单元中的某个位置,我会说:95% 的可能性可以在COPY
语句中命名的字帖中找到它(= COBOL 的“包含”) , 4% 表示它是由用于处理此问题的代码生成器插入的,1% 表示您刚刚忽略了它(COBOL 不区分大小写,以防万一)。
提示:如果你有所有必要的资源,你可以使用GnuCOBOL来处理它并创建一个列表,向你显示包含段落的字帖。
推荐阅读
- apache-spark - Spark SQL 的第一个入口点
- c++ - “DRM_IOCTL_MODE_GETRESOURCES”不等于 drm.h 中定义的“0xA0”
- javascript - 将 HTML 块传递给 React 组件的全局 JS 变量
- mongodb - MongoDB $text 是否容易受到 NoSQL 注入的影响?如果是这样,如何?
- nativescript - NativeScript DepreciationWarning : parse() 已弃用。改用 Builder.parse()
- azure - Azure blob:了解 BlobListingDetails 枚举中的不同选项
- asp.net-mvc - 从本机客户端授予对 api 的访问权限
- bash - 连接到 heroku bash
- javascript - 拖动时按下按钮
- lua - 如何使用 BodyPosition 使零件在一条线上平滑移动?