1、用户输入t-code后只展示有公司代码权限的数据

 


1 LOOP AT extract.
2   DATA(lv_tabix) = sy-tabix.
3   PERFORM auth_bukrs USING view_action.
4   IF sy-subrc <> 0.
5     DELETE extract INDEX lv_tabix.
6   ENDIF.
7 ENDLOOP.
8 DESCRIBE TABLE extract LINES maxlines.

View Code


 1 DATA:lv_actvt TYPE tact-actvt,
 2      lv_sellist TYPE vimsellist.
 3 CONSTANTS:lv_bukrs TYPE dd03p_d-fieldname VALUE 'BUKRS',
 4           lv_actvt_display TYPE tact-actvt VALUE '03',
 5           lv_actvt_change TYPE tact-actvt VALUE '02',
 6           lv_actvt_create TYPE tact-actvt VALUE '01'.
 7 FIELD-SYMBOLS:<fs> TYPE any,
 8               <fs_bukrs> TYPE bukrs.
 9 sy-subrc = 0.
10 CASE p_view_action.
11   WHEN aendern."change
12     lv_actvt = lv_actvt_change.
13   WHEN anzeigen."diaplay
14     lv_actvt = lv_actvt_display.
15   WHEN neuer_eintrag."create
16     lv_actvt = lv_actvt_create.
17   WHEN OTHERS.
18     RETURN.
19 ENDCASE.
20 
21 IF lv_actvt = lv_actvt_create.
22   CHECK vim_object IS NOT INITIAL.
23   ASSIGN (vim_object) TO <fs> CASTING TYPE (vim_object).
24 ELSE.
25   ASSIGN extract TO <fs> CASTING TYPE (vim_object).
26 ENDIF.
27 
28 ASSIGN COMPONENT lv_bukrs OF STRUCTURE <fs> TO <fs_bukrs>.
29 IF sy-subrc <> 0 OR <fs_bukrs> IS INITIAL.
30   RETURN.
31 ENDIF.
32 
33   AUTHORITY-CHECK OBJECT 'F_BKPF_BUK'
34              ID 'BUKRS' FIELD <fs_bukrs>
35              ID 'ACTVT' FIELD lv_actvt.
36   IF sy-subrc <> 0 AND lv_actvt = lv_actvt_create.
37     MESSAGE e800(fr) WITH <fs_bukrs> .
38   ENDIF.

View Code

 

 2、点击新增按钮、校验输入数据权限

表维护生成器–>环境—>修改—>事件  新增05的子例程form 

3、校验用户修改原来的数据、PAI中加代码

 

原文地址:http://www.cnblogs.com/coderfarmer/p/16851248.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性