cancel
Showing results for 
Search instead for 
Did you mean: 

Released sales order can not change

Former Member
0 Kudos

Dear Guru,s

One of my clients business process is sales order then invoice. In this business scenario sales process in SAP as follow:

sales order will create by end-users and it will release by authorized person, then again invoice will create by end-users and its release by authorized person.

To map this scenario we set "billing-block" in sales order document type and it can remove only by authorized person's id. End-users suppose to have authorization of "VA02" because price and quantities of items can vary. Due to this reason user can do edit in released sales order.

Now our requirement is once the sales order has been released by authorized person it can not be edit by end-users or changes done by end-users in released sales order will easily trace by authorized person.   

we have already tried status management in our process but its not fulfill our requirement. 

If you have any doubt in my query please let me know.

Help me ASAP.

Thanks in Advance.

AJC

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Dear Ashish

With the help of BASIS you create two authorization groups one for End User and one for Releasing user.

In the end user authorization group tell the basis team to make VA02 inactive if the object status of that sale order is released.

FYI, you can try with tables

JEST Object Status.

The Structure VBSTT used to filled the data in VBUK and these values come via TVBST and TVSLT.

if your Basis team can control the changes in these tables not by end user, you can easily meet your requirement.

Thanking you!

Ashish Mishra

Former Member
0 Kudos

Dear Ashish,

First of all thanks for your valuable inputs, but in my earlier post I have already stated that

For your information this Clint is Project based Clint, we had implemented PS Module also.

For this particular Clint we had configured manual pricing and two type of item category, "TAX" (Non-stock item)and "TAO"(milestone billing plan)

Now any sales-order with "Tao" need to maintain billing plan under "billing plan" tab, in this case billing block should not appear.

That's mean end-users suppose to have the authorization of VA02, because they need to maintain billing plan under "billing plan" tab, for generate invoice

My actual requirement is

in VA02 if any user make changes on item quantity, or in price, or add/delete items, chenge in WBS element, then only billing block will appear in the time of saving the respective doc.

Hope this will understands you better

Regards

AJC

moazzam_ali
Active Contributor
0 Kudos

In standard SAP this is not possible.

I have some suggestion if your client agrees on this.

Create sale order with VA01 with billing block.

Release sale order in VA02 by some authorized users.

Again if end user open orders in VA02 for any change block it again with billing block. ABAPER will do this in user exit MV45AFZZ. Logic will be if Tcode is VA02 and document type is ZABC then field billing block = 01 or whatever billing block reason you have. I don't have system right now so i can't write exact technical names but I think you understand my logic. If not then do let me know.

Now authorize person will again release changed order.

Tell you end users if they want to display order open it in VA03. If they open any order in VA02 it will be blocked again.

Check if this fulfill your requirement. We are doing the same in our company for some specific order type and specific user.

Thanks

Former Member
0 Kudos

Hi Ali,

Thanks for your reply.

I got your logic, if it is possible then will you please explain in details what should I exactly tell to my ABAP team to do the same.

Thanks

AJC

moazzam_ali
Active Contributor
0 Kudos

Yes sure. Please ask your client if they are agreed on this solution. If you need my help regarding this logic I will tell you exactly the logic and user exit where you can implement this.

Thanks

Former Member
0 Kudos

Yes they may agree, please HELP.

Thanks

AJC

moazzam_ali
Active Contributor
0 Kudos

Hi Ashish

please ask your ABAPER to execute MV45AFZZ program in SE38 and implement implicit enhancement in user exit USEREXIT_MOVE_FIELD_TO_VBKD. Your ABAPER must knows all this that how to implement implicit enhancements.

Logic will be

IF sy-tcode = 'VA02'.

  IF (  vbak-auart = 'ZOWS' or

        vbak-auart = 'ZODS' or    .

    vbak-lifsk = '01'.

  else.

  endif.

ENDIF.

This logic is that If Tcode is VA02 and Sale order type is ZOWS or ZODS then delivery block will be set as 01 which is credit limit I think. You can modify this as per your own requirement If you need to make it user specific or some other specific criteria.

moazzam_ali
Active Contributor
0 Kudos

Have you checked or not?

Former Member
0 Kudos

Hi Ali,

First of all my ABAP Team Members were busy with another program that's why I can not reply on the same.

Now as per your explanation in VA02 if salesdoctyp is "zows" or "zods" , billing block will automatically appear right, but our requirement is litle bit different., in VA02 if any user make changes on item quantity, or in price, or add/delete items, chenge in WBS element, then only billing block will appear in the time of saving the respective doc.

For your information this Clint is Project based Clint, we had implimented PS Module also.

For this particular Clint we had configuered manual pricing and two type of item category, "TAX" (Non-stock item)and "TAO"(milestone billing plan)

Now any sales-order with "Tao" need to maintain billing plan under "billing plan" tab, in this case billing block should not appear.

Any further doubt please let me know.

Help Me ASAP

AJC

moazzam_ali
Active Contributor
0 Kudos

Hi Ashish

This is totally depends on your ABAPER's skills. You have to sit with him and ask him to write this logic and control this in this user exit I provided above.  There is no other way.

But i will recommend you to ask your end users to display order with VA03 and open order in VA02 only when they have to change something so it will be easy for ABAPER to write logic that if Tcode is VA02 then billing block is 01 or what ever. End users will be careful opening VA02. This will be trigger on save so if they change anything the order will be in display. You can control this logic item category, sale document type or sale area wise.

Thanks

Former Member
0 Kudos

Hi Ashish ,

I don't think that we have any option in standard SAP to meet your requirement. This can be achieved through authorization with the help of BASIS consultant. In the Authorization check, provide the access to edit the "Billing Block" only for few authorized users through VA01 and VA02.

Regards

Vinu