cancel
Showing results for 
Search instead for 
Did you mean: 

prevent currency changes to sales order documents

Former Member
0 Kudos

Key Words: SD, Sales Order, Currency

System: R/3 4.6D

Is there a configurations setting to prevent currency changes to sales order documents if any transactions have transpired?

Situation:

Changes to currency should only be made before any transactions post against a sales order. Once transactions have begun, the order should be de-booked if a currency change is needed. SAP will not stop anyone from actually making the change. We would like to have SAP not allow any currency changes after any activity (other than saving the sales order) has occurred.

Thanks in advance

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

One can make the change in the user-exit for the sales document.

In the user-exit, MV45AFZZ, changes can be made to the function

FORM USEREXIT_FIELD_MODIFICATION in include MV45AFZZ

Where one can check if the transaction has begun for the order, the field for currency cannot be changed.

or

Make a transaction variant thru SHD0 and assign it to your sales doc. While creating the variant you can place non-changeability ticks on specific fields. Next allow those users only to work with your transaction variant but not with the original transaction.

Regards,

Gauravjit

Reward Points if solution is helpful

Regards,

Gauravjit.

Reward Points if solution is helpful.

Former Member
0 Kudos

Thanks Gauravjit,

You answered my question. There is not way to prevent currency changes to sales order documents via configuration (SPRO).

The second solution you provided…will be able to disable the field based on some logic...that is if the SD document has any following document then disable the field.

Ex. If a quote does not have any follow-on document, i.e. a Sales Order, the the field is enabled and editable. If on the other hand a Sales Order has been created from the quote, then the field is disable in both the documents.

If I am able to add logic when the variant is applied or not, where would I put the code? In FORM USEREXIT_FIELD_MODIFICATION in include MV45AFZZ?

Thanks,

Naing

Former Member
0 Kudos

Yes you can put the code In FORM USEREXIT_FIELD_MODIFICATION in include MV45AFZZ.

Regards,

Gauravjit

Reward points if solution was helpful.