
Extensibility in SAP S/4Hana follows a new model, often referred to as "Clean Core Extensibility." The new approach is outlined in the guide Extend SAP S/4HANA in the cloud and on premise with ABAP based extensions . The model is built on three main pillars - Key user extensibility, Developer extensibility, and Side-by-Side extensibility.
Source: sap.com
In this blog, I would like to focus on the new extensibility model from the S/4HANA Sales perspective (formerly known as the Sales & Distribution module) and compare new functionalities with the "classic" enhancement options well known from previous SAP releases.
The comparison goes beyond what is currently classified as extensibility by SAP, as some functions are now delivered out of the box in S/4HANA (for example, flexible workflows, flexible document numbering, etc.). However, in previous SAP versions, these were typically delivered as enhancements or WRICEF objects. Therefore, they are included here to provide a broader picture of the functionalities in S/4HANA that can reduce the need for enhancements and system modifications.
In this article, I aimed to include the most important and commonly used functionalities from the SD perspective. Naturally, it does not cover all features, whether from the classic or new extensibility perspectives.
Table 1 provides a mapping between classic and new extensibility solutions, along with additional comments on the advantages and/or limitations of the new tools. To improve readability, the content has been divided into different application areas.
Table 1: Classic vs New Extensibility in S/4Hana Sales (based on S/4Hana 2023 release).
Application area | Classic extensibility | New extensibility | Comments (new extensibility) |
Data model and UI extensibility | Several enhancements necessary:
| Custom Fields functionality. Business context available:
| Easy to use, smoothly integrated with other functionalities such as reporting, output management, API / BAPI extensions etc. No ABAP coding required. |
Sales documents approval | Custom workflows or user exits to block sales documents, request and process approvals. | Flexible Workflows for sales documents:
| Delivered out of the box. Easy to customize in Fiori apps, without technical knowledge about the workflow technology. |
Custom logic during sales documents processing | User-exists (includes MV45AFZ*, MV50AFZ*, RV60AFZ*, etc.), classic BADIs, enhancement points, and implicit enhancements. | Custom Logic functionality (so called Cloud BADIs), mainly:
| Only restricted ABAP language (ABAP for Key users) available in the app "Custom Logic". Technically, BADIs from the "Custom logic" app can be implemented in a classic way using SE19 transaction. Classic user exits are still available in S/4Hana On-premise and Private Cloud, but they are not considered as "clean core" solutions. |
Data validation in sales documents | User-exists in include MV45AFZZ / MV60AFZB / RV60AFZZ, mainly:
| Custom Logic functionality (BADIs):
| The same as in the point above. |
Data transfer between documents (for custom fields) | Data transfer routines (VOFM) assigned in the copy control settings. | Business Scenarios in the Custom Fields application, for example:
| No ABAP coding required. Custom fields are automatically created in related objects when the business scenario is activated. |
Field Catalog for Pricing - extensions with custom fields | Manual appends to structures KOMKAZ and KOMPAZ + user exits implementation (USEREXIT_PRICING_PREPARE_TKOMK and USEREXIT_PRICING_PREPARE_TKOMP) | Custom Fields application. Business context:
| Seamlessly integrated with custom fields on header / item level of sales documents by activating relevant business scenarios. |
Field Catalog for Revenue Account Determination - extensions with custom fields | Manual appends to structures KOMKCV and KOMPCV + user exits implementation (USEREXIT_ACCOUNT_PREP_KOMKCV and USEREXIT_ACCOUNT_PREP_KOMPCV) | Custom fields application. Business context:
| Seamlessly integrated with custom fields on header / item level of sales documents by activating relevant business scenarios. |
Number range determination for sales and billing documents | Custom tables to store number ranges assignment based on predefined conditions + user exits implementation (USEREXIT_NUMBER_RANGE / USEREXIT_NUMBER_RANGE_INV_DATE) | Standard, configurable functionality, delivered out of the box: | Configurable number ranges without ABAP coding (coding possible with dedicated BADIs if more complex logic is required). |
Enhancements for the SD-FI integration in billing process | Enhancements SDVFX001 - SDVFX011. | Partially covered by the Flexible Billing Document Posting functionality, within the scope:
| Only a small part of the SD-FI integration enhancements is currently covered. |
Conclusion:
SAP S/4HANA offers a wide range of functionalities that simplify the implementation of customer enhancements and reduce the need for system modifications. Some of these features - especially Custom Fields, Flexible Workflows, and Flexible Document Numbering - significantly streamline the implementation.
In the on-premise and private cloud editions, classic extensibility options are still available, though they are not recommended from a clean-core perspective. However, this does not mean they can no longer be used. They still play an important role, particularly in custom logic scenarios where cloud BADIs remain limited in terms of functional coverage.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
7 | |
3 | |
3 | |
3 | |
2 | |
2 | |
2 | |
2 | |
2 | |
2 |