为什么AUTHORITY-CHECK给出的结果与功能模块AUTHORITY_CHECK不同?

2020-08-22 16:01发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我们有时对具有活动性'03'(或...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们有时对具有活动性'03'(或'02')的S_DEVELOP使用AUTHORITY-CHECK来控制是否应打开选择屏幕上的字段以供输入:

 *只有开发人员可以更改要选择的最大项目数
   权限检查对象" S_DEVELOP"
            ID" DEVCLASS"假人
            ID" OBJTYPE"假人
            ID" OBJNAME" DUMMY
            ID'P_GROUP'DUMMY
            ID" ACTVT"字段" 03"。

   IF sy-subrc NE 0。
     将屏幕环入数据(ls_screen)。
       IF ls_screen-group1 EQ'DEV'。
         ls_screen-input ='0'。
         从ls_screen修改屏幕。
       万一。
     结局。
   万一。
 

现在,我们在测试期间遇到了一个案例,该案例中,不是开发人员的用户通过了SY-SUBRC = 0的检查,并且我们不明白为什么会这样,因为我们看不到与开发人员相关的情况 在他的个人资料中扮演的角色。 如果我们通过SE37和功能模块AUTHORITY_CHECK以及ID和FIELD的相应值来检查用户,则将返回预期的错误USER_NOT_AUTHORIZED:

程序和功能模块中的实际权限检查不会产生相同的结果吗? 说实话,我发现他们没有这样做是"令人不安的"! 还是我们错过了什么? 是的,我注意到FM未"发布"。

我试图找到有关此内容的信息,但是在搜索" Authority-check"时找到的许多匹配项确实有点困难!

我们正在使用NW750 EHP8

非常感谢和欢呼

贝尔贝尔

fm-authority-check.jpg (76.3 kB)