Explaining Extensibility for the SAP S/4HANA Cloud Deployment Options

Objectives
After completing this lesson, you will be able to:

After completing this lesson, you will be able to:

  • Explain extensibility for the SAP S/4HANA Cloud deployment options

SAP S/4HANA Extensibility Concept

Implement Lifecycle-Stable Extensions in SAP S/4HANA

Customers require the ability to customize their software solutions to make it work for their needs. When considering how to customize SAP S/4HANA, always start with what you can do within the front-end apps in the Fiori launchpad. Extensions built with these apps are guaranteed to be lifecycle-stable, as the app has been designed to only let you make the customizations within what it allows.

If the Fiori extensibility apps cannot meet a customization need, next look at the SAP Business Technology Platform Extensibility Suites. Separating complex extensions from the core system is another method of building lifecycle-stable extensions, because the customization fundamentally lives in a different system. This ensure there are no conflicts with customizations you've built in the SAP Fiori apps or SAP Business Technology Platform next time you upgrade the core system.

Types of Extensibility

Extensibility in SAP S/4HANA can be divided into two main categories:

In-app extensibility

Customizations are made within the software stack, through apps or in the backend of the system. In-app extensibility is further grouped into:

  • Key User in-app extensibility: Customizations are done through the SAP Fiori apps available in the launchpad. Because there is rarely any code visible, business users can learn how to make these types of customizations and will have access to the extensibility apps (e.g. Custom Fields, Custom Business Objects) if they are assigned administrator permission. We often use the terms "key user" and "administrator" interchangeably.
  • Developer in-app extensibility: This type of extensibility is only available for the public cloud 3-system landscape deployment. It allows ABAP developers to create advanced cloud-ready and upgrade-stable custom ABAP code in an SAP S/4HANA Cloud, public edition ABAP environment.
  • Classic in-app extensibility: This type of extensibility is only available for the private cloud deployment. It refers to ABAP developers having full flexibility to build advanced extensions in the development landscape. Unlike the SAP S/4HANA Cloud ABAP Environment, there are no controls to ensure the code used is lifecycle-stable, and developers can even modify the SAP source code. Developers must pay close attention to only using released APIs and approved code to ensure there are no compatibility issues when installing future release upgrades in the private cloud system.

Side-by-side extensibility via SAP Business Technology Platform (BTP)

This encompasses a broader scope of functionality based on the many capabilities of SAP BTP. The purpose of building extensions in SAP BTP is to decouple (separate) the extension from the stable system of record. Side-by-side extensions can be easily and securely integrated into your SAP S/4HANA public or private cloud system with the right APIs.

Key User In-App Extensibility

Key User In-App Extensibility

The in-app extensibility SAP Fiori apps are completely web-based and targeted to key users (administrators) who have a deep knowledge of the product itself, but not necessarily a deep technical knowledge (for example, in coding). Because each app is designed to only allow specific customizations, they ensure any changes a user makes will be stable through future release upgrades.

To learn whether an SAP Fiori app is available for public cloud, private cloud, or both, you can look up the app in the SAP Fiori Apps Reference Library.

Note
There are two SAP S/4HANA categories for an app in the SAP Fiori Apps Reference Library: SAP S/4HANA Cloud and SAP S/4HANA. SAP S/4HANA Cloud, public edition means public cloud, and SAP S/4HANA includes both the on premise and private cloud deployments.

