Skip to Content
Technical Articles

SAP S/4HANA Extensibility: A Learning Journey

Already three years ago, I published a blog  Extensibility of S/4HANA – Helpful Links. In this blog, I want to make proposal for a learning journey with reference to learning material and links. As a small disclaimer, I want to point out, that in-app extensibility and the SAP CP ABAP Environment is in my comfort zone rather than Java/Node.JS development. This is why the respective session are more or less detailed.

1. Get An Overview On The Extensibility Concept

As a first step, get a basic understanding of the extensibility concept for SAP S/4HANA. The basic buildings blocks of the extensibility concept are:

  • In-app extensibility using
    • key user extensibility tools
    • classical ABAP custom development
  • Side-by-side extensibility with SAP Cloud Platform using
    • Java or Node.JS, powered by the SAP Extension SDK
    • the ABAP Environment

To understand the extensibility concept, I recommend:

The whitepaper (section 3.3) and lecture include also the recommendation when to use which extensibility option.

2. In-app Extensibility

The key user extensibility tools are a major pillar of the extensibility concept of SAP S/4HANA. They follow the principle of leading cloud services. They are designed for the cloud, but also made available in the on-premise edition.

2.1 Get an overview

In my blogs I introduce the key user extensibility tools:

2.2 Understand The Differences Between On-premise And Cloud Editions

As mentioned, the key user extensibility tools are designed for the cloud, but also made available in the on-premise edition. If you use the on-premise edition or the SAP S/4HANA Cloud, Single tenant edition, you should know about the specific details here.

First, Cloud and on-premise systems have some differences, which are reflected in the key user extensibility tools, for example:

  • Different transport setup (between dev, q, and p systems)
  • Different Gateway setup (embedded vs. hub scenario)

Second, in the on-premise version, you can use key user extensibility tools and classical ABAP development tools in parallel, which leads to the question when to use what and how to manage the dependencies between objects from created with key user extensibility tools and with classical development tools.

The document Guidance for Extensibility in SAP S/4 HANA Cloud, Single tenant edition provides a very detailed list of guidelines for extensions techniques, which can be used in a SAP S/4HANA Cloud, Single tenant edition. But I think this document is also useful for developers of SAP S/4HANA (on premise) as a guidance for choosing the right extensions techniques. The white paper provides also some information (section 5.1) on this topic.

2.4 Teasing Videos

Laying back for a moment, you might enjoy some videos to get a visual impression on extensibility look and feel:

2.5 Getting It All Together In a Text Book Or In a Training

Schneider, Thomas; Wolf, Werner: Erweiterungen für SAP S/4HANA (in German) SAP PRESS 2018.
https://www.rheinwerk-verlag.de/erweiterungen-fur-sap-s4hana_4613/

Extending SAP S/4HANA Cloud and SAP S/4HANA:
https://open.sap.com/courses/s4h7/

Key Technical Topics in a System Conversion to SAP S/4HANA
https://open.sap.com/courses/s4h14 -> Week 3, Units 3, 5, and 6

2.6 Documentation

Before you start developing, it might be helpful to have a look into the documentation (Note: Language and Version of the documentation can be selected in the right upper corner of the screen.):

Key User Extensibility Tools in SAP S/4HANA Cloud
https://help.sap.com/viewer/p/SAP_S4HANA_CLOUD -> Product Assistance -> English -> Generic Information -> General Functions for Key User -> Extensibility

Key User Extensibility Tools in SAP S/4HANA (on  premise): https://help.sap.com/viewer/p/SAP_S4HANA_ON-PREMISE -> Product Assistance -> English -> Enterprise Technology -> ABAP Platform (or SAP Netweaver in older releases) -> General Functions for Key User -> SAP Fiori Applications -> Extensibility

Classical Extensibility: Developing on the ABAP Platform
https://help.sap.com/viewer/p/SAP_S4HANA_ON-PREMISE  -> Product Assistance -> English -> Enterprise Technology -> ABAP Platform (or SAP Netweaver in older releases) -> Developing on the ABAP Platform

