Building Lifecycle-Stable Extensions in SAP S/4HANA Cloud
Extensibility covers many topics that enable customers and partners to adapt standard business software to their business requirements. This includes changes to software behavior that go beyond the capabilities of business configuration, data model extensions, data exposure, layout changes to user interfaces (UIs) or forms and reports, and creation of new UIs or your own applications.
The architecture of SAP S/4HANA Cloud ensures that extensions made using the built-in capabilities are separated from the core business software layer, meaning that SAP can push upgrades to all customer systems without affecting any customer-specific extensions that have been defined. Any extensions that can't be performed in the core SAP S/4HANA Cloud system using the in-app capabilities should be decoupled, or separated into a different software platform to ensure the core stays stable through future release upgrades (lifecycle stability). SAP Business Technology Platform (BTP) enables these de-coupled extensions because it has a huge range of capabilities for building and hosting applications and integrations.
Extensibility Use Cases
Extensibility in SAP S/4HANA Cloud Public Edition can be divided into two primary categories: in-app extensibility and side-by-side extensibility.
In-App Extensibility, where customizations are made within the core application (SAP S/4HANA Cloud) in the front-end or back-end. This is further divided into two types:
- Key User Extensibility is done in the customizing tenant of the development system through SAP Fiori apps designed to facilitate someone making small changes to apps, reports, and email and form templates without any coding experience.
- Developer Extensibility is done in the development tenant of the development system through what we call the, SAP S/4HANA Cloud ABAP Environment. This environment enables ABAP developers to access a controlled area of the back-end system where changes to released SAP objects can be made. This is different than classic extensibility in the on premise or private cloud deployment of SAP S/4HANA, because all SAP objects can be edited in classic extensibility whereas only a set of released objects that allow changes to be made to them are available to edit with developer extensibility.
Developer extensibility is only available in a 3-system landscape.
Side-by-Side Extensibility, where customizations are made in a separate platform and integrated with the target application (SAP S/4HANA Cloud). Side-by-side extensibility ensures lifecycle stability of the extensions through future release upgrades because any customization you develop fundamentally lives in a different platform and simply communicates with the target application through integration(s). SAP's development platform is the SAP Business Technology Platform, and we have both low/no-code development solutions and code-based development solutions, including our two primary solutions:
- SAP Build, which customers have access to through their GROW with SAP enablement package, is low/no-code and includes Build Apps, Build Process Automation, and Build Work Zone.
- Other services that support side-by-side extensibility are listed in the SAP Discovery Center.
SAP Extensibility Explorer
The SAP Extensibility Explorer website is a great resource to find sample scenarios and use cases, and where to find learning resources when trying to implement different extensibility scenarios.
After creating a custom extension that lives in SAP Business Technology Platform, you'll need to integrate it into your SAP S/4HANA Cloud Public Edition target system. Find the library of prepackaged integrations, APIs, events, connectors, CDS views, workflow scenarios, SAP Build templates, and more in the SAP Business Accelerator Hub.