I have developed a utility which we have used for years in house that works great. You specify the libraries you want to use
and it builds a cross reference file. Then on command you specify a file name and are given a display with all accesses to that file (PF,LF,PRTF or DSPF) by program and an option to print the list. You can have it for free if you are interested.
Just let me know where to send it.
You could try using ANZPGM, this will let you analyze multiple libraries.
Although you can find most or all <i>direct, native</i> file references, you might miss many or even most references. It will depend on how ‘modern’ your programming is, how much SQL you use and other factors.
More modern code will have potentially many file references maintained in variables. And most SQL references will also obscure file usage. Cross-references will generally miss all of those.
Be prepared to search every program source manually.
The valid source of information is the audit journal. Object-Read and Object-Change audit entries will reliably tell you which program used a file.