10-26-2007 10:04 AM
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
10-26-2007 10:47 AM
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
10-26-2007 10:54 AM
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 ?
10-26-2007 10:56 AM
10-26-2007 2:12 PM
* 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."
10-27-2007 11:19 AM
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