Skip to Content
Product Information
Author's profile photo Yong Zhao

S/4HANA Q2C Sales Flexibility: Using BRF+ to Determine Pricing Date


In S/4HANA Cloud, the SAP best practice content provided by SAP normally fulfills basic E2E business requirement. Different from S/4HANA On-Prem or S/4HANA Private Cloud where customer has full access to the backend system (e.g. SPRO) to change configuration, customer uses SSCUI apps to change some configuration settings in S/4HANA Cloud. However, most SSCUI settings are only defined in the design time and it is difficult to handle different process variants in Q2C order process.

With help of CPF tool (Configurable Parameters & Formulas), it is possible to define business rules in S/4HANA Cloud to influence different aspects of sales order process at runtime.

SAP Business Rule Framework plus (BRFplus) is widely used in different area of SAP products. There is also possibility to utilize BRF+ to allow customer define flexible business rules via BRF+ in CPF application. See more information of BRF+ with (link).

This blog shows CPF usage “S03” to determine pricing date on sales order header based on business rules defined by BRF+. Please find detail information in SAP help (link).

Business Example

Customer wants to define complex business rules to determine pricing date on sales order header. Comparing with the approach of CPF decision table, customer would like to utilize the capability offered in BRF+ to define business rules. For example, customer can not only define decision tree to influence pricing date, but also write logical expression to determine pricing date.

In this example, I’d like to show detail steps of generating BRF+ application for CPF usage and define business rules via BRF+ to determine pricing date.

Configuration Details

As of now, the BRF+ approach is not ye supported in S/4HANA Cloud. For some CPF usages, the BRF+ option is offered in S/4HANA OP2021. Therefore, I am testing BRF+ features in S/4HANA OP2021 version.

By the way, there is plan to enable BRF+ approach on S/4HANA Cloud. Please stay tuned for new features on S/4HANA Cloud for CPF improvement.

Since customer is able to access IMG on S/4HANA On-Prem, it is possible to access to CPF configuration from IMG.

Create BRF+ Application

Go to following IMG path to create BRF+ application.


Create BRF+ Application

System navigates to the BRF+ workbench. Create a new BRF+ application and provide required information.


BRF+ Application

Save the BRF+ application and activate it.


Activating BRF+ Application

Keep the BRF+ application like it, do not create BRF+ function now because the BRF+ function and other objects will be generated from CPF later.

Define Factory Calendar Determination Rule

Open following IMG node to define factory calendar determination rule.

Define a factory calendar rule and specify the source priority


Factory Calendar Determination Rule

Define CPF Parameter Catalogs

Open following IMG node to define parameter catalog for pricing date.

There are some standard parameter catalogs available for CPF usage “S03”. Customer can directly include these parameter catalogs to build up business rules in CPF.


CPF Parameter Catalogs

In my example, these standard parameter catalogs are sufficient. But it is still possible to add new parameter catalogs by user, e.g. adding custom fields as available parameter catalog.

Assign BRF+ Application to CPF Usage

Open following IMG node to assign existing BRF+ application to CPF usage. The BRF+ application was already created in previous steps.

It is possible to use search help to find out the BRF+ application.


Assign BRF+ Application Name

Save the entry and mark this BRF+ application as default.

Define CPF Formulas with BRF+

Open the following IMG node to define CPF formulas for pricing date determination.

Define a new formula


Define CPF Formula

Select the formula ID and click sub-folder “Assign Formula Parameter” to add parameter catalogs to CPF formula


Assign Parameter Catalogs

In this example, sales org, sales office and sales group as selected to build up business rules in CPF.

Double click the sub-folder “Assigned Usage Task” to link BRF+ application to CPF usage task.


Assign CPF Usage Task

The CPF routine “2” represent the BRF+ is used to define business rule. Click the button in left top to generate BRF+ function.


Generate BRF+ Function

In the pop-up dialog box, name the BRF+ function and click button “Generate and Save”. The BRF+ objects are generated automatically.


Generated BRF+ Function

Define Business Rules in BRF+

Create the Ruleset in BRF+ function.


Create Rule Set in BRF+

Then click button “Create And Navigate To Object” to define rules in rule set.


Insert Rules in Rule Set

Create a rules in ruleset based on different sales document types.


Define Rules for Sales Document Types

In this example, I created two rules for sales order and sales quotation. Navigate to the rule of sales order to create expression.


Pricing Date Rule for Sales Order

Create a decision table for sales order and select the columns as below to build up decision table.


Decision Table Settings

Then define the business rules in decision table.


Business Rules in Decision Table

In the business rule, the offset 7 days is defined for sales org 1010/sales office 100/sales group 100 combination, which means when sales org, sales office, and sales group combination in sales order matches CPF rule, pricing date will be determined with +7 days.

Activate the decision table and simulate the business rules. For example, use following input value to simulate business rule defined in BRF+


Simulate Business Rules

Execute and display the processing steps


Simulation Result

The offset value “7 days” is determined for sales org 1010, sales office 100 and sales group 100.

Define Custom Routines for Pricing Date Determination

Open following IMG node to define custom routine for CPF formula of pricing date determination


Define Custom Routine

Create a new custom routine for pricing date determination


Custom Routine

Click the line and double click the sub-folder to assign CPF formula to custom routine.


Assign CPF Formula to Custom Routine

Assign Custom Routine to Sales Document Type

Open following IMG node to assign custom routine number to sales document type.

The custom routine “3000001” defined in previous step is assigned to sales document type “OR”.


Assign Custom Routine to Sales Document Type

Save the entry.

Test BRF+ Rules in Sales Order

Go to transaction VA01 to create sales order. Provide required information to create a sales order.


Create A Sales Order

Because the business rule defined in BRF+ is not matching, the current date is determined as pricing date.

Go to sales order header to change the sales office to 100 and sales group to 100 which match to business rule defined in BRF+.


Change Sales Office and Sales Group

After the sales office and sales group are changed, the pricing date is re-determined according to business rule maintained in BRF+. The pricing date is calculated with considering public holiday.


Pricing Date in Sales Order

Save the sales order, and calculated pricing date is persistent in sales order.

Create another sales order, make sure the combination of sales office and sales group doesn’t match to business rule defined in BRF+.


Business Rule is Not Applied in BRF+

The default pricing date is calculated. The business rule defined in BRF+ is not functional here.

Additional Information

BRF+ provides much more flexibility to define business rules to control sales business processes via CPF framework. Apart from the decision table I showed in this blog, there are other options to define business rules in BRF+, e.g. decision tree, formula, function call, etc.

The BRF+ approach is not yet supported in CPF usages in S/4HANA Cloud, but it is planned to enable BRF+ in S/4HANA Cloud in near future.

Regarding this CPF usage to determine pricing date by BRF+, please find more information in roadmap (link), EKT document (link), and help document (link).


Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Thomas Woelfel
      Thomas Woelfel

      Thank you Yong Zhao, this is very good break down and use case of this functionality. I am curious how one determines to use this approach vs a Userexit/Enhancement point/VOFM routine. Are you aware of any guideline or tips/tricks in determining when to use which approach for customizations?

      Kind regards, Tom

      Author's profile photo Yong Zhao
      Yong Zhao
      Blog Post Author

      Hi Thomas,


      Thanks for your comments! Your question is valid and frequently asked.

      In SAP S/4HANA Public Cloud, some enhancement options like User-exists, SAP BAdIs, VOFM routines are not exposed to customers. Therefore, we are introducing new CPF option to allow customer build up business rule to influence business processes.

      By comparing between Cloud BAdI and CPF, the CPF approach is more friendly to key users who do not have experience to write ABAP code, and it fits to low-code/no-code trend. Currently only few CPF usages are delivered by SAP. Customer still needs to evaluate what option should fit to customer requirements best. Please let me know if you have further question.


      Best regards,