在包中的所有程序中搜索MODIFY语句

问题描述

我要搜索使用以下语句的所有程序-包中的程序:

从wa_itab_xyz修改itab_xyz

最好使用诸如itab *之类的通配搜索字符串 对于itab_(values)的范围,例如itab_abc,itab_def,itab_ghi 等。

我如何在SAP ABAP中做到这一点?

下面是一个程序包中可以从中搜索的所有程序的屏幕快照。

enter image description here

解决方法

一种可能性是使用程序RS_ABAP_SOURCE_SCAN。 您可以按包限制选择,也可以输入特定的字符串以在代码中进行搜索。

,

我使用交易code_scanner(程序为afx_code_scanner)。

此程序和上面提供的RS_ABAP_SOURCE_SCAN的最大问题是,他们找不到所有内容。 IMO对他们而言最重要的缺失组件是隐式增强。它们可能会对系统功能产生很大的影响,如果您正在搜索错误消息或硬编码值,则跳过它们可能意味着找不到关键的内容。

在我查看的时候(大约7年前),我找不到真正可以扫描系统中所有代码的交付工具。我最终对code_scanner进行了增强,以寻找增强功能,WDA组件,BSP代码和表单代码。

我不知道上面的开源组件是否包括那些组件。乍一看似乎没有,但我没有时间去深入研究它。

,

您可以使用Galileo-Open Source库中的工具。该程序在ABAP源,OTR文本,消息和文本池中搜索静态文本,通配符模式或正则表达式模式。

ABAP编码: https://github.com/galileo-group/galileo-abap-lib/blob/master/%23gal%23devtools_find_text.prog.abap

文本池: https://github.com/galileo-group/galileo-abap-lib/blob/master/%23gal%23devtools_find_text.prog.xml

它引用了库中的一些其他类,因此您也需要复制这些类,或者仅使用ABAPgit来获取整个库。您也可以与我联系,以便我向您发送包含图书馆的交通工具。

其他信息(2020年10月1日):

我创建了一个报告版本,您可以将其复制/粘贴到ABAP编辑器中。无法将其包含在响应中,但是您可以找到它here。 不要忘记复制文本元素/选择文本。

Required Text Elements:
-----------------------
B00 Scope
B01 Search pattern
H01 Type
H02 Name
H03 Key
H04 Match

Required Selection Texts:
-------------------------
P_CASE    Case-sensitive
P_DEVC    Package
P_LANGU   Language
P_MESS    Messages
P_OTR     OTR Texts
P_PATT    Pattern
P_REGEX   Regular expression
P_SOURCE  ABAP sources
P_TPOOL   Textpools
P_WILDC   Wildcard pattern