我目前正在处理3个程序。程序A是一个CL,它将用SHARE(*YES)覆盖物理文件ECIFTP,并调用RPG程序B对其进行处理。在处理程序B将调用程序C之后,另一个CL将打开该物理文件上的查询文件以过滤掉记录。当我实际运行程序时,程序C中的OPNQRYF语句将导致错误消息CPF417A"处理空字段对打开成员ECIFTP无效"。为什么会发生这种情况?如何避免?
您正在与SHARE(*YES)
共享打开的数据路径。访问共享开放数据路径的所有程序中的开放参数必须相同。
在这种情况下,程序B和程序C不具有相同的ALWMNULL设置。
CL中的设置在DCLF语句中。例如:DCLF ... ALWNULL(*YES)