In the context of SAP S/4HANA Public Cloud Edition, Clean Core principles emphasize minimizing customizations to maintain system integrity and simplify upgrades. Extensibility approaches are designed to enhance functionality while preserving the core system’s stability. By adhering to Clean Core principles, organizations can achieve greater agility, lower total cost of ownership, and a smoother transition during system upgrades. SAP S/4HANA Cloud Public Edition offers various extensibility options to adapt and extend its functionalities according to business needs. These options ensure flexibility while maintaining the integrity and upgrade stability of the system. Below, we explore the different types of extensibilities and provide best practices for implementation.
SAP S/4HANA Cloud Public Edition offers support for the following three main extensibility options:
Extensibility Comparison Table
Parameter | Key User Extensibility | Developer Extensibility | Side-by-Side Extensibility |
Use Case | Low-code/no-code adaptations and extensions | Professional ABAP development | Sophisticated development projects and custom UIs |
Persona | Business expert, implementation consultant, citizen developer, key user | Professional ABAP developer | Developers with knowledge of Java, Node.js, ABAP |
Tools/Platform Used | Key user tools (low-code/no-code tools) | ABAP Development Tools (ADT), SAP S/4HANA Cloud ABAP Environment | SAP Business Technology Platform (BTP) |
Skills Required | Minimal coding skills | Professional ABAP development skills | Programming skills in Java, Node.js, ABAP |
Proximity to Core SAP S/4HANA | Tightly coupled | Tightly coupled | Loosely coupled |
Example Scenario | Adding custom fields to business objects | Developing custom SAP Fiori apps | Creating custom applications on SAP BTP |
APIs Used | Local public APIs and extension points | Local public APIs and extension points | Remote SAP APIs (e.g., OData services) |
Lifecycle Management | Managed by key users | Managed by ABAP development lifecycle (ADT, ATC) | Managed separately on SAP BTP |
Key user extensibility allows business experts to extend SAP S/4HANA Cloud without deep technical knowledge. It focuses on "last mile" extensions using low-code/no-code tools.
Types of Key User Extensibility are detailed as below:
S.I No | Key User Extensibility Applications | Description |
1 | Adapt UI | Adapt UI allows users to customize Fiori Apps by hiding or renaming fields, groups, and areas; adding fields from the field repository; and reorganizing UI elements. Note that Adapt UI is for Fiori Apps, whereas SAP Screen Personas is used for Web GUI screens. |
2 | Custom Fields | Enable users to create, edit, and manage fields by extending SAP tables, applications, CDS views, and OData services. |
3 | Custom Logic | Custom Logic offers a streamlined development experience with features like API exploration, syntax checking, and code completion. It includes a sandbox environment for testing before publishing, ensuring secure and robust implementations. |
4 | Custom Business Objects | You can create and manage business objects and their database tables, add, or delete fields and objects, and develop CDS views and OData services for data entry or integration with other systems. Define sub-nodes and associations with both custom and standard SAP business objects. Implement custom logic at the node level, manage custom business objects by publishing, editing, resetting, copying, or deleting them, and perform tracing as needed. |
5 | Manage KPI’s and Report | In the Manage KPIs and Reports application in SAP S/4HANA Public Edition, you can copy and modify SAP-delivered KPIs to fit your business needs. Define drilldowns for in-depth KPI analysis and apply filters to focus on specific areas. Save filtered analyses for future use and set up associations between KPIs for runtime analysis. Additionally, you can navigate to transactional apps to act on your analysis results. |
6 | Create Custom Analytical Queries | The Create Custom Analytical Queries application in SAP S/4HANA Public Edition allows you to create queries based on released SAP analytical data sources (CDS views of type cube) or custom sources. You can copy standard SAP queries, customize fields (such as labels and data display), and adjust filters (fixed or user-defined). Additionally, you can create parameters for user input and define calculated, restricted, or converted measures. The application includes testing capabilities to preview results in Design Studio. |
7 | Create Custom CDS Views | The Create Custom CDS Views application in SAP S/4HANA Public Edition lets you view a list of pre-delivered public data sources (VDM CDS views) and existing custom CDS views, as well as preview available data sources. You can create new custom CDS views by selecting a primary data source, adding associated data sources, and modifying field properties (annotations). You can also create calculated fields with arithmetic calculations, case statements, and conversions, and display parameters for the selected data sources if applicable. |
8 | Custom Reusable Elements | The Custom Reusable Elements application in SAP S/4HANA Public Edition allows you to modularize and organize your custom code. You can create and manage Custom Libraries, add methods, and provide details for each method. Key features include creating new libraries, adding and detailing methods, testing, saving, and publishing your custom code. |
9 | Custom Logic Tracing | Custom Logic Tracing allows you to monitor the processing order of determinations, validations, and actions for custom business objects and nodes. You can trace input, output, and changing parameter values, as well as execution durations. |
10 | Custom Catalog Extensions | With the Create Custom Catalog Extensions application in SAP S/4HANA Public Edition, you can extend SAP Fiori catalogs by adding various elements such as custom business object UIs, Smart Business KPIs, reports, Analytical Design Studio applications, custom tiles, and Analytic Cloud Stories. |
11 | Custom Communication Scenario | Create Custom Business Objects and Custom CDS Views using their respective Fiori apps, ensuring to select the OData Service flag during creation. |
12 | Extensibility Inventory Application | You can view an overview of your extensibility items, including their associations and dependencies. This allows you to understand the impact of importing or exporting items on others. |
Best Practices:
- Use key user extensibility for quick, simple extensions.
- Ensure key users are familiar with the business processes to maximize efficiency.
On-stack/developer extensibility is designed for professional ABAP developers who need to create extensions closely integrated with the SAP S/4HANA Cloud public edition. Utilizing the SAP S/4HANA Cloud ABAP Environment and standard ADT tools, it allows for the development of cloud-ready, upgrade-stable custom ABAP code. This method combines the benefits of custom ABAP code with the necessary constraints for Cloud readiness and follows the SAP S/4HANA programming model for building SAP Fiori apps.
Category | Details |
Key Features | |
1. RAP Model | ABAP RESTful Application Programming model for creating custom services and SAP Fiori apps. |
2. Eclipse-based IDE | ABAP Development Tools with debugging, troubleshooting, and testing support. |
3. Software Lifecycle Management | ABAP software lifecycle management. |
4. SAP Business Application Studio | SAP Business Application Studio with SAP Fiori tools for developing custom Fiori apps. |
Best Practices | |
1. Cloud-Optimized ABAP | Use a cloud-optimized subset of the ABAP language. |
2. SAP APIs and Objects, Business Object Interface | Utilize released SAP APIs and objects in custom code. |
3. Extension Points, Business Add-Ins | Employ predefined extension points to extend SAP objects. |
4. Controlled Access Guidelines | Follow controlled access guidelines for admin, user, authorization, monitoring tools, and services. |
5. Custom Table Security | Custom table creation lacks default security measures and cannot use ILM (Information Lifecycle Management) or IRF (Information Retrieval Framework). |
6. Security and Compliance Tools | No tool support for ensuring security and compliance of custom code when developing SAP Fiori apps through SAP Business Application Studio and SAP Fiori tools. |
Side-by-side extensibility lets you build custom applications or extend existing ones, using the SAP Business Technology Platform (BTP). This approach enables loosely coupled, seamlessly integrated extensions that operate independently of SAP S/4HANA Cloud's lifecycle. On SAP BTP, you can develop using your preferred runtime or language, such as ABAP, Java, or Node.js.
SAP Business Application Studio is a development environment that supports the creation and management of custom applications on SAP Business Technology Platform (BTP). It is designed to streamline the development of extensions and applications, offering a user-friendly interface and integrated tools for building, and deploying solutions.
The SAP Cloud Application Programming Model (CAP) is a comprehensive framework designed to simplify the development of cloud-native applications within SAP Business Technology Platform (BTP). SAP CAP streamlines the development of sophisticated cloud applications, enabling developers to build robust, scalable, and secure solutions that integrate seamlessly with SAP S/4HANA and other SAP systems (https://cap.cloud.sap/docs/).
You can connect your extensions to SAP S/4HANA Cloud data using remote APIs or events, which are available on the SAP Business Accelerator Hub. For more details, see the APIs and Events sections on the SAP Business Accelerator Hub.
You can extend existing processes or create new processes while easily combining SAP S/4HANA Cloud data with data from other systems. Here are a few typical extension archetypes:
These use cases illustrate the flexibility and adaptability of side-by-side extensibility in SAP S/4HANA Public Cloud Edition, allowing organizations to tailor their ERP system to meet unique business needs while maintaining a clean and stable core. Below are few more of the possible use cases via side-by-side extensibility:
Use Case | Description | Technologies & Tools | Integration Points | Deployment |
Custom UI on SAP Business Technology Platform | Custom Fiori UI built with SAP Business Application Studio (BAS) or SAP Web IDE, running on SAP Business Technology Platform. Uses SAP predefined OData service. | UI5 technology, UI5 templates, editors, and testing capabilities. | Integrates using SAP predefined OData service. | Deploy to SAP Business Technology Platform account or SAPUI5 ABAP repository. |
SAP Business Technology Platform Application | Application (Java, JavaScript, HANA) running on SAP Business Technology Platform with SAP predefined OData service. | Open standards, partner ecosystem contributions. | Integration scenarios with cloud integration; use SAP prepackaged integration content as reference templates. | Deploy and integrate within SAP Business Technology Platform. |
Custom UI on SAP Business Technology Platform or SAP Business Technology Platform App with Custom OData Service | Custom UI or app with custom OData service built with In-App extensibility tools. | UI5 technology or custom development tools; In-App extensibility tools for custom OData services. | Integrates using custom OData service. | Deploy to SAP Business Technology Platform. |
New SAP Business Technology Platform Service Called from SAP S/4 Extension | SAP S/4HANA, Success Factors, and SAP C/4HANA can fire business events to call apps on SAP Business Technology Platform. | Business event framework for SAP S/4HANA, Success Factors, SAP C/4HANA. | Uses business events to trigger actions on SAP Business Technology Platform. | The service is called from SAP S/4HANA or related SAP products. |
Analytics on SAP Business Technology Platform (Replication) | Data replication from SAP S/4HANA, Success Factors, and SAP C/4HANA for analytics purposes on SAP Business Technology Platform. | Data replication tools, SAP Business Technology Platform analytics capabilities. | Data replication for analytics; integrates with SAP Business Technology Platform. | Data is replicated for analysis and reporting within SAP Business Technology Platform. |
Best Practices:
- Use side-by-side extensibility for loosely coupled scenarios.
- Ensure seamless integration using SAP API Business Hub.
The below table details out the best practice for approaching extensibility in reference to SAP S/4 HANA, Public Cloud edition.
Best Practice | Explanation |
Core Clean | Avoid modifying the core system to ensure smooth upgrades and maintain system integrity, hence using the extensibility points and approached detailed by SAP ensures they are always cloud ready and upgrade stable. |
Use Standard APIs | Leverage SAP's provided APIs to ensure compatibility and reduce future maintenance efforts. Use SAP Business Accelerator Hub to explore and identify the best suited API for your use case. |
Scenario based approach to Extensibility | Primary preference to be given to Key User and Development Extensibility within the SAP S/4HANA Cloud Public and opt for Opt for side-by-side extensions to separate custom logic from core processes, enhancing flexibility. |
Consider User Needs | Always keep the end-user in mind to ensure customizations add real value and improve usability. |
Documentation and Governance | Maintain thorough documentation and follow governance processes to ensure transparency and control. |
Selecting the appropriate extensibility approach for SAP S/4HANA Cloud Public Edition, hinges on the specific use case, the expertise of the team involved, and the extent of integration needed with the core system. By adhering to best practices and utilizing the right tools, businesses can attain flexibility while preserving the integrity of their SAP environment.
References:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
29 | |
10 | |
9 | |
9 | |
7 | |
6 | |
6 | |
6 | |
6 | |
6 |