ABAP代码静态分析工具SQF - Support Query Framework

Posted sap-jerry

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP代码静态分析工具SQF - Support Query Framework相关的知识,希望对你有一定的参考价值。

如果系统里没有SQF这个tcode,可以参考note 1814328: SQF: Plug-In for Source Code Scans进行安装。

ABAP static analysis tool SQF is a static code analysis tool developed in package SUPPORT_QUERY_FRAMEWORK in software component SAP_BASIS.

It contains lots of handy tool or short cut to other system utility tools. The most attractive function which is worthy to put it into my toolset is the static code analysis.

  1. use tcode SQF, double click on “Source code Analysis”

技术图片

  1. Maintain the ABAP object which you would like to do static analysis.

In this example it is function module CRM_PRODUCT_GETLIST2. Specify the object type as well, which could be found in table TADIR.
The Analysis Depth 6 means: for example in the implementation of the FM, it calls another FM or subroutine, these delegated calls will also be analyzed by the tool. Say FM calls A and A calls B, B calls C, C calls D, D calls E, E calls F and F calls G, depth = 6 means any further calls starting from F calls G will be ignored.

技术图片

  1. Click save button and it is automatically navigated back to SQF main view. Click F8 to execute.

技术图片

The progress will be displayed in the bottom, the bigger size of depth specified, the more time the analysis will take.

技术图片

After execution, the color of icon changes from white to blue, which means the analysis result is available.

技术图片

  1. The analysis results are categorized into four groups:

a. Call hierarchy, something like the one in SAT.

技术图片

b. the table read access in static call. Those table read access done via dynamic coding will be listed in group d.

技术图片

Compare with DB access list analyzed by runtime trace SAT, there are far more entries than the static one. This is not surprising, as in CRM product, the set type access is implemented in a highly dynamic way.

技术图片

c. interface call:

技术图片

d. Dynamic coding

技术图片

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
技术图片

以上是关于ABAP代码静态分析工具SQF - Support Query Framework的主要内容,如果未能解决你的问题,请参考以下文章

ABAP性能1 | LOOP嵌套LOOP代码分析(转)

转载常用 Java 静态代码分析工具的分析与比较

带有前缀“%_”的 ABAP 常量的值是多少?

静态分析工具汇总

Visual Studio 2017 中的静态代码分析工具

代码静态分析工具——splint的学习与使用