Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
zhaoyo
Product and Topic Expert
Product and Topic Expert

Background


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 which customer has full access to the backend to change configuration, customer uses SSCUI apps to change some configuration settings in S/4HANA Cloud. However, most SSCUI settings are defined in the design time and it is difficult to handle the process variance 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 sales order at runtime.

This blog shows flexibility to control number range for sales document in S/4HANA Cloud. Please find detail information in SAP help.

Business Example


The standard sales order type "OR" is pre-delivered by SAP with scope item BD9. There is standard number range assigned to standard order type "OR". But some customers want to differentiate the sales order numbering according to certain criteria, e.g. different numbering prefix should be determined based on different country, sales area, order reason, etc.

In this example, I'd like to show the steps of using CPF to determine different numbering prefix per order reasons.

Configuration Details


Following configurations need to be defined to enable the flexible number range feature. Generic user "BPC_EXPERT" is used to define required configurations via SSCUI.

Define Number Range Prefixes for SD Documents


Open the SSCUI 103283 "Define Number Range Prefixes for SD Documents" to define prefixes. In this example, two prefixes are defined for "Advertisement" sales order and "Fast Delivery" sales order.


Define Number Range Prefixes



Define Parameter Catalogs for Flexible Sales Document Numbering


Open the SSCUI 104013 "Define Parameter Catalog for Flexible Sales Document Numbering" to define parameters which can be used to build CPF decision table.


Standard Parameter Catalogs for Flexible Numbering


There are already some standard parameter catalogs delivered with CPF usage "S01". Customer can also add new parameter catalog to define business rules.

In this example, standard parameter catalogs are sufficient to define business rules for our purpose. Therefore, no need to add new catalogs in this step.

Define CPF Formulas for Flexible Document Numbering


Open SSCUI 104014 "Define Formulas for Flexible Sales Document Numbering" to define CPF formulas. There are following steps to define business rules in CPF formulas:

Define Formulas


Click folder "Define Formulas" to define a formula with description


Assign Formula Parameters


Click the sub-folder "Assign Formula Parameters" to assign parameter catalogs to formula. The assigned parameters are used to build up CPF decision table.


Assign Formula Parameters


Only following parameters are selected to build up decision table criteria:

  • Company Code

  • Sales Organization

  • Sales Document Type

  • Order Reason Code


Define Formula Tasks


Click the sub-folder "Formula Tasks" to assign routine for CPF usage task. In CPF usage "S01", there is only one usage task "SET_NUMBER_RANGE" to determine number range.


Formula Tasks


For CPF usage "S01", only CPF decision table is offered to define business rules. For some CPF usages, other options are possible, for example, BRF+.

Assign Parameter Priority


Select the usage task and click sub-folder "Assign Parameter Priority" to define the priority of CPF parameter.


Assign Parameter Priority



Define Decision Table


Click the sub-folder "Define Decision Table" to maintain business rules based on selected parameters.


Define Decision Table


The decision table is build up dynamically according to selected parameters. In this example, the number range prefix "ADV" is defined when order reason is "005" which represents "Newspaper Advertisement" and number range prefix "FDL" is defined for order reason "007" which represents "Fast Delivery".

Define Custom Routines for Flexible Sales Document Numbering


Open SSCUI 104015 "Define Custom Routines for Flexible Sales Document Numbering" to define custom routine for CPF formula which was defined in previous step.


Define Routine Number


Click the sub-folder "Assign Enhancement IDs to a Routine Number" to link CPF formula to custom routine.


Assign Enhancement ID to Custom Routine



Assign Custom Routines to Sales Document Types


Open SSCUI 103823 "Assign Custom Routines to Sales Document Types" to link custom routine to sales document type so that business rules defined in CPF formula can function in sales document process.


Assign Custom Routine to Sales Document Type



Test Sales Order


Log onto S/4HANA Cloud system with generic user "INTERNAL_SALES_REP".

Create Order via VA01


Open the app "Manage Sales Orders" to create sales order via VA01.


Create Sales Order


In the sales order overview page, provide required information like sold-to party, customer reference, material, and set order reason to "Newspaper Advertisement"


Sales Order Overview Page


Save the sales order and check the sales order number.


Order Creation Message


The number range prefix "ADV" is applied to the sales order when order reason is 005 "Newspaper Advertisement".

Create Order via Fiori App


Open the app "Manage Sales Orders" to create sales order via new Sticky UI. Provide order type and sales area


Create Sales Order


Provide required information in sales order screen like sold-to party, customer reference, and make sure the order reason 007 "Fast Delivery" is maintained.


Sales Order Overview


Press button "Create" to save the sales order. The number range prefix "FDL" is determined because the order reason 007 is maintained in the sales order.


Sales Order with Order Reason 007



Order Creation without Triggering CPF


Create a new sales order and leave order reason empty.


No Order Reason in Sales Order


Save the sales order and check the sales order number.


Sales Order with Standard Number Range


The standard sales order number range is determined and there is no prefix used in sales order number.

Additional Notes


The CPF provides more flexibility to influence sales document process at runtime without enhancing core logic. It is friendly to the business user and citizen developers who may lack of ABAP experience of implementing Cloud BAdIs.

Regarding CPF feature of flexible sales document number range, there are some restrictions. For example, numbering determination is only triggered when creating a new sales order. Once sales order number is determined and saved, changing sales order is not triggering number range re-determination. Please check help document (link) for other restrictions.

3 Comments