云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

亚马逊云_不需要备案的服务器_稳定性好

小七 141 0

对象存储_linux服务器系统_多少钱

你知道ABAP调试器脚本吗?如果是的话,智慧农业物联网系统,你利用它了吗?

我知道它已经有相当长的一段时间了(我想它已经有10年了),但直到最近才疯狂地使用它。

这是我想在这里分享的经验。

这个案例

我不得不重新设计一些旧的Z功能,并选择了以下策略:我不想在15年以上的旧编码上撕太多,因为我害怕不小心扼杀它的功能。这就是为什么我决定保留它的一个副本,以便我大胆地重构,同时保留原始的完整性作为工作参考。(完成后,最好停止使用(即:删除)旧的、然后不再需要的代码)。

因此,我对我的副本做的第一件事(一直这样做是个好主意)是:验证它的行为是否与原始代码完全一样。你猜怎么着:它没有!

功能是从ME57调用某个z报表,然后调用BAPI\ U PO\ U CREATE来创建采购订单(PO)。原始报告将创建采购订单,我的副本将不会(消息为ME155"请购单和不可选择")。

您可以在这里猜测可能的原因

有一些猜测吗?好的,返利平台,让我们继续。

在复制报表及其包含时,我收到一条消息"不会复制增强功能",因此我已经怀疑缺少了一些内容。

不幸的是,现在有办法将报表相互比较,至少不要扩展所有包含和包含增强功能。(还是有?如果是,请一定要告诉我!)当然有SE39,大量数据,但它没有扩展includes…

中间尝试:SE37测试数据

下一次尝试是,我捕获了对BAPI\u PO\u的两个调用,创建为SE37测试数据。一个非常好的函数:

…然后我尝试比较它们,购物返利平台,因为我假设不同的输入会产生不同的结果;这个测试数据存储在表EUFUNC中,但不容易比较-它可以用FM RS\u TESTDATA\u GET读取,但是呢?!所以我手动比较,没有发现任何差异。当我在SE37中测试它们时,两个案例都失败了。所以那是个死胡同。(或是暗示?!)

通过调试器脚本RSTPDA\u脚本\u语句\u跟踪完成跟踪

所以现在我想看看这两条路径的不同之处。我在社区里寻找这个话题(又一次,正如我2016年的评论所证明的)发现https://blogs.sap.com/2010/12/14/abap-debugger-scripting-basics/.

这教会了我如何使用RSTPDA\u脚本\u语句\u跟踪,这就是我现在展示的:

运行你的应用程序,看着调试器在你的第一个断点打开。

->调试器将继续运行,跟踪每一行在到达下一个断点之前,

…或者您可以使用独立事务SAS。

注意:它有大量的数据,大约30万行,所以需要一段时间才能加载。如果这样做了,建站快速,它可以下载到一个本地文件:

我想看看"工作"和"不工作"部分之间的区别,所以我跟踪他们都如上所述,并得到跟踪文件到我的本地机器。

比较两个文本文件很容易,我使用了Notepad++的"compare"插件,但你最喜欢的工具也应该可以使用。

两个文件很好地同步,直到有一点开始不同:

所以,现在我知道我在哪里,我只需要查找什么,所以我打开include MM06EFBA\u BAT\u AUFBAUEN并导航到第38行(在AdT中使用ctrl+l,在SE80中,使用ctrl+o),我们的解释是:

所以,这就是我如何使用ABAP调试器脚本获得洞察力和答案的方法。

您的用例是什么?你是否仍然使用ABAP标准调试器,或者你已经被AdT调试器吸引住了?

一如既往,我们非常欢迎您的意见!