温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ABAP工作进程对数据库表读取操作的检测是怎样的

发布时间:2021-12-02 10:34:43 来源:亿速云 阅读:136 作者:柒染 栏目:大数据

本篇文章给大家分享的是有关ABAP工作进程对数据库表读取操作的检测是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

小编要介绍的,是使用SM50检测出工作进程长时间读取一张数据库表这个行为的小技巧。SM50界面有一列名为"Current Action Info",如果启动SM50时,当前工作进程正在持续读取一张数据库表,则该列会显示出数据库表的名称。

ABAP工作进程对数据库表读取操作的检测是怎样的

比如上图显示了编号为9743的工作进程,当前状态为Running,正在client 000以系统用户SAPSYS的身份,执行ABAP系统程序SAPMSSY2, 读取数据库表TBTCO.

ABAP工作进程对数据库表读取操作的检测是怎样的

我曾经用这个小技巧,完成了实际工作中的一个任务。

在我还在做SAP CRM标准开发时,我需要找出监听了CL_BSP_WD_COLLECTION_WRAPPER这个类抛出的NEW_FOCUS事件的所有ABAP类。

ABAP工作进程对数据库表读取操作的检测是怎样的

于是我使用ABAP workbench里的Where-Used List功能,等待了5分钟过后仍然出结果。我又以后台作业的方式执行了Where-Used List操作,或许是待检索的ABAP类的总数太过庞大的缘故,十分钟过去了仍无结果。

于是我换了一种方式,打开SE80的Repository Information System,根据如下条件搜索:

ABAP工作进程对数据库表读取操作的检测是怎样的

然而这个过滤条件只能显示哪些类发布,而非监听了NEW_FOCUS事件。

ABAP工作进程对数据库表读取操作的检测是怎样的

于是我打开SM50,一眼就看到了当前进程正陷入读取VSEOCOMPDF的泥潭之中。

ABAP工作进程对数据库表读取操作的检测是怎样的

这是一个数据库视图:

ABAP工作进程对数据库表读取操作的检测是怎样的

ABAP类和其发布事件的关联关系维护在了数据库表SEOCOMPODF中。我在SE16里按照如下过滤条件进行检索:

ABAP工作进程对数据库表读取操作的检测是怎样的

不到一秒钟就得到了我想要的列表:

ABAP工作进程对数据库表读取操作的检测是怎样的

这个例子如果采用我之前文章  SAP错误消息调试之七种武器:让所有的错误消息都能被定位 里提到的工具之一,即用ST05跟踪Where-Used List执行时访问到了哪些表,结果一定会出来长长的一串。而使用SM50的Current Action Info,能避开所有干扰信息,迅速准确找出存储ABAP类和其监听事件的关联关系的存储表。

ABAP开发人员手头上可用的工具很多,如何在不同情形下灵活选择最合适的工具去解决问题,是我们需要不断去练习和提高的。

以上就是ABAP工作进程对数据库表读取操作的检测是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI