Function documentationApproval Process for Price Changes in Sales Orders

 

You can use this function to allow only certain employees to manually change prices calculated by the system in the sales order. If the employee is not authorized to change prices, the system triggers an approval process.

You can find more information about this process in the workflow document Workflow for Approving Condition Change for Documents.

Prerequisites

  • In SAP CRM Customizing, you have assigned the action profiles ORDER_STOP_BILLING and ORDER_STOP_SHIPPING, delivered as standard by SAP, to the appropriate transaction type in which you want to use this function. The system uses the action profiles to check whether manual price changes are executed. The system also checks whether the user can change prices without triggering the approval process. You make these settings in Customizing for Customer Relationship Management, by choosing Start of the navigation path Basic Functions Next navigation step Actions Next navigation step Actions in Transaction Next navigation step Assign Action Profile to the Business Transaction Type End of the navigation path.

  • You have created appropriate status profiles. Use the status profiles CRMSTBILL and CRMSTSHP (available as standard) as templates. You can find more information in Customizing for SAP Customer Relationship Management, by choosing Start of the navigation path Transactions Next navigation step Basic Settings Next navigation step Status Management Next navigation step Change Status Profile for User Status End of the navigation path.

  • Assign this status profile to the transaction type you want to use.

  • You have determined a billing block reason in SAP CRM Customizing. You must enter the value "30" for the reason. If you choose a different value, you also have to change the processing parameter BLOCKING_REASON in the action definition STOP_BILLING, in action profile ORDER_STOP_BILLING (for more information, choose Start of the navigation path Basic Functions Next navigation step Actions Next navigation step Actions in Transaction Next navigation step Change Actions and Conditions Next navigation step Define Action Profiles and Actions End of the navigation path in Customizing for Customer Relationship Management).

    You make the required settings in Customizing for Customer Relationship Management, by choosing Start of the navigation path Transactions Next navigation step Basic Settings Next navigation step Status Management Next navigation step Define Reasons for Billing Block End of the navigation path.

    You also need to define a billing block reason in SAP ECC Customizing. Define the value "30" for the billing block (Block field) here as well.

    You make these settings in SAP ECC Customizing, at Start of the navigation path Sales and Distribution Next navigation step Billing Next navigation step Billing Documents Next navigation step Define Blocking Reason For Billing End of the navigation path.

  • You have determined a delivery block reason in SAP CRM Customizing. You must enter the value "30" for the reason. If you choose a different value, you also have to change the processing parameter BLOCKING_REASON in the action definition STOP_SHIPPING, in action profile ORDER_STOP_SHIPPING (for more information, choose Start of the navigation path Basic Functions Next navigation step Actions Next navigation step Actions in Transaction Next navigation step Change Actions and Conditions Next navigation step Define Action Profiles and Actions End of the navigation path in Customizing for Customer Relationship Management).

    You make the required settings in Customizing for Customer Relationship Management, by choosing Start of the navigation path Transactions Next navigation step Basic Settings Next navigation step Status Management Next navigation step Define Reasons for Delivery Block End of the navigation path.

    You also need to define a blocking reason in shipping in SAP ECC Customizing. Define the value "30" for the delivery block (DB field) here as well.

    You make these setting in SAP ECC Customizing, by choosing Start of the navigation path Logistics Execution Next navigation step Shipping Next navigation step Deliveries Next navigation step Define Reasons for Blocking in Shipping End of the navigation path.

  • The approval-authorized party must be assigned to the authorization object CNDAPPROV. This is the only way they can change prices themselves, without triggering an approval process.

  • You have activated the workflow template CNDDAPPR.

Features

For example, an employee wants to manually change the price of an order item that was automatically assigned in the sales order or complaint using pricing. The system checks whether this employee is authorized to change prices. If the employee is not authorized to do this, this change must be approved by an authorized party, such as the head of department. The system therefore triggers an approval process. The workflow causes appropriate workflow tasks to be displayed in the worklist of the authorized party. The price changes that the employee performed are viewed by the authorized party and then approved or rejected.

If price changes are performed by an employee who does not have change authorization, the follow-up transactions billing and delivery are not triggered. Depending on the customer type, a billing and delivery block is set in the sales order. The authorization process is only completed when the authorized party approves the price change. The statuses Blocked for Billing and Blocked for Delivery are reset. The subsequent processes can then be triggered again.

The authorized party can change prices themselves, without triggering the approval process.

If a second employee immediately changes the price of an order item before the authorized party has processed the first workflow task, the authorized party receives a second workflow task in their worklist. The current price of the order item is displayed in this workflow task, not the original price. However, the previous price changes are also displayed in the second workflow task.

Note Note

The implementation ORDER_APPROVE_WF of BAdI EXEC_METHODCALL_PPF is available for the necessary checks. You can implement your own logic for action profile description for this BAdI, and so adapt this function to the requirements of your company.

The standard implementation only checks whether manual pricing conditions were entered in the sales order. If you want to factor in the amount of the discount, you need to define your own schedule condition for the action.

End of the note.

Activities

  • The employee manually changes the price of an order item

  • The system checks whether this change must be approved and if necessary, triggers the approval process

  • If the price change must be approved, the system sets a billing block and delivery block in the sales order

  • A workflow task for this price change appears in the worklist of the authorized party

  • The authorized party opens the workflow task. The task description contains information about the price changes

  • They either approve the change or change the condition records themselves

  • The authorized party confirms the sales order and thereby finishes the approval process