cancel
Showing results for 
Search instead for 
Did you mean: 

Removing of Delivery block in Sales Order using Authorization

Former Member
0 Kudos

Hello,

I have a urgent requirement on removing a Delivery block using authorization.

The object V_VBAK_AAT is assigned to me and the ACTVT : 43 is permitted so I can release the block.

As this was  not working I have created my own object with values ACTVT as 01, 02 , 43 and LIFSK : 1-10,11,12-99 .

I am trying to remove the block from VA14L from VA14L I select my order with respect to delivery block and it navigates to VA02.

From VA02 I am trying to remove the block.

As this requirement may be simple but it is blocking my development.

Thanks.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Please correct whether I understood your issue correctly or not.


You have developed the program only to put delivery block to Sales Order. This block should be approved by Authorized people for allowing the users to create delivery else Sales order delivery should not be possible. Is that program has any other additional functionality other than setting Delivery block??

To keep delivery impossible till the Authorized person approves Sales order, you have the option of User Status. Process for creation of User Status for your requirement

  • Create User Status Profile in OIBS
  • Keep BLCK (Blocked for Delivery) & APPR (Approved for Delivery) as 2 statuses (No. of status can be as per your requirement. Here, simply I have 2 statuses)
  • Assign Object types as "Sales Order Header" (if you want the Authorized people to approve at header level) or "Sales Order Item" (if you want the Authorized people to approve at Item level, may be for partial delivery)
  • Keep BLCK as Initial status & Double click on BLCK status & click New entries on "Business transactions"
  • There are many Business transactions such as "Create Delivery" / "Create Goods Issue for delivery". As per your requirement, select Forbidden option in one of the above mentioned business transaction
  • Create Authorization Key in BS52 for Authorized People, say, as MNGR (Manager)
  • Assign that Authorization Key to APPR user status in User status profile
  • Using PFCG, you can create separate role by assigning this Authorization key

This can be different kind of solution from your way. For reference, you can refer below document. Document content points some other space & transaction. But you can relate to above steps mentioned.

Former Member
0 Kudos

Hello Mahesh,

Thanks you for your answer.

I will try this solution and get back to you.

But, I just want to understand the relationship between Authorization and program.

If I have a authorization to remove the block , irrespective of what the program does the block will it be removed.

Thanks.

Former Member
0 Kudos

Its about by which business transaction, delivery block is getting set.

Its about the condition which will be checked before setting delivery block.

For example, Delivery block is getting set while saving Sales order, then even though Authorized person removes delivery block & while saving, program may set delivery block.

Former Member
0 Kudos

Hi Mahesh,

I think now you got to the point where I was confused.

The program sets the delivery block if the condition is met (say A = B).

So, even if I am authorized to remove the block , the program is any way going to set the block.

So can I use the logic of auth object and remove the block at transaction level.

Thanks.

Former Member
0 Kudos

Based on the Authorization object assigned to role & role assignment to the user, while saving the order, you can either set the delivery block.

former_member297605
Active Participant
0 Kudos

Hi Vishnu

Best thing to do would be to trace in ST01 and see what its failing on.

cheers

andrea_brusarestelletti
Active Contributor
0 Kudos

Hello,

beside ST01 you can also use SU53 transaction to check missing authorizations. You wrote "


From VA02 I am trying to remove the block

and then, what happens?! Error message? Or something else?

You should also explain better how you built the custom authority-check for the new authorization object.

Best regards,

Andrea

Former Member
0 Kudos

HI Andrea,

As you said I would like to explain my scenario.

Sequence:

1. VA14L --> enter the sales doc number and sales og number.

2. select the Sales order number (in turn opens VA02 screen).

3. In the dropdown for the delivey block if I blank the value and save the message which I get is document processed successfully.

4. SU53 : The message : last authorisation was successful.

5.The authorisation object Z* is built with fields:

ACTVT : 02, 03, 43

LIFSK : 1-10, 11, 12-99.

One more point I would like to add, there is a user exit in which a custom code is implemented

which sets the delivery block when the sales order is  saved.

If i have a authorisation to delete the block how will it work in my case, will the program overwrites the Authorisation.

Thanks.

andrea_brusarestelletti
Active Contributor
0 Kudos

Hello,

  and in your case, the block is not deleted even if you should have the authorization?

Best regards,

Andrea

Former Member
0 Kudos

Hi Andrea,

Yes I do have the authorization but the block is not being removed.

The user exit code sets it back .

THanks.

andrea_brusarestelletti
Active Contributor
0 Kudos

Hello,

  this is not an authorization problem: you should debug the exit implementation where the authority-check on the custom object is performed, and understand why you are not passing the authority check.

Best regards,

Andrea

Former Member
0 Kudos

Hi Vishnu,

Did you check the this new authorization object is assigned to VA01 or VA02 transactions in SU24.

Regards,

Satya

Former Member
0 Kudos

Hi Satya,

Thanks for your quick response.

The new object is assigned for VA14l as I enter VA14l to check my orders.

Does this object need to be assigned to VA02 also?

Thanks.