I have a file field which we are planning to expand. The same field name
is used in some of the files, DSPF's and PRTF's. If a program A has
this impacted file declared, how can I find the other objects which are
impacted due to this modification?
Part of it depends on how well the application was set up. If it was done right, there might not be anything you need to do at all, or you might get by with running DSPPGMREF over your executable objects to list references into a file that you can query.
Note that DSPPGMREF can handle *PGM, *SQLPKG, *SRVPGM and *MODULE objects (or *ALL at once).
Ideally, things like *CMDs all use PARMs that specify FILE() usage whenever a file name is referenced. That way, you'll be alerted even to CL programs where a file name might be in a variable.
In any case, without knowing a lot about how your applications were developed and what standards might have been used, we have no way of knowing where your references might be.
If you start with a logical file or VIEW for the file you're checking, you need to shift to the underlying physical file or TABLE. Then create a list of related files -- use the DSPDBR command to get an idea of how many files you might need to track.
Use the DSPPGMREF list together with the DSPDBR list to find guaranteed references.
Other references for unnamed files will require looking at any related source.
Hopefully, your expanded field isn't used in every program. Programs that don't use the field should be referencing logical files or VIEWs that omit that field. If so, you won't need to do anything with those programs. You'll be lucky if that's the case.
Tom
Free Guide: Managing storage for virtual environments
Complete a brief survey to get a complimentary 70-page whitepaper featuring the best methods and solutions for your virtual environment, as well as hypervisor-specific management advice from TechTarget experts. Don’t miss out on this exclusive content!
Discuss This Question: 1  Reply