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