Friday, June 16, 2017

Authorization Check for Reservation Plant


FORM CHECK_AUTHORIZATION.

DATA BEGIN OF lt_werks OCCURS 0,
         werks LIKE t001w-werks,
         END OF lt_werks.

  SELECT werks INTO TABLlt_werks
                    FROM t001w
                    WHERE werks IN s_plant."Here s_plant is selection parameter plant
  REFRESH s_plant.
  CLEAR s_plant.

LOOP AT lt_werks.
   AUTHORITY-CHECK OBJECT 'M_MRES_WWA' FOR USER SY-UNAME
    ID 'WERKS' FIELlt_werks-werks
    ID 'ACTVT' FIEL'03'.

    IF -sysubrc EQ 0.
      s_plant-sign    = 'I'  .
      s_plant-option  'EQ' .
      s_plant-low     lt_werks-werks.
      APPEND s_plant.
    ENDIF.
ENDLOOP.

IF s_plant is INITIAL.
  MESSAGE 'No authorization for the Plant' TYPE 'E'.
ENDIF.
ENDFORM.

No comments:

Post a Comment