以其他用户身份调试

时间:2019-04-18 09:19:03

标签: sap abap saprfc

我已经编写了一个ABAP功能模块,如果使用我的开发人员帐户执行该模块,该模块可以正常工作。

如果另一个用户执行它,他将得到一个空结果。另一个用户是无法使用sap gui登录的RFC帐户。

我不知道如何调试它。如何执行/调试功能模块并假装为其他用户?

我正在使用Windows原生的sap gui和se80。

1 个答案:

答案 0 :(得分:9)

如果将SAP用户定义为“对话框”或“服务”类型(交易代码for y in range(28): for x in range(28): if myarray[y,x] < 50: myarray[y,x] = random.randint(80,100) ),则使用SAP GUI(以该用户身份登录并进行调试)在技术上是可行的。

如果将SAP用户定义为“通讯”或“系统”类型,则根本不可能。

您可以看到,这是一项安全措施:如果您有一个在给定的SAP用户下运行的Web服务,则该用户不能直接用于SAP GUI,以限制可能的攻击。<​​/ p >

因此,我认为唯一合理的解决方案是在调试期间临时使用另一个“服务”类型的SAP用户,或更改SAP用户的类型。

可以通过选择要调试的用户来调试其他用户,这可以通过Eclipse ADT调试属性,也可以通过ABAP Workbench ABAP调试设置来完成,具体取决于您使用的集成开发环境。

另一种解决方案是,如果您可以临时更改代码,添加无限循环(SU01),请通过事务DO. ENDDO.菜单管理->程序-调试正在运行的程序。 >调试,应打开一个指向循环的调试对话框,将光标放在循环后的行上,然后按F12键从该处继续。