【发布时间】:2020-07-25 17:35:03
【问题描述】:
不久前,在记录遗留代码时,我发现有一个工具可以显示任何标准程序的调用图(调用堆栈)。荒谬的是我多年来都不知道这个工具:D
它提供了程序调用的精美列表/层次结构,虽然它不是call graph in a full sense,但在某些情况下非常有用。
问题是该工具仅与 SE93 相关联,因此它只能用于交易。 我试图搜索但没有找到任何类似的报告或功能模块工具。是的,我可以为报告创建一个 tcode,但是对于功能模块,这种方法不起作用。
如果我将 FM 调用放在报告中并使用此工具构建图表,它会将此调用包装为一个单元,并且不会进行更深入的分析。就是这样
任何人都知道除了事务之外我们如何构建图形的解决方法吗?
【问题讨论】:
-
至少从 Basis 4.6 开始就不再维护调用图,并且它不适用于类和方法。尽管有这个限制,如果您有兴趣将它用于报表和功能模块,您可以直接调用功能模块
RS_CALL_HIERARCHY,参数OBJECT_TYPE设置为P用于程序,FF用于功能模块。跨度> -
我只是 receive this 如果我为功能模块调用它,则没有显示调用层次结构。另外我在这个FM里没有看到输出参数,你试过功能模块吗?
-
是的,我用功能模块和程序以及其他对象也试过了。它或多或少地工作,无论是用于事务代码,功能模块还是程序,它都没有维护20年。也许你必须重建其功能组的对象列表。
-
RS_CALL_HIERARCHY是SE93中option后面的工具,分析事务代码下面的层级,针对每个子程序、功能模块等往下走。可以调用这个一个程序或一个功能模块单独使用相同的工具。我找到了一个包含 PERFORM 的功能模块,但该工具没有显示它。因此,该工具是有缺陷的,无论是针对一个事务代码还是一个功能模块(通过将功能模块包装在自定义事务代码中并运行该工具来尝试)。它仅适用于旧程序。 -
It works well only for old programs我尝试了 10 多种不同的 FM,但没有一个能奏效,可能是因为它们都包含表演,但对于程序来说它是有效的。所以是的,现在似乎已被弃用并且有问题
标签: abap call-graph bapi function-module