SAP has provided tools to achieve extensibility, both within the S/4HANA Cloud system (in-app) and when there is a need to connect S/4HANA Cloud to external systems (side-by-side). Let’s take a look at extensibility and the ‘what and how’ of the extensibility features in SAP S/4HANA.
What is Extensibility?
Extensibility for S/4HANA Cloud can be used to accommodate custom business needs by tapping into tools provided by SAP in S/4HANA Cloud. There are two types of extensibility:
In-App Extensibility: This kind of extensibility focuses on customizations done directly in the software stack – for example, adding custom fields and tables or adding new business logic to an existing app. There is a good list of extension capabilities that can be handled using In-App Extensibility tools available in S/4HANA Cloud.
Side-by-Side Extensibility: In situations where S/4HANA Cloud must be connected to external systems for customizations, SAP has provided Side-by-Side Extensibility.
This blog focuses on In-App Extensibility.
S/4HANA Cloud In-App Extensibility Architecture
Customizations can be done in three layers: UI Layer, Application (Business Logic) Layer and Database Layer.
S/4HANA Cloud In-App Extensibility Features
The following are the features provided as part of SAP’s In-App Extensibility.
1. User Interface Adaptation
- Add new fields to the UI from the field repository.
- Create new field groups, move fields into groups, combine or split fields from one line, etc.
- Show or hide fields or field groups.
- Define filters.
2. Field Extensibility
- This refers to the creation of new custom fields in the UI – for example, adding custom fields in the standard Purchase Order app.
3. Custom OData Services
- There are many APIs released by SAP for direct use. You can also copy these APIs and create your own customized APIs covering additional functionalities.
- Creation of custom CDS views is also possible. These can be exposed as OData services and can be used by external applications for read-only purposes.
- The lists of all the available released APIs are stored in ‘SAP API Business Hub.’
4. Custom Business Objects
- This feature provides capabilities, such as creation of persistent business objects.
- You can create applications using custom business objects, enabled with standard CRUD (Create, Read, Update, Delete) operations.
- You can write data validation logic for the custom app and also use the ‘test while you code’ feature to test if the code works as expected.
- It is recommended to not store any business-critical data in these tables, since there are risks of external exposure and the data privacy/security is not handled by the cloud as a standard operation.
5. Forms and Email Template Extensibility
- In S/4HANA Cloud, forms are designed using Adobe Lifecycle Designer, which primarily uses OData services.
- The In-App key user extensibility feature allows extension of form and email templates leveraging the custom or standard OData service.
6. Business Applications Logic Extensibility
- This feature helps accommodate the enhanced business logic required on any standard application.
- To achieve this, there is a web-based ABAP editor provided, which allows enhancement using APIs. You can write custom logic, perform syntax checks, test the draft version of developments, etc.
‘Extensibility Explorer’ can be used to learn more about extensions and see examples.
Interested in a deeper dive?