我目前正在研究四个 CL 和 RLG 程序。调用堆栈如下:A->B->C->D 其中 A 是顶部调用者 CL 程序,D 是底部调用者 RPG 程序。程序 A 在文件上有一个带有 SHARE(*YES) 选项的 OVRDBF 语句,该语句用作程序 D 中的输出。现在我面临一个问题,即每当 D 尝试将记录写入此文件时,错误消息 CPF5149 是抛出告诉我 I/O 操作无效。如果我在程序 A 中注释此 OVRDBF 语句,则 D 可以毫无问题地将记录写入文件。那么,为什么这个 OVRDBF 会导致 RPG 程序中的 I/O 出现问题呢?如何解决?删除它可能不是一种选择。