I have a program written in RPGLE which calls numerous other programs. These programs all share similar files. In my main program, when trying to read a particular file, I get error CPF5032 even though I unlock the file right before I do the setll reade. As a result, I figured the lock must be coming from one of the called programs. However, I thought if I turned *INLR on before exiting the programs, all record locks would be released. Is this not true? Also, is there a way to tell which program actually has the record locked? As I said before, the program calls numerous other programs and it could be any one of them?