如果我有一个包含三个子程序的单个模块的服务程序。有没有办法以编程方式查找库/文件中各个子过程的用法?
所以像这样:
MYLIB/MYSRVPGM <-- My service program object
PROC1 <-- My first sub-procedure
PROC2 <-- My second sub-procedure
PROC3 <-- My third sub-procedure
然后我有一个 ILE 程序,它使用 PROC1
和 PROC3
但不使用 PROC2
。
MYLIB/MYPGM <-- My ILE program object which uses PROC1 and PROC3
我正在寻找一种方法来搜索 PROC1
或 PROC3
并查看返回的 MYLIB/MYPGM
结果。但是,搜索 PROC2
不应返回结果。
到目前为止,我已经尝试使用 DSPPGMREF
,但它只返回整个对象(即:MYLIB/MYSRVPGM
),而不是使用的各个子过程。
我尝试过的另一种方法是使用 FNDSTRPDM
,但这只是扫描字符串 PROC1
的源代码。它可能在评论中并返回误报。
我知道第三方工具可用于此目的,但由于成本原因,它们目前不是可行的选择。免费或相对便宜的可能是一种选择(我只是不知道)。我运气不好吗?
最佳答案
如果您有程序的模块,您可以使用列表模块信息 (QBNLMODI) API 来获取模块导入列表。 https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_73/apis/qbnlmodi.htm
关于ibm-midrange - 如何在 IBM i 上的 RPG 中查找子过程用法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56761660/