I am currently working on 3 programs. Program A is a CL which will override physical file ECIFCTP with SHARE(*YES) and call RPG program B to process it. After the processing program B will call program C, another CL to open query file on this physical file to filter out the records. When I actually ran the program the OPNQRYF statement in program C will cause error message CPF417A “Handling null capable fields is not valid for open of member ECIFCTP”. Why did this happen? How to avoid it?
Share
You are sharing the open data path with
SHARE(*YES). The open parameters must be the same in all of the programs that access the shared open data path.In this case program B and program C do not have the same ALWNULL setting.
The setting in CL is on the DCLF statement. For example:
DCLF ... ALWNULL(*YES)