|
<< Click to Display Table of Contents >> Navigation: All About ABAP Technique > Indonesia > ABAP Tutorial > ABAP Workbench Tools > Enhancement > Customer Exits > Contoh Customer Exits > Project ZSDWS001 > Funtions Exits > EXIT_RMCREPAU_001 > ZXMC0U02 |
*&---------------------------------------------------------------------*
*& Include ZXMC0U02 *
*&---------------------------------------------------------------------*
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_MCINF) LIKE TMC4-MCINF
*" VALUE(I_ROLLNAME) LIKE DFIES-ROLLNAME
*" VALUE(I_DOMNAME) LIKE DFIES-DOMNAME
*" TABLES
*" T_SEL_OPTION STRUCTURE RSPARAMS
*" CHANGING
*" REFERENCE(C_FLG_END_CHECK) LIKE SY-DATAR
*"----------------------------------------------------------------------
tables: T2501,T2500,TVM5, TVKGR.
DATA BEGIN OF gw_t2501 occurs 0.
INCLUDE STRUCTURE t2501.
DATA END OF gw_t2501.
DATA BEGIN OF gw_t2500 occurs 0.
INCLUDE STRUCTURE t2500.
DATA END OF gw_t2500.
DATA BEGIN OF gw_tvm5 occurs 0.
INCLUDE STRUCTURE tvm5.
DATA END OF gw_tvm5.
DATA BEGIN OF gw_tvkgr occurs 0.
INCLUDE STRUCTURE tvkgr.
DATA END OF gw_tvkgr.
data: gw_selname like T_SEL_OPTION-SELNAME.
*** Check authorization for RSM ******
IF I_ROLLNAME = 'RKEG_WW002'.
move T_SEL_OPTION-SELNAME to gw_selname.
select * from T2501.
AUTHORITY-CHECK OBJECT 'Z_WW002'
ID 'RKEG_WW002' FIELD t2501-ww002.
if sy-subrc ne 0.
move-corresponding t2501 to gw_t2501.
append gw_t2501.
endif.
endselect.
loop at gw_t2501.
T_SEL_OPTION-SELNAME = gw_selname.
T_SEL_OPTION-KIND = 'S'.
T_SEL_OPTION-SIGN = 'E'.
T_SEL_OPTION-OPTION = 'EQ'.
T_SEL_OPTION-LOW = gw_t2501-ww002.
T_SEL_OPTION-HIGH = ''.
append T_SEL_OPTION.
endloop.
if sy-subrc = 0.
MESSAGE I910(V1).
* Anda tidak punya otorisasi untuk RSM tertentu.
endif.
ENDIF .
*** Check authorization for ASM ******
IF I_ROLLNAME = 'RKEG_WW001'. "ASM
move T_SEL_OPTION-SELNAME to gw_selname.
select * from T2500.
AUTHORITY-CHECK OBJECT 'Z_WW001'
ID 'RKEG_WW001' FIELD t2500-ww001.
if sy-subrc ne 0.
move-corresponding t2500 to gw_t2500.
append gw_t2500.
endif.
endselect.
loop at gw_t2500.
T_SEL_OPTION-SELNAME = gw_selname.
T_SEL_OPTION-KIND = 'S'.
T_SEL_OPTION-SIGN = 'E'.
T_SEL_OPTION-OPTION = 'EQ'.
T_SEL_OPTION-LOW = gw_t2500-ww001.
T_SEL_OPTION-HIGH = ''.
append T_SEL_OPTION.
endloop.
if sy-subrc = 0.
MESSAGE I911(V1).
* Anda tidak punya otorisasi untuk ASM tertentu.
endif.
ENDIF.
*** Check authorization for Product Group 5 ******
IF I_ROLLNAME = 'ZMVGR5'. "Product Group 5
move T_SEL_OPTION-SELNAME to gw_selname.
select * from TVM5.
AUTHORITY-CHECK OBJECT 'Z_MVGR5'
ID 'ZMVGR5' FIELD TVM5-MVGR5.
if sy-subrc ne 0.
move-corresponding tvm5 to gw_tvm5.
append gw_tvm5.
endif.
endselect.
loop at gw_tvm5.
T_SEL_OPTION-SELNAME = gw_selname.
T_SEL_OPTION-KIND = 'S'.
T_SEL_OPTION-SIGN = 'E'.
T_SEL_OPTION-OPTION = 'EQ'.
T_SEL_OPTION-LOW = gw_tvm5-mvgr5.
T_SEL_OPTION-HIGH = ''.
append T_SEL_OPTION.
endloop.
if sy-subrc = 0.
MESSAGE I912(V1).
* Anda tidak punya otorisasi untuk Product Group tertentu.
endif.
ENDIF.
*** Check authorization for Sales Group ******
IF I_ROLLNAME = 'VKGRP'. "Sales Group
move T_SEL_OPTION-SELNAME to gw_selname.
select * from tvkgr.
AUTHORITY-CHECK OBJECT 'Z_VKGRP'
ID 'VKGRP' FIELD Tvkgr-VKGRP
ID 'ACTVT' dummy.
if sy-subrc ne 0.
move-corresponding tvkgr to gw_tvkgr.
append gw_tvkgr.
endif.
endselect.
loop at gw_tvkgr.
T_SEL_OPTION-SELNAME = gw_selname.
T_SEL_OPTION-KIND = 'S'.
T_SEL_OPTION-SIGN = 'E'.
T_SEL_OPTION-OPTION = 'EQ'.
T_SEL_OPTION-LOW = gw_tvkgr-vkgrp.
T_SEL_OPTION-HIGH = ''.
append T_SEL_OPTION.
endloop.
if sy-subrc = 0.
MESSAGE I914(V1).
* Anda tidak punya otorisasi untuk Sales Group tertentu.
endif.
ENDIF.