事务码 SU21 可以用来维护权限对象,但是它有一个致命缺陷,就是必须先找对象分类,然后双击进入某个分类才可以看到具体权限对象,如果我们不知道权限对象在哪个分类里,查找就很困难了。
事务码 SU21 可以用来维护权限对象,但是它有一个致命缺陷,就是必须先找对象分类,然后双击进入某个分类才可以看到具体权限对象,如果我们不知道权限对象在哪个分类里,查找就很困难了。
下面的程序直接读出所有的权限对象,显示到 LIST 中,用系统工具栏上的搜索功能就可以快速查找所需的权限对象。
Code
REPORT zsu21 LINE-SIZE 86.
TABLES: tobj, tobjt.
DATA: itvl type i.
FORMAT COLOR 1.
WRITE:/1 sy-vline, 3 'Object'(c01), 14 sy-vline, 16 'Description'(c02), 78 sy-vline, 80 'Class', 86 sy-vline.
ULINE.
itvl = 0.
FORMAT INTENSIFIED OFF.
SELECT * FROM tobj.
IF itvl EQ 0.
FORMAT COLOR 4.
ELSE.
FORMAT COLOR 2.
ENDIF.
SELECT SINGLE * FROM tobjt WHERE object = tobj-objct AND langu = sy-langu.
WRITE:/1 sy-vline, 3 tobj-objct, 14 sy-vline, 16 tobjt-ttext, 78 sy-vline, 80 tobj-oclss, 86 sy-vline.
HIDE: tobj-objct.
itvl = 1 - itvl.
ENDSELECT.
ULINE.
CLEAR tobj.
AT LINE-SELECTION.
IF tobj-objct EQ space.
CALL FUNCTION 'SUSR_ADD_OBJECT'
EXPORTING
OBJECT = ' '
OCLASS = ' '
EU_MODE = ' '
* IMPORTING
* OBJECT =
* OCLASS =
.
ELSE.
CALL FUNCTION 'SUSR_SHOW_OBJECT'
EXPORTING
object = tobj-objct
eu_mode = 'X'.
ENDIF.
注:最新发现,在 NetWeaver 7.0 中,搜索功能已经增强,可以直接查询到具体的权限对象,而无需再点分类进入了,因此本程序适用于 NetWeaver04 及以前版本。