ABAP (Language documentation)

SAPUI5 Flexibility Services: Adapting UIs Made Easy

Fiori Extensibility Documentation: Extensibility – SAP Library
In the Fiori Appl Library ( Fiori Apps Library ) you can find the information on the extensibility for Fiori apps. Open the App Details for a Fiori app, and go to section Implementation Information, Extensibility.

2.7 Get Your Fingers Dirty: Tutorials, Best Practices, How-tos

Now, you want to create some in-app extensions.

Tutorials: You can find the tutorials on extensibility here. Most tutorials deal with the creation of various aspects around a “bonus plan” application.

Sample Scenarios: The SAP Extensibility Explorer for SAP S/4HANA Cloud shows many real-life sample scenarios (for in-app extensibility and for side-by-side extensibility) written by application experts.

In the Best Practices Explorer you can find best practices on in-app-extensibility, for example In-App Extensibility

The SAP Community Network, ABAP Extensibility  topic page is the landing page for ABAP Extensibility-related topics.

Last, but not least, there are additional tutorial-like blogs, some of which I want to mention here:

3. Side-by-side Extensibility with SAP Cloud Platform using Java or Node.JS

3.1 Getting Started With The SAP Cloud SDK

For Java and Node.JS, the SAP Cloud SDK (fka SAP S/4HANA Cloud Extension SDK) supports you with libraries and an SDK that makes it easy to consume the APIs and events and achieve Cloud qualities for your applications. The document SAP Cloud SDK Overview is the central landing page for the SAP Cloud SDK

3.2 Text Book And Training

Herzig, Philipp; Heitkötter, Henning; Wozniak, Sander; Argawal, Akhil; Wust, Johannes: Extending SAP S/4HANA. Side-by-Side Extensions with the SAP Cloud Platform SDK. SAP PRESS 2018.
https://www.sap-press.com/extending-sap-s4hana_4655/

Extending SAP S/4HANA with SAP HANA Cloud Platform:
https://open.sap.com/courses/hcp3a1

Create and Deliver Cloud-Native SAP S/4HANA Extensions
https://open.sap.com/courses/s4h13

3.3 Get Your Fingers Dirty: Tutorials, Best Practices, How-tos

The document SAP Cloud SDK Overview contains a tutorial on how to create an extension application with SAP Cloud SDK. You can find the tutorials on SAP Cloud SDK here.

The SAP Extensibility Explorer for SAP S/4HANA Cloud shows many real-life sample scenarios (for in-app extensibility and for side-by-side extensibility) written by application experts: https://www.sap.com/extends4.

In the Best Practices Explorer you can find best practices on side-by-side extensibility, for example https://rapid.sap.com/bp/#/browse/scopeitems/1RW.

The Localization Toolkit for SAP S/4HANA Cloud provides tutorials/how-tos for country & language-specific extensions.

Last, but not least, there are additional tutorial-like blogs, some of which I want to mention here:

4. Side-by-Side Extensibility With SAP Cloud Platform ABAP Environment

Since September 2018, ABAP as a programming language together with the rock-solid ABAP server is available in the SAP Cloud Platform.

4.1 Get An Overview

The following blogs provide an overview on SAP Cloud Platform ABAP Environment:

The official product page SAP Cloud Platform ABAP Environment shows information on features, pricing, and resources.

4.2 Documentation

4.3 Get Your Fingers Dirty: Tutorials, Best Practices, How-tos

You can find the tutorials on SAP Cloud Platform ABAP Environment here.

5 How To Find APIs And Extension Points

Your extensibility project can only work, if you find the right APIs and extension points. I have written a dedicated blog on this topic, which collects all places where you can find information on APIs and extension points for SAP S/4HANA: S/4HANA Extensibility: How to Find APIs and Extension Points.

 

4 Comments
You must be Logged on to comment or reply to a post.