Explore RISE with SAP S/4HANA Cloud

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. Next time you upgrade the core system, there will be no conflicts with the customizations you've built in the Fiori apps or the Business Technology Platform.

Types of Extensibility

There are two primary types of extensibility: in-app and side-by-side extensibility.

In-app extensibility

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

  • "Key User" In-app extensions refer to customizations done through the frontend extensibility applications in the SAP Fiori launchpad (e.g. Custom Fields and Logic, Custom Business Objects). With these apps, only released APIs are accessible, which ensures any customizations done through the launchpad apps are lifecycle stable.
  • "Classic" in-app extensibility refers to having full flexibility to develop extensions and even modifications to the SAP core code in the backend. This is approach can create system stability problems, and make it difficult to scale with the business as the landscape grows more complex with these one-off customizations.
    Note
    Classic extensibility is only supported for Private Cloud and On Premise because it requires SAP GUI access. Full range of customization, including modifications to the SAP source code is supported, however customizing in the SAP GUI (transaction SPRO) should be the last resort, especially when designing new extensions.

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 system with the right APIs.

In-App Extensibility

In-App Extensibility in SAP S/4HANA Cloud

In-app extensibility can be referred to as "key-user", "managed", and classic. Key-user simply means someone without developer knowledge who has permission to access the extensibility catalog of applications in the SAP Fiori launchpad can implement custom fields, business objects, customize forms and email templates, or other types of supported extensions.

Managed refers to specific situations when you encounter code in the system. This is rare for RISE with SAP S/4HANA Cloud, but you will see ABAP code in a simplified web editor when implementing custom business logic. However, only APIs / business add-ins (BAdIs) that SAP allows you to implement in the system are available using the Fiori apps. In this sense, SAP is "managing" the business logic customizations you can implement.

Classic extensibility refers to full access to development tools. Classic extensibility with the ability to make modifications to SAP source code is supported for SAP S/4HANA Cloud, private edition, and SAP S/4HANA On Premise.

SAP Fiori Extensibility Apps & Capabilities:

  • Extensibility Explorer app
    • Supported for SAP S/4HANA Cloud (public only)
    • This app simply links to the SAP S/4HANA Cloud 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, 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 only)
    • You can explore the options available to extend an SAP S/4HANA Cloud 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 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 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 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 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 whitelisted ABAP BAdI code can be used in this app.
  • Custom Business Objects app
    • Supported for both SAP S/4HANA Cloud 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 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 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 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 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 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 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 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 only)
    • This app enables key users to see details about whitelisted 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 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 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.

Transporting In-App Extensions to Production Systems

  • In SAP S/4HANA Cloud, the SAP Fiori Export Software Collection app is used to create software collections. Extension items are added to the collection, then transported from the quality system to the production system. In the production system, the Import Software Collection app is used to import the software collection.
  • In SAP S/4HANA Cloud, private edition, the SAP Fiori Register Extensions for Transport app is used to assign extension items to software packages. Software packages can be created with the Configure Software Packages app, or in the backend in transaction Object Navigator (SE80) or in transaction Package Builder (SE21). Transport requests and tasks need to be created in either the Configure Software Packages app, or in the backend with transaction Transport Organizer (SE09).

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.

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.

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