Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8944

Re: Hide a field on standard transaction for users with a specific role

$
0
0

Hi Sandeep,

 

i have no system at hand now and I don't know the /HCLRL/REG_MAINTAIN transaction. For the prefix /HCLRL/ I don't even know if it is a customer name space or a specific SAP module.

 

Anyway, I'd recommend an implicit enhancement in an existing PBO routine. Please check which dynpro the fieild in question is located. In SE80, check the dynpro process before output section. Usually here you have modules like SET_STATUS or the like. Check if any module uses a PERFORM call. If so, inside the FORM routine, place a code an enhancement before the endform. At this point, call your own function or method, a technique called modulariztion, i.e.

 

Z_MY_SCREEN_CONTROL=>disable_unauthorized_field( ).

 

The method (or function) shoud have code like

 

AUTHORITY-CHECK .... "find out details about object and field valiues

CHECK SY-subrc <> 0."Not authorized, hide the field

LOOP AT SCREEN.

  IF SCREEN-NAME = '<your screen field>.

    screen-active = 0. "Will remove the field from screen

*    screen-input = 0. "Will disable input, grey out field

*    screen-invisible = 1. "Will show * for input (passwords)

    MODIFY SCREEN.

ENDIF.

ENDLOOP.


Regards, Clemens


Viewing all articles
Browse latest Browse all 8944

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>