SAP Fiori Extensibility Apps & Capabilities:

  • Extensibility Explorer app
    • Supported for SAP S/4HANA Cloud, public edition only
    • This app simply links to the SAP S/4HANA Cloud, public edition, Extensibility Explorer website. You can link your quality system tenant in the website after logging in so you can easily navigate from the website to the system as you work through executing different extensibility scenarios.
      Note
      Even though the Extensibility Explorer website is targeted to SAP S/4HANA Cloud, public edition, customers with SAP S/4HANA Cloud, private edition could still use this as an excellent resource for building lifecycle-stable in-app and side-by-side extensions.
  • Extensibility Cockpit app
    • Supported for SAP S/4HANA Cloud, public edition only
    • You can explore the options available to extend an SAP S/4HANA Cloud, public edition solution through in-app extensibility with a detailed view of the extensibility options and their business contexts.
  • Extensibility Inventory app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • You can use this app to display an overview of your extensibility items implemented in the system and view associations or dependencies between various items. This helps you understand how importing or exporting a specific extensibility item would affect the other existing items.
  • "Adapt UI" runtime UI authoring functionality
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • Key user adaptation enables you to change the user interface of SAP Fiori apps directly in the launchpad without having to write code.
  • Custom Fields app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • Used to create custom fields to customize applications and their UIs, reports, email templates, and form templates. This app is beneficial when users and business contexts require different document layouts or application functionality.
    Note
    In SAP S/4HANA Cloud, private edition, custom fields can be created not only using the Custom Fields app, but also using back-end transactions to create database fields. To use database fields to enhance SAP Fiori apps, the fields must be enabled for usage with SAP Fiori. Learn more about enabling custom database fields for usage in SAP Fiori applications.
  • Custom Logic app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • Used to create, test, and publish your own business add-in (BAdI) enhancements with an ABAP web-editor. Only approvated ABAP BAdI code can be used in this app.
  • Custom Business Objects app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • You can create custom business objects, then generate UIs and applications from them. Fields can be used as table columns on the initial page of a custom application that is based on a custom business object. The fields that you create for a custom business object can also be used for database tables for segmentation in marketing.
  • Custom Reusable Elements app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • You can modularize your custom code and structure it according to your requirements. You can use this app to create Custom Libraries and organize your methods as needed. This app is specifically designed for custom code reuse.
  • Custom Logic Tracing app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • You can trace development objects to see which determinations, validations, and actions of which custom business object and nodes are being processed, and in which order. You can create user-defined trace statements to trace BAdIs or methods in custom libraries. You can also trace the values of the input, output, and changing parameters of validations, determinations, and actions, in addition to the duration of their execution. The app also shows you which exceptions are raised and where they occur.
  • Custom Catalog Extensions app
    • Supported for SAP S/4HANA Cloud, public edition only
    • If you create a new app (e.g. from a custom business object), you need to grant users permission to access it. The Custom Catalog Extensions app enables you to make your new app available on the SAP Fiori launchpad by assigning the required business catalogs and activating it.
  • Custom Tiles app
    • Supported for SAP S/4HANA Cloud, public edition only
    • You can create custom tiles to access external applications. For example, if you developed an app on SAP Business Technology Platform, you can create a custom tile that links directly to the app. You could also simply link to a website, which is what the Extensibility Explorer SAP Fiori app does.
  • Maintain Form Templates / Maintain Email Templates apps
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • Maintain Form Templates: View a list of available SAP-delivered form templates, create a new custom template, or copy an SAP template and customize. Customizations could include adding a header, logo or footer, (done with the Manage Logos and Manage Texts apps) and translating custom templates.
      Note
      For development of a form customized beyond what is possible in the app, you can download the form template file, edit it with the Adobe LiveCycle Designer, and upload as a custom template. You must use Adobe LiveCycle Designer for form templates with the SAP download link in the app Install Additional Software.
    • Maintain Email Templates: View a list of available SAP-delivered email templates, create a new custom template, or copy an SAP template and customize. Customizations could include creating language-specific variants and defining the subject and body text.
  • Custom Communication Scenarios app
    • Supported for SAP S/4HANA Cloud, public edition only
    • A communication scenario bundles inbound and outbound communication artifacts and is a basis for communication between systems. You can use this app to create a custom communication scenario, that can then be used to create the communication arrangement that links the two systems being integrated.
  • Custom CDS Views app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • The data model of SAP S/4HANA is based on CDS views in order to provide reuse, extensibility, and flexibility for customers. This app enables customers to build their own content based on the CDS views and other custom content (e.g. Custom Business Objects). Custom CDS views can serve different purposes; they can be consumed in analytics or be used as external APIs to be consumed by external applications.
  • Released ABAP Artifacts app
    • Supported for SAP S/4HANA Cloud, public edition only
    • This app enables key users to see details about approved ABAP development artifacts that are released as APIs. These artifacts can then be used in enhancement implementations (business logic).
  • Custom Analytical Queries app
    • Supported for both SAP S/4HANA Cloud, public edition and SAP S/4HANA Cloud, private edition
    • Tool used for reporting and analysis. It transforms and organizes raw data delivered from business documents into a meaningful grid, and abstracts the process of writing structured queries so you don't have to understand the query language or technical details to create custom queries.
  • Extensibility Templates / Extensibility Settings apps
    • Supported for SAP S/4HANA Cloud, public edition only
    • Extensibility templates allow an extension to be developed, exported in a template, then imported by a consumer. This allows large organizations with an extensive system landscape to distribute extensibility content across their landscape.
    • Extensibility Settings allows you to check a setting like transport enablement, and create settings for namespaces. The namespace settings are required for extensibility templates.

Management of Data in Extension Scenarios

The management of data in an extension scenario deviates from the management of data in the standard scenarios. You are responsible for ensuring that the data used in an extension scenario is managed in accordance with any applicable legal requirements or business needs, such as data protection legislation or data life cycle requirements. Please note that the extensibility framework is currently not integrated in the privacy-by-default functionality. Therefore, the extensibility framework should not be used for the processing of personal data if this processing falls under any applicable data protection legislation.

