当我们尝试分析授权问题(SU53、SU24……)时,有许多不同的交易很有用。
但是,在某些情况下,在调试中检查授权对象很有用。
这很有用,例如,如果我们想确切地知道在事务执行的哪个点调用了给定的授权对象,或者为给定的操作调用了哪些授权对象。
在这种情况下,我们可以在调试中检查授权对象,使用语句 AUTHORITY-CHECK 的断点,该语句用于检查 ABAP 上的授权。
下面我们分析一个例子,debug下单时如何检查权限。
在这里,我们想知道正在调用哪个授权对象来控制生产订单的发布。
- 第一步是在事务 CO02 上打开生产订单。
- 在发布命令之前,我们在命令中键入“/H”以打开调试并按回车键。
- 现在点击释放按钮,应该会触发调试。
- 在这里,选择菜单'Breakpoints' - 'Breakpoint at' - 'Breakpoint at statement'
- 现在,在命令“AUTHORITY-CHECK”上创建断点,如下图所示
- 按 F8 键,系统将恰好停在调用权限检查的代码段上。
在这里,我们可以看到正在检查授权对象 B_USERST_T,我们还可以确切地看到正在检查哪些值。