I want to find out the source name and location for all objects within a library - The source types are RPGLE and CLLE. Kindof like we use the DSPOBJD for RPG sources. Thanks.
Software/Hardware used:
ASKED:
April 23, 2011 8:38 AM
UPDATED:
May 2, 2011 10:51 PM
ILE program objects aren’t created from source, so they don’t have source file references directly attached to those objects.
ILE programs are created by binding compiled modules into an executable *PGM object. In order to track back to source, you need to retrieve the list of *MODULEs from the program. Then use the object description of the modules to find the source that each module was compiled from.
A program might have many modules, each of which will have a different source file member. It’s possible that all of your programs are built from single modules, but you still need to go for the module source rather than the program source. The modules are where the source is indicated.
You can use the List ILE Program Information (QBNLPGMI) API to list the modules of a bound program into a user space. The space can be looped through with the user space APIs to process each module so you can extract source file info.
Tom
See Determining Source Files for RPGLE programs for an example of using QBNLPGMI to extract source files of bound modules.
Tom
Thank you, TomLoitta & RonKoontz – A collegue was able to write a program to retrieve sources for all objects.