AUTHORITY-CHECK 实例操作

本文只针对在程序中进行权限检查。

首先确定用户在程序中的检查项,例如我只针对下图中的工厂进行检查。

打开T-CODESU21   对象类别清单

点击新建

出现下图对话框

对象类别处输入你要建立的权限对象类名称,这里做一下说明。对象类是由多个对象组成的类包。然后输入文本说明文字。保存

完成以后可以在对象列表中查看。

双击COTS进入,然后点新建

出现下图显示。

在对象处输入你要建立的对象名称、文本。

在授权字段处输入要在程序中检查的权限项,本文用的是工厂所以输入WERKS

如图

完成后点击保存。到此权限的对象设置完毕。

下面是在角色中添加刚刚设置的权限对象。

打开T-CODE: PFCG

ROLE处输入角色名称此处我输入的是ZTEST_AUTHORITY-CHECK

点击 进入角色创建界面。

输入描述文本。点击权限选项卡会出现保存提示。确定以后,点现在的

在出现的界面中选择人工的。如下图:

在授权对象处输入或者选择刚刚新建立的Z_WERKS_TS对象

确定后会出现下图显示

点击 修改权限设置。此处输入能够访问的工厂。

完成后点击 生成角色。

提示参数文件名称点击 完成角色设置。

最后在用户主数据中加入刚刚建立的角色。T-CODE:SU01

输入用户名后点击修改,进入角色选项卡。

输入建立的角色

保存完成。

最后在程序中加入权限检查代码。

因为程序中用的是 SELECT-OPTIONS: s_werks FOR it_zco002-werks.

所以工厂很有可能 是多个集合在此要循环这个集合。

代码如下:

在AT SELECTION-SCREEN.后面加入下列代码

**************************************************加入代码开始

AT SELECTION-SCREEN ON s_werks.

  SELECT werks FROM t001w INTO TABLE l_xu_t001w WHERE werks IN s_werks.

  LOOP AT l_xu_t001w.

    AUTHORITY-CHECK OBJECT 'Z_WERKS_TS'

             ID 'WERKS' FIELD l_xu_t001w-werks .

    IF sy-subrc NE 0.

      MESSAGE  e398(00) WITH '你在' l_xu_t001w-werks '工厂中没有权限执行成本还原!'.

      EXIT.

    ENDIF.

  ENDLOOP.

**************************************************加入代码结束

说明:

AUTHORITY-CHECK OBJECT 'Z_WERKS_TS'    Z_WERKS_TS 就是前面建立的权限对象

   ID 'WERKS' FIELD l_xu_t001w-werks . WERKS是对象对面包含的字段

 

 下载地址:http://files.cnblogs.com/krikxu/AUTHORITY-CHECK.rar

转载于:https://www.cnblogs.com/krikxu/archive/2008/10/14/1310909.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值