Skip to Content
avatar image
Former Member

Getting message No maintenance authorization for shipping point 2001

Getting message No maintenance authorization for shipping point 2001 when performing goods receipt for a STO with reference to delivery using BAPI BAPI_GOODSMVT_CREATE.

When same program is executed in program it is working fine.

We have set the SU24 for the program name as no authorization check.

For back ground do we neeed to set anything specific.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

3 Answers

  • avatar image
    Former Member
    Mar 02, 2009 at 08:44 AM

    Yep. The same also applies to couples of call transactions (see SAP note 358122) - although BAPI's by definition do not and may not check S_TCODE...

    The reason for this is because the checks can be turned off in SU24 against specific transactions. BUt when you schedule a program into a background job, then it does not have a transaction context. You will experience similar behaviour if you execute the program directly from SA38, SE38, etc.

    Generally, you have 3 options:

    - Some functions will expose a "NO_CHECK" or "NO_AUTHORITY" parameter which can be set when calling the function module. Some of them will only let you do it once Others will call themselves again with certain (usually customizable) parameters. You can look for this in the function module documentation, interface and coding.

    - Grant the authority to the user ID, and ensure that this is a SYSTEM type user segregated from the dialog users. It would then have this authority, but by design could not start the transaction directly (even if someone did logon as the user...).

    - If this object is not intended to be used at all for control in your concept, then you can globally deactivate some authorization objects using transaction AUTH_SWITCH_OBJECTS. The object will have no affect in the whole system when the ABAP application coding checks it in an AUTHORITY-CHECK object statement. The return code is always set to 0, and not only selectively...

    You need to be carefull with all 3 options, but they can all three be applied in a secure way.

    Cheers,

    Julius

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Julius,

      Thanks for your reply. Can you please give some more detilas about option 1.We are using functional module MB_POST_GOODS_MOVEMENT.I went through the functional module documentaiton but not able to find NO_CHECK" or "NO_AUTHORITY parameter.

      We cannot go for 2 because for this process we need the user to execute the program in background from their id.

      We also cannot go for option 3 as the object v_likp_vst is used in many other places.

      Thanks,

      Hemalatha A

  • avatar image
    Former Member
    Mar 09, 2009 at 09:27 PM

    Hi,

    Please goto debug and check where the authorization check is happening and modify the code. If not write custom user exit which skips the necessary authorization check.

    Regards,

    Gowrinadh

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Mar 10, 2009 at 05:08 AM

    I suppose the problem arises when you are running it in the background.

    If you can get the call transaction replaced by function module job_submit it allows you to provide a user name to be used for authorization check in the ABAP code. In which you could specify one of your system users with complete authorizations.

    Also can you let us know what version and Basis release are you working on?

    Add comment
    10|10000 characters needed characters exceeded