Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Missing authorization for plant ' '

Former Member
0 Kudos

User is missing authorization for plant ' '

User trace gives the following missing authorization

Object:

M_IS_WERKS RC=4 MCINF=S039;WERKS=' '

Can anybody help me out to find the meaning of space( ' ' ) in plant or any field?

thank you in advace

5 REPLIES 5

l_borsboom
Active Participant
0 Kudos

This means that the system checks if the user is permitted to execute this action without specifying a plant.

This could be a user error, in that case you should instruct the user to fill in the (authorized) plant.

If this is not the case then you should authorize this field (Organizational level!) with the value ' '

Kind regards,

Lodewijk

Former Member
0 Kudos

The program checks whether the user has got the authority for plant ‘’.

Maybe you are using a report, where you can select a range of plants and enterd ‘*’. Then all plants are read in table T001W. If there anyhow happens to be an entrance with plant ‘’, this error will occur. :

*  Prüfung, ob Berechtigung für die Werke existiert
  select * from t001w into table aw_hlp_t001w
                      where werks in aw_werks.

. . .

  loop at aw_hlp_t001w.
    authority-check object 'M_IS_WERKS'
             id 'MCINF' field aw_mcinf
             id 'WERKS' field aw_hlp_t001w-werks.

Which transaction/report you are using ?

0 Kudos

transaction code is MCBE

0 Kudos
*  Prüfung, ob Berechtigung für die Werke existiert
  SELECT * FROM T001W INTO TABLE AW_HLP_T001W
                      WHERE WERKS IN AW_WERKS.

  DESCRIBE TABLE AW_WERKS LINES SY-TFILL.
  IF SY-TFILL > 0.
    FLG_SELECT = 'X'.
  ENDIF.

 <b> clear aw_hlp_t001w-werks.                       " note 124769, ver.04
  collect aw_hlp_t001w.                           " note 124769, ver.04</b>
  LOOP AT AW_HLP_T001W.
    AUTHORITY-CHECK OBJECT 'M_IS_WERKS'
             ID 'MCINF' FIELD AW_MCINF
             ID 'WERKS' FIELD AW_HLP_T001W-WERKS.

There must be a reason to add an empty line, which causes the silly authority check. As far as I understand Note 124769 you have got to add plant ' '. See Note 408003: ."Create an authorization for the authorization object M_IS_WERKS which contains the value WERK = . Refer to Note 124769."

Former Member
0 Kudos

Hi Vinita,

After running the tcode when it says you dont have authorisation run tcode SU53.

It will give you the role concerned and the above error regarding Auth obj which you have mentioned.

The logic is in the authorization object M_IS_WERKS you have to add the plant names as configured for yr system. If you put * in place of the werks(plant) name, it means you granted authorisation for all plants.

The role is modified in tcode PFCG. Enter th name of the role and proceed in edit mode. Click the Authorization tab----


>Change Authorization data. Then go to utilities -


>Set tech names on. Search for auth obj M_IS_WERKS add the plants name there or put * for all plants.

Hope this helps.

Pl award suitably.

Regards