Note
For SAP S/4HANA Cloud, private edition, the SAP Fiori Extensibility apps need to be implemented and configured before using. Please refer to the SAP Help Portal: App-Specific Implementation and Configuration for details.

Developer In-App Extensibility

SAP S/4HANA Cloud, public edition ABAP Environment

Developer extensibility allows ABAP developers to create advanced cloud-ready and upgrade-stable custom ABAP code on SAP S/4HANA Cloud, public edition. This combines the benefits of custom ABAP code, with the required restrictions for cloud-readiness, and the SAP S/4HANA programming model to build SAP Fiori apps. Developer extensibility is completed in the development system, then transported to the test/quality system for testing, and finally transported to the production system.

Developer extensibility in the SAP S/4HANA Cloud, public edition ABAP Environment includes:

  • ABAP RESTful Application Programming model (RAP) to build services and SAP Fiori apps
  • Eclipse-based IDE (ABAP Development Tools) with debugger, troubleshooting, and testing tool support
  • ABAP software lifecycle support

To ensure cloud-readiness, developers must take into account the following restrictions:

  • Work within the cloud-optimized subset of the ABAP language.
  • Use only released SAP APIs or objects in the custom code.
  • Use only predefined extension points to extend SAP objects.
  • Ensure user access to data is controlled with thorough testing after developing customizations.
  • There is no default security when you create your own tables, meaning you cannot use ILM (Information Lifecycle Management) and IRF (Information Retrieval Framework).

Side-by-Side Extensibility with SAP Business Technology Platform

Side-by-Side Extensibility with SAP Business Technology Platform

SAP Business Technology Platform enables developers to implement loosely coupled extension applications securely, thus implementing additional workflows or modules on top of the existing SAP solution they already have. Loosely coupled extensions enable customizations to be built and integrated without disrupting the core system's performance or processes.

All standard SAP solutions are offered with in-app customizing capabilities. For additional customer requirements, the SAP Business Technology Platform extension capability can help them build, deploy, and operate their new functionalities easily and securely in on premise or cloud SAP solutions.

Extensibility in SAP Business Technology Platform is divided into three suites:

  • Extension Suite - Development Efficiency
    • Extend and optimize business processes in your existing applications, and simplify development with low-code tools to create innovative applications faster.
  • Extension Suite - Digital Experience
    • Deliver consistent, personalized, and unified user experiences across business applications and multiple channels at scale.
  • Extension Suite - Digital Process Automation
    • Automate repetitive and manual tasks with digitalized workflows and robotic process automation bots.
    • Predefined process content packages designed for specific lines of business and industries enable you to implement customizations quickly and easily.

SAP Cloud Software Developer Kit (SDK)

The SAP Cloud SDK (Software Developer Kit) makes connecting to and integrating with any SAP S/4HANA system easy. The SDK includes further features that facilitate application development, such as a virtual data model for SAP S/4HANA, abstractions of the underlying cloud platform implementation, fault-tolerance, cache management, and project templates.

In addition, the SDK delivers tools to get started quickly and maintain high quality, for example with project starters, a continuous delivery server and continuous delivery pipeline. These components enable developers to quickly set up the environment for development, quality assurance, and deployment that is essential for the development in cloud environments.

On a high level, the SAP Cloud SDK consists of two technical components: SAP Cloud SDK libraries and the Continuous Delivery Toolkit.You can use the SDK libraries in integration with SAP Cloud Application Programming Model, as well as independently with any framework of choice.

The continuous delivery toolkit of the SDK offers an out-of-the-box pipeline for bringing applications developed with the SDK into production and continuously deploy changes, without a heavy investment into setting up continuous delivery. This enables development teams to get their features and fixes quickly to their users and adopt a DevOps culture. Essentially, SAP Cloud SDK delivers cloud-native best practices to development teams in an easy-to-adopt manner.

Resources for Building & Consuming Side-by-Side Extensions

  • SAP API Business Hub
    • Discover and consume digital content packages with APIs, pre-packaged integrations, and sample apps from SAP and select partners.
  • SAP Business Technology Platform ABAP Environment
    • Use the provided libraries and project templates to simplify your ABAP application and extension development in the cloud.
  • SAP WEB IDE Full-Stack
    • You can easily develop, test, build, deploy, and extend role-based, consumer-grade apps for business users.
  • SAP Forms Service by Adobe
    • SAP Forms service by Adobe lets you generate print and interactive forms using Adobe Document Services.
  • SAP Store
    • Discover, download & buy SAP solutions, services & free trials from SAP & partners including business analytics, Crystal Reports, mobile apps, cloud solutions, and more.

Transport Extensions for Public Cloud

Transports in SAP S/4HANA Cloud, public edition

