ABAP 调用堆栈中的奇怪前缀 (/A\)

问题描述

通常,我会尽量使我的问题具有可重复性。 在这种情况下,我找不到办法。请随时指导我如何获取更多详细信息,我会附上。

在某些情况下,我们以编程方式使用 ABAP 调用堆栈来获取其他信息。 I.E:记录用户调用,当没有其他适当的方法来检索它们时,作为最后手段访问来自堆栈中较低调用的变量。

我们遇到过这样一种情况,在 HR 模块 'MP9XXX00'(Module-Pool 为客户特定的 {{1} }} PA)。奇怪的字符是 infotypes。 调用程序的完整字符串是 /A\

用于获取整个调用栈的代码:

/A\MP9XXX00

lt_call = cl_abap_get_call_stack=>format_call_stack_with_struct( cl_abap_get_call_stack=>get_call_stack( ) ). 中没有这样的程序 /A\MP9XXX00

此外,当尝试从调用程序接收变量时,如下所示: SE80,它导致转储。当我们查看 ASSIGN |( { ls_call-prog })PSYST| it failes 时,堆栈不包含任何 ST22,只有 /A\MP9XXX00MP9XXX00 包含 ls_call-prog)。

如前所述,我们没有设法重现和调试它。刚刚看到结果。

这些字符是从哪里来的?

我们的想法

  1. 我们认为这可能与我们的客户命名空间以 /A\MP9XXX00 开头的事实有关,但是,为什么会显示它?为什么只有几次?为什么只有前两个字符?另一个/A来自哪里?
  2. 我们认为前缀 \ 可能是临时添加到(那些)程序名称中的,比如在导入相关传输请求时。而这可能 /A\ 是为 A 准备的。让我们这么认为的原因是它在 Active/Activating 中发生的比在生产中发生的更多。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...