当前位置 : 主页 > 编程语言 > java >

SA*P 自定义权限对象

来源:互联网 收集:自由互联 发布时间:2022-07-13
原创/版权说明: ​ --本文系个人原创,与SAP官方没有任何关系,若有侵权请联系本人处理,谢谢! SA*P系统自带了很多的权限对象,每一个运行画面都有非常多的权限用到。不过标准的


原创/版权说明:

--本文系个人原创,与SAP官方没有任何关系,若有侵权请联系本人处理,谢谢!


SA*P系统自带了很多的权限对象,每一个运行画面都有非常多的权限用到。不过标准的权限对象并不一定适合于用在客户自己开发的程序里面,所以每个ABAPer都应该会自己开发一套权限对象,并引用在程序代码里面。一旦有账号需要赋予权限,直接用SA*P系统标准的角色权限配置就可以了。

SA*P权限对象一整套流程如下:

  • SE11:创建Domain/数据类型
  • SU20:创建权限字段(非必需,可用系统标准的,除非自定义)
  • SU21:创建权限对象
  • SE38:新建程序,引用权限对象
  • SE91:创建事务代码
  • SU24:事务代码分配权限对象
  • SU01/PFCG:权限维护值

一、SE11创建Domain和数据类型

除非你是要做到在后续权限维护值的时候可以很直观让权限管理员知道应该怎么维护,否则Domain并非必须要的。

SA*P 自定义权限对象_分配权限


SA*P 自定义权限对象_权限对象_02


注意,上图这个地方Value Range其实可以不用维护的,不影响,但只是为了维护权限时的一个值的参考而已,让维护者知道怎么维护即可。

激活,Domain就创建结束了。

接下来还是SE11,创建数据类型

SA*P 自定义权限对象_字段_03


将刚才创建的Domain引用上去,当然如果没有Domian,直接在下面的Data Type维护类型即可。

至此,第一步算是结束了。

二、创建权限字段

SA*P 自定义权限对象_分配权限_04


SA*P 自定义权限对象_字段_05


新建的权限字段为ZPC_FIELD,数据元素就用上一步创建的ZPC,保存,新建请求。

三、创建权限对象

SA*P 自定义权限对象_权限对象_06


在创建权限对象之前,先创建对象类,如果已经存在需要的对象类,则忽略。

SA*P 自定义权限对象_权限对象_07


保存。

接下来创建权限对象:

SA*P 自定义权限对象_权限对象_08


填入前面创建的对象,此时点击创建对象文档,维护一下权限的一些描述:

SA*P 自定义权限对象_权限对象_09


四、创建程序,并应用此权限

SA*P 自定义权限对象_分配权限_10


点击模式,输入权限对象:

SA*P 自定义权限对象_分配权限_11


激活。

五、创建事务代码

程序开发结束之后,就开始创建事务代码:

SA*P 自定义权限对象_分配权限_12


六、对事务代码分配权限对象

这个步骤其实经常被很多业务和开发顾问忽略,但其实这个步骤是非常重要的。

这个操作的作用在于当IT在角色里面分配相关事务代码权限的时候,系统会自动将该事务代码分配的权限对象带出来让IT配置里面的权限值。因为分配权限的人员往往不是开发人员,他们并不知道该事务代码具体是做了哪些权限的卡控,因此分配权限的时候往往会出现只有该事务代码开启的权限,而无法做任何进一步执行的动作

而该步骤就是保证每个事务代码所用到的的权限对象都能够完整被带出来!

SA*P 自定义权限对象_分配权限_13


SA*P 自定义权限对象_字段_14


SA*P 自定义权限对象_字段_15


SA*P 自定义权限对象_字段_16


之后再点击保存即可。

七、维护权限值

SA*P 自定义权限对象_权限对象_17


对事务代码ZTEST28授权

SA*P 自定义权限对象_字段_18


之后修改权限数据:

SA*P 自定义权限对象_权限对象_19SA*P 自定义权限对象_权限对象_20


对当前账号赋予04:显示的权限(跟程序里要求创建的权限不一致,所以会提示没权限!)

SA*P 自定义权限对象_字段_21


重新生成参数权限就大功告成了!

经过以上几个步骤之后,运行事务代码ZTEST28,会提示:

SA*P 自定义权限对象_权限对象_22


如果权限字段赋予:01 新建,则运行程序会提示:

SA*P 自定义权限对象_字段_23


至此,权限全部完工。

对了,关于权限的描述文字,可以在赋予权限的地方看到(双击):

SA*P 自定义权限对象_分配权限_24


END




SA*P 自定义权限对象_字段_25


本文作者 | SAP梦心




上一篇:无关紧要之事不争不辩,是成熟的表现
下一篇:没有了
网友评论