After you select the scope and define the organizational structure in SAP Central Business Configuration, the content is deployed to the development system tenants and activated. After content is activated, you complete product-specific configuration activities, such as defining expenses or work items and groups in SAP Central Business Configuration. After completing a configuration activity, you are prompted to assign the change to a customizing request. You can assign the changes to a new request or an existing one. These customizing requests can be further edited or released to the Test system with the Export Customizing Transports SAP Fiori app, which lives in the customizing tenant of the SAP S/4HANA Cloud Development system.

Additional business configuration done in the customizing tenant of the Development system, such as creating a custom workflow or teams and responsibilities are also recorded as customizing requests. The Export Customizing Transports SAP Fiori app is used to release these changes to the Test system too.

Key user extensions built with the SAP Fiori extensibility apps in the customizing tenant of the Development system must be added to a software collection and released in the Export Software Collection SAP Fiori app and to make them available for import in the Test system.

Changes in the development tenant (client 080) are recorded on workbench requests. To make a development available for import in the Test System, you release the workbench request with the Transport Organizer view in ABAP Development Tools.

The Import Collection SAP Fiori app is used in the Test and Production systems to import customizing requests, software collections, and development requests. The Test and Production systems only have one tenant (client 100).

Transport Extensions for Private Cloud

Transports in SAP S/4HANA Cloud, private edition

The transport of key user extensions is managed via the adaptation transport organizer (ATO). The ATO must be set up in order to use the SAP Fiori extensibility apps and those used to create packages and register extensions for transport.

In the Configure Software Packages Fiori app, you configure software packages and assign them to transport requests and tasks for transporting extension items. Software packages need to be assigned to a transport request and task to be enabled for change recording.

In the Register Extensions for Transport Fiori app, you can assign extension items to software packages that are enabled for change recording. To transport extensions items to your Quality or Production system, an administrator needs to release the corresponding transport requests and transport extension items in the backend with the Transport Organizer (SE09) transaction.

SAP Partner Solution Certification

SAP Partner Solution Certification

SAP PartnerEdge offers SAP Partners the ability to sell, build, or service SAP software.

Some of the options for partners to run SAP solutions include:

  • Partner Managed Cloud
    • Deliver SAP solutions to customers using a private cloud-based offering
    • License SAP public cloud solutions to customers
    • Work with customers to extend the scope and capabilities of the delivered solutions and add their specialized expertise.
  • Outsourcing Operations Partners
    • Provide cloud and infrastructure operations to customers (no SAP operations services are included in the infrastructure services)
    • Provide hosting operations to operate and maintain SAP applications to customers
    • Offer maintenance, daily operations, and ongoing functional support for SAP business applications - these services can currently be certified for SAP Business Suite, SAP S/4HANA, and SAP SuccessFactors solutions
    • Deliver operations services for solutions powered by the SAP HANA database
    • Offer the full stack of business process outsourcing services based on SAP business applications
    • Work according to the DevOps principles of flow, feedback, and continuous learning with a focus on cloud solutions and extensions
  • Solution Innovation
    • Co-innovation with SAP is a comprehensive program of guided services designed to help partners productize and take ideas to market.
    • Packaged solutions enable partners to build integrated solutions that combine SAP software and innovations with industry or LoB expertise, specialized, services, customizations, configurations, or applications. These solutions are built, sold, and supported by SAP partners.
  • Expert Recognition
    • The SAP Recognized Expertise designation demonstrates a specialization and depth of expertise in an industry, SAP solution, or both.

Learn more about SAP Partners Running SAP Solutions.

SAP-Qualified Partner-Packaged Solutions

There is a rigorous certification process for partner packaged solutions to become certified by SAP. Every package undergoes a qualification by SAP, where the partner demonstrates the uniqueness of their package and their ability to deliver. A vast library of certified partner add-ons can be implemented in SAP S/4HANA Cloud, private edition and SAP S/4HANA On Premise.

After becoming certified, solutions are listed in the SAP Certified Solutions Directory. To gain SAP Solution Certification, third-party Certified Vendor Partners leverage SAP-endorsed technologies to develop interface software eligible for SAP certification. SAP tests the software for correct implementation of SAP-endorsed technologies and/or stability in an SAP environment, which varies based on the type of certification.

The core components of a package include:

  • Standard SAP software
  • Partner services
  • Partner add-ons and extensions (optional)
    Note
    It's very important to check the compatibility of add-ons and see if additional packages are needed before and after a release upgrade is implemented.
  • Live demo system verified
  • Technical package with pre-configuration/customization
  • Documentation and go-to-market materials
Note
Search and filter by certifications to find partner solutions and the supported release version of the software in the SAP Certified Solutions Directory.

Save progress to your learning plan by logging in or creating an account

Login or Register