SAP S/4HANA Cloud Public Edition

SAP S/4HANA Cloud Public Edition

SAP S/4HANA Cloud Public Edition provides a new upgrade-stable cloud extensibility model that clearly separates SAP code and extensions via mandatory publicly released SAP APIs and SAP extension points.

SAP S/4 HANA Cloud Extensibility

Extension allows for enhancements, without changing existing system functions.Extensions can be an addition of new functionality, or through modification of existing functionality.It extends the scope of standard SAP software​.

Types of Extensions / Extensibility Personas

On-Stack Extensibility

Extensions that are closely integrated with SAP S/4HANA Cloud data, apps, or transactions, and must run directly on the SAP S/4HANA Cloud platform.On-stack extensions are

                        SAP S/4 HANA Cloud Key User Extensibility (Low Code)

                        SAP S/4 HANA Cloud Developer Extensibility (Pro Code)

Key user extensions and on-stack developer extensions have access to local public interfaces released by the underlying ABAP Platform or the SAP S/4HANA Cloud applications.These APIs can be released for key user extensibility, for on-stack developer extensibility or for both options.On-stack developer extensibility is used for building applications that need to be tightly connected to SAP S/4HANA data, processes, or apps, and must run directly within the SAP S/4HANA system.On-stack extensions are developed and run on the same software stack as the underlying SAP S/4HANA Cloud system.This allows extensions to access SAP S/4HANA logic and data via SAP extension points, local SAP APIs or via SQL queries.ABAP Environment in S/4HANA Cloud is known as Embedded Steampunk.

 

Side-by-Side Extensibility

Extensions that run separately on SAP Business Technology Platform (SAP BTP) and connect to SAP S/4HANA for loosely coupled extension scenariosABAP Environment in BTP also known as Steampunk.

 

All these extensibility options use only SAP APIs and SAP extension points that have been released and are stable.

 

All three extensibility options are based on the usage of public SAP interfaces providing access to publicly released SAP APIs and SAP extension points.

Key User Extensibility / In-App Extensibility

Key user extensibility also known as in-app extensibilityKey-user, in-app extensions​ with key user tools, and these are web-based key user toolsKey user extensibility for low-code/no-code extensions created by key users, such as adapting the user interface or adding custom fields.Allows to add extensions to SAP S/4HANA Cloud solutions.It is based on stable extension points and APIsKey-user objects can be displayed and debugged, but cannot be edited with ABAP development toolsKey-user objects are separated by name range, software component, and ABAP packageAll in-app extensions are technically implemented inside the core of SAP S/4HANA.No remote communication between the extension and the extended app is required.Some of Key User Extensibility Tools are

                                             Custom Fields

                                             Custom Business Objects

                                             Custom Business Logic

                                             Custom Reusable Elements: Custom Code Lists

                                             Custom Reusable Elements: Custom Libraries

                                             Custom CDS Views

                                             Custom Communication Scenarios

                                             Communication Arrangements

                                             Maintain Translations

                                             Export/Import Collection

                                             Maintain Form Templates

                                             Maintain Email Templates      

                                             Customer Data browser

                                             View browser                                                  

 

The tools set up for key user extensibility are web-based, and SAP provides a special version of the ABAP language called ABAP for Key Users.

This is a simplified and restricted version of the ABAP programming language designed for robustness, security, data consistency and simplicity.

 

 

 

Developer Extensibility

On-stack developer extensibility using the SAP S/4HANA Cloud ABAP environment for developer extensions that are implemented in ABAP directly on the SAP S/4HANA Cloud technology stack.These are tight integration in SAP S/4HANA and happens only via stable APIs to keep the core clean.ABAP RESTful Application Programming model for the development of SAP Fiori apps based on stable extension points and APIsA development environment (IDE) for professional developers for Developer Extension.On-stack developer extensibility allows ABAP developers to connect to an SAP S/4HANA Cloud system using the ABAP development tools.On-stack developer extensibility offers the standard ABAP development tools support like ABAP Unit, ABAP test cockpit, ABAP profiler, ABAP debugger and the well-known SAP lifecycle management (change and transport system).SAP S/4HANA Cloud ABAP environment, extensions are developed using the new ABAP Cloud development model.The ABAP Cloud development model ensures that no SAP object is modified and that only local publicly released SAP APIs and extension points are used in the extensions.SAP S/4HANA Cloud and the ABAP Platform offer a large set of local APIs and extension points which can be used in on-stack extensions.Developers can explore these in the released objects tree of ABAP development tools for Eclipse.

 

SAP Business Accelerator Hub provides a section for On Stack extensibility (key user extensibility and developer extensibility), to know list of SAP CDS views and APIs are available with the release status.

Side-By-Side Extensibility

Extension and integration with custom or standard business applications of the SAP Business Technology Platform.This happens either via stable APIs or through business events from an SAP product.Side-by-Side Extensibility can be used for SAP Build Apps, SAP Build Process Integration, SAP Build Work Zone, SAP Build Code- CAP, SAP BTP, ABAP EnvironmentSide-by-side extensibility for developer extensions using the development and runtime environments offered by SAP BTP. For ABAP this is the SAP BTP ABAP environmentSide-by-side extensions can access SAP S/4HANA Cloud business objects through remote SAP APIs (OData services).In addition, these side-by-side extensions on SAP BTP ABAP environment have access to the exposed local released SAP APIs and extension points of the underlying ABAP Platform stack.Both SAP BTP ABAP environment and SAP S/4HANA Cloud ABAP environment are based on the same ABAP Platform stack and use the same local ABAP Platform interfacesThe SAP BTP ABAP environment provides the ABAP Platform as a service on SAP BTP.The cloud applications and extensions run side-by-side to the extended SAP S/4HANA systemAn ABAP developer accesses SAP BTP with the ABAP development tools and uses the ABAP Cloud development model to build SAP Fiori apps or services based on the ABAP RESTful application programming model (RAP).The ABAP Cloud development model ensures that only released local APIs of the underlying ABAP Platform can be used.Side-by-side extensions are independent of the SAP S/4HANA version.Side-by-side extensions mean extension and integration with custom or standard business applications of the SAP Business Technology Platform (BTP), This is either via stable APIs or through business events from an SAP product.All side-by-side extensions are technically implemented outside the core of SAP S/4HANA. As a result, remote communication between the extension and the extended app is required.Loosely coupled to SAP S/4HANA using stable remote APIs and eventsFull-fledged development platform to build extension applicationsIntegrate with other cloud solutions and third-party solutionsUse SAP BTP application services to enable an SAP Fiori and mobile user experienceSide-by-side extensibility provides a broader approach that leverages all the capabilities of SAP Business Technology Platform (SAP BTP).The extensions are loosely coupled to SAP S/4HANA and are based on stable remote APIs and events.Side-by-side extensions run on SAP BTP and are always based on remote APIs and events.  

 

 Custom UI on SAP Business Technology Platform or SAP Business Technology Platform App with Custom OData Service

Custom Fiori UI, built with web-based Integrated Development Environment (IDE) like SAP Business Application Studio (BAS) or SAP Web IDE, running on SAP Business Technology Platform, and with SAP predefined, released OData service or with custom OData service built with In-App extensibility tools.Use UI5 technology, UI5 templates, editors, and testing capabilities.Build UI applications with offline support.Deploy to your SAP Business Technology Platform account, or to a SAPUI5 ABAP repository.

 

SAP Business Technology Platform Application

SAP Business Technology Platform application (Java, JavaScript, HANA) running on SAP Business Technology Platform with SAP predefined released OData service.

Key User Extensibility Tools

The extensibility apps are used to extend the customize applications and it’s UIs, reports, email templates, and form templates.With the extensibility apps, possible to create custom fields, data source extensions, and enhancement implementations for specific business contexts to enhance predelivered applications that are extensible, to adapt them to business needs.Also possible to create custom CDS views based on predelivered data sources.Using CDS views, you can merge the data from different data sources and rearrange the fields according to application-specific needs.It is possible to create custom business objects with UIs and add custom logic to custom business objects, and to create custom applications based on custom business objects.

UI Flexibility

With the UI Adaptation Mode

Hide fields in a form, table, or filter, hide groups and areasRename labelsAdd field to Ul from field repositoryMove form field or Ul group by drag & drop, create new groups and move fields intoCombine fields into one line, split combined fieldsDefine new filter and variants for tablesApp variants: Instead of saving the changes made in UI adaptation in original app, save them in a new app variant.

Custom Fields

In the Custom Fields App, 

Create and edit custom fields (extend the SAP table, application, CDS views and OData services)Delete an existing custom fieldManage the usages of a custom field such as other Uls, reports, forms, service interfaces, processes, searchDefine fields of type Text, number, amount, quantity, time, date, timestamp, …Value help views based on fixed code list or based on CDS view.

 

Custom Fields Data Source Extensions

In the Custom Fields App, Data Source Extension tab

Extend SAP CDS Views and OData-Services with SAP fields that are available in CDS views.Data Source Extensions are used to enable the usage of existing fields in predelivered SAP data sources.Fields exposed via Data Source Extensions are always Read Only fields but not filled with data.Possible to overwrite the SAP Fields Label and TooltipData Source Extensions can be created for SAP applications that have been enabled for key user extensibility.Possible to create, edit, and delete data source extensions, to enable the usage of existing fields in predelivered data sources.Enable the usage of additional standard fields (fields delivered by SAP) in the data source.  

Custom Business Objects

In the Custom Business Objects app

Create custom business objects using CDS Views.Add fields to business objects, delete fields and business objectsCreate CDS views, OData services and UI to enter data through a UI or data load from other customer systemsCreate multiple sub-nodes for one business objectDefine fields of type association to other custom business objects and to SAP standard business objectsImplement custom logic on node level, write to custom business objects from custom logicPublish business objects, edit business objects that have already been publishedReset business objects to their last published versionCopy or delete an existing custom business object

Custom Logic

In the ABAP Web Editor, custom logic can be addedEasy exploration of extension points, key user documentationSyntax check, syntax highlighting, code completionDraft, published, testing includedABAP Language Version for Key UsersEnhancements can be created using Custom Logi App

Custom Reusable Elements

Custom Code List

A code list consists of code values and code value descriptionsCode values descriptions can be translatedCode list can be reused in several custom business objects Cannot modify or delete code values of code lists that are transported

 

Custom Libraries

With Custom Reusable Elements, custom code can be modularized and structuredPossible to create Custom Libraries and organize the methodsThis application is specifically designed for custom code reuseCreate a new custom libraryAdd a method to the created custom libraryAdd details to the methodUse global variables in custom reuse librariesCustom code can be Tested, saved and published.

 

Custom Reusable Logic

XCO Library

Extension Components (XCO Library)

String/XString: simplifications when working with strings/xstrings.UUID: effectively work with UUIDS, e.g. translate between different UUID formatsRegular expressions: match strings against patterns or extract substrings that match certain criteria.Time Library: standard abstractions for working with temporal values.JSON: work with JSON data, e.g. creation of JSON strings (both from ABAP data structures and from scratch), conversion of JSON strings to ABAP

Custom CDS Views

Create Custom CDS Views

This app is used to create custom CDS views for different purposes like Cube or Dimension views to use in analytical scenariosGeneral custom CDS views to be reused for view building in various scenarios.External APIs define a service that can be consumed externally via OData.Value Help Views used in Custom Fields and Custom Business Objects.Data Extraction views to enable full extraction capabilities with Custom CDS ViewsWith the app, can create or modify a custom CDS view like adding fields from multiple data sourcescreating your own calculated fields such arithmetical calculations, case statements, conversionsrefining the properties (such as aggregation behaviour, semantics) of the selected fieldscreating and maintaining parameters for the usage within the view adding filters to refine the result setEditing a custom CDS view is an assisted process with scenario specific guidance and checks.After publishing custom CDS View, can preview the results in the built-in data preview or in the Customer Data Browser

 

Tracing

Tracing can be used to see which determinations, validations and actions of which custom business object and nodes are being processed in which order.Can also trace values of the input, output and changing parameters of validations, determinations, actions and the duration of their executionBy creating a new trace, able to select a name and define properties

                   Retention date: until when a trace information will be available

                   Lifetime: activate time for a trace

                   Select user:Communication user in case of an incoming web service call

can start and stop the tracingThe result view of trace will also be listedThe icon on the trace overview indicates the status of the whole trace

Analytics Extensibility

Custom Analytical Queries (Query Builder)

Create Custom Analytical Queries

Create a query based on a released SAP analytical data source (CDS views of type cube) or a custom analytical data sourceCopy a query from a SAP delivered standard analytical queryAdd or remove or customize field defined in the query (defining new labels for a field, display data as key or text, show or hide result rows etc.)Add or remove filters (pre-configured fixed value filters or user input values filters)Create parameters to read the values from the userCreate calculated/restricted / converted measuresDefine HierarchiesTesting included: Preview the results by executing the report (in Design Studio)

 

View Browser

Search for CDS views and display details of SAP and custom views, also Filter by view type, release status, and with Free text searchCreate/manage analytical applicationsDisplay of content of CDS ViewShow the details of released CDS views and State for release SAP S/4HANA Cloud

Custom Tiles

With the Custom Tiles Fiori app

Create a new Fiori Launchpad tile with a static URLCustom Tiles can be created to access external application (e.g. on SAP Business Technology Platform) and want to create a tile with a URL link to this external application

 

Custom Communication Scenario

With Custom Communication Scenario

Configuration for custom inbound services for Custom Business Objects (created with the Custom Business Objects Fiori app) and Custom CDS views (created with the Custom CDS Views Fiori app)Configuration for custom outbound servicesWhen creating a Custom Business Object or a Custom CDS Views, select the OData Service flag in the respective Fiori appCreate a custom communication scenario in the Custom Communication Scenarios Fiori app.Possible to combine multiple OData services in one scenario.

 

Communication Arrangements

With Communication Arrangements,

Standard Communication Arrangements details can be shown the viewed.Custom Communication Arrangements can be created with standard communication or custom communication scenarios using Communication Arrangements.

 

Maintain Form Template

With Maintain Form Template,

Create a new form template can be created and can be accessed, modified using the Adobe lifecycle DesignerCustom Form can be created based on an existing data source (ODATA service) or based on an extended SAP data source (CDS View)

 

Maintain Email Templates

With Maintain Email Templates,

Create a new e-mail template based on an existing data source (CDS View) or based on an extended SAP data source (CDS View)

Extensibility Cockpit

Extensibility Cockpit

Search in business contexts for extensible objects (UI OData services, APIs, CDS views, business scenarios form/email templates, …) and BAdlsNavigation to creation of custom fields and BAdl implementation from the search result listShow the details of extensible CDS views, extensible OData service,extensible BAdls

 

Maintain Translations

With the Maintain Translations Fiori app, 

Maintain translations for key user objects, e.g. custom CDS views and custom analytical queriesSome key user apps provide translation capabilities in the app itself.

 

Extensibility Inventory Application

Extensibility Inventory Application

Can display an overview of extensibility items and view associations or dependencies between various extensibility itemsCan see how importing or exporting extensibility items affect other extensibility itemsInformation is provided in every extensibility item view like Name and type of extensibility item, date, last change, person who performed it, status of extensibility item (deleted, imported and/or exported)

Life Cycle Management

Two SAP Fiori applications are available in SAP S/4HANA Cloud for transporting extensions

Export Software Collection

Use this application in the test environment to bundle extensions in software collections and export them together.Create collections of extensibility items and export them from the test systemCheck can be done for the consistency of items in a collectionCollections can be mergedAdd notes during exportLock collections and lock changes of items in collections

Import Collection

Use this application in the productive/ Quality environment to import extensions.Import collections into a production system

References

Key User Extensibility OverviewGetting Started with In-App Extensibility in SAP S/4HANA | SAP LearningEnhancing Key User & Side-by-Side Extensibility for SAP S/4HANAPracticing Clean Core Extensibility for SAP S/4HANA CloudManaging Clean Core for SAP S/4HANA CloudManage Your SAP S/4HANA Cloud Public Edition | SAP Help PortalDeveloper Extensibility | SAP Help PortalOverview | SAP S/4HANA Cloud Public Edition | SAP Business Accelerator Hub

Conclusion:

SAP S/4HANA Cloud Public Edition provides a new upgrade-stable cloud extensibility model that clearly separates SAP code and extensions via mandatory publicly released SAP APIs and SAP extension points.

Key user extensions and on-stack developer extensions have access to local public interfaces released by the underlying ABAP Platform or the SAP S/4HANA Cloud applications.ABAP Environment in S/4HANA Cloud is known as Embedded Steampunk.Extensions that run separately on SAP Business Technology Platform (SAP BTP) and connect to SAP S/4HANA for loosely coupled extension scenariosABAP Environment in BTP also known as Steampunk.

 

 

 

 

 

 

 

​ SAP S/4HANA Cloud Public EditionSAP S/4HANA Cloud Public Edition provides a new upgrade-stable cloud extensibility model that clearly separates SAP code and extensions via mandatory publicly released SAP APIs and SAP extension points.SAP S/4 HANA Cloud ExtensibilityExtension allows for enhancements, without changing existing system functions.Extensions can be an addition of new functionality, or through modification of existing functionality.It extends the scope of standard SAP software​.Types of Extensions / Extensibility PersonasOn-Stack ExtensibilityExtensions that are closely integrated with SAP S/4HANA Cloud data, apps, or transactions, and must run directly on the SAP S/4HANA Cloud platform.On-stack extensions are                        SAP S/4 HANA Cloud Key User Extensibility (Low Code)                        SAP S/4 HANA Cloud Developer Extensibility (Pro Code)Key user extensions and on-stack developer extensions have access to local public interfaces released by the underlying ABAP Platform or the SAP S/4HANA Cloud applications.These APIs can be released for key user extensibility, for on-stack developer extensibility or for both options.On-stack developer extensibility is used for building applications that need to be tightly connected to SAP S/4HANA data, processes, or apps, and must run directly within the SAP S/4HANA system.On-stack extensions are developed and run on the same software stack as the underlying SAP S/4HANA Cloud system.This allows extensions to access SAP S/4HANA logic and data via SAP extension points, local SAP APIs or via SQL queries.ABAP Environment in S/4HANA Cloud is known as Embedded Steampunk. Side-by-Side ExtensibilityExtensions that run separately on SAP Business Technology Platform (SAP BTP) and connect to SAP S/4HANA for loosely coupled extension scenariosABAP Environment in BTP also known as Steampunk. All these extensibility options use only SAP APIs and SAP extension points that have been released and are stable. All three extensibility options are based on the usage of public SAP interfaces providing access to publicly released SAP APIs and SAP extension points.Key User Extensibility / In-App ExtensibilityKey user extensibility also known as in-app extensibilityKey-user, in-app extensions​ with key user tools, and these are web-based key user toolsKey user extensibility for low-code/no-code extensions created by key users, such as adapting the user interface or adding custom fields.Allows to add extensions to SAP S/4HANA Cloud solutions.It is based on stable extension points and APIsKey-user objects can be displayed and debugged, but cannot be edited with ABAP development toolsKey-user objects are separated by name range, software component, and ABAP packageAll in-app extensions are technically implemented inside the core of SAP S/4HANA.No remote communication between the extension and the extended app is required.Some of Key User Extensibility Tools are                                             Custom Fields                                             Custom Business Objects                                             Custom Business Logic                                             Custom Reusable Elements: Custom Code Lists                                             Custom Reusable Elements: Custom Libraries                                             Custom CDS Views                                             Custom Communication Scenarios                                             Communication Arrangements                                             Maintain Translations                                             Export/Import Collection                                             Maintain Form Templates                                             Maintain Email Templates                                                   Customer Data browser                                             View browser                                                   The tools set up for key user extensibility are web-based, and SAP provides a special version of the ABAP language called ABAP for Key Users.This is a simplified and restricted version of the ABAP programming language designed for robustness, security, data consistency and simplicity.   Developer ExtensibilityOn-stack developer extensibility using the SAP S/4HANA Cloud ABAP environment for developer extensions that are implemented in ABAP directly on the SAP S/4HANA Cloud technology stack.These are tight integration in SAP S/4HANA and happens only via stable APIs to keep the core clean.ABAP RESTful Application Programming model for the development of SAP Fiori apps based on stable extension points and APIsA development environment (IDE) for professional developers for Developer Extension.On-stack developer extensibility allows ABAP developers to connect to an SAP S/4HANA Cloud system using the ABAP development tools.On-stack developer extensibility offers the standard ABAP development tools support like ABAP Unit, ABAP test cockpit, ABAP profiler, ABAP debugger and the well-known SAP lifecycle management (change and transport system).SAP S/4HANA Cloud ABAP environment, extensions are developed using the new ABAP Cloud development model.The ABAP Cloud development model ensures that no SAP object is modified and that only local publicly released SAP APIs and extension points are used in the extensions.SAP S/4HANA Cloud and the ABAP Platform offer a large set of local APIs and extension points which can be used in on-stack extensions.Developers can explore these in the released objects tree of ABAP development tools for Eclipse. SAP Business Accelerator Hub provides a section for On Stack extensibility (key user extensibility and developer extensibility), to know list of SAP CDS views and APIs are available with the release status.Side-By-Side ExtensibilityExtension and integration with custom or standard business applications of the SAP Business Technology Platform.This happens either via stable APIs or through business events from an SAP product.Side-by-Side Extensibility can be used for SAP Build Apps, SAP Build Process Integration, SAP Build Work Zone, SAP Build Code- CAP, SAP BTP, ABAP EnvironmentSide-by-side extensibility for developer extensions using the development and runtime environments offered by SAP BTP. For ABAP this is the SAP BTP ABAP environmentSide-by-side extensions can access SAP S/4HANA Cloud business objects through remote SAP APIs (OData services).In addition, these side-by-side extensions on SAP BTP ABAP environment have access to the exposed local released SAP APIs and extension points of the underlying ABAP Platform stack.Both SAP BTP ABAP environment and SAP S/4HANA Cloud ABAP environment are based on the same ABAP Platform stack and use the same local ABAP Platform interfacesThe SAP BTP ABAP environment provides the ABAP Platform as a service on SAP BTP.The cloud applications and extensions run side-by-side to the extended SAP S/4HANA systemAn ABAP developer accesses SAP BTP with the ABAP development tools and uses the ABAP Cloud development model to build SAP Fiori apps or services based on the ABAP RESTful application programming model (RAP).The ABAP Cloud development model ensures that only released local APIs of the underlying ABAP Platform can be used.Side-by-side extensions are independent of the SAP S/4HANA version.Side-by-side extensions mean extension and integration with custom or standard business applications of the SAP Business Technology Platform (BTP), This is either via stable APIs or through business events from an SAP product.All side-by-side extensions are technically implemented outside the core of SAP S/4HANA. As a result, remote communication between the extension and the extended app is required.Loosely coupled to SAP S/4HANA using stable remote APIs and eventsFull-fledged development platform to build extension applicationsIntegrate with other cloud solutions and third-party solutionsUse SAP BTP application services to enable an SAP Fiori and mobile user experienceSide-by-side extensibility provides a broader approach that leverages all the capabilities of SAP Business Technology Platform (SAP BTP).The extensions are loosely coupled to SAP S/4HANA and are based on stable remote APIs and events.Side-by-side extensions run on SAP BTP and are always based on remote APIs and events.    Custom UI on SAP Business Technology Platform or SAP Business Technology Platform App with Custom OData ServiceCustom Fiori UI, built with web-based Integrated Development Environment (IDE) like SAP Business Application Studio (BAS) or SAP Web IDE, running on SAP Business Technology Platform, and with SAP predefined, released OData service or with custom OData service built with In-App extensibility tools.Use UI5 technology, UI5 templates, editors, and testing capabilities.Build UI applications with offline support.Deploy to your SAP Business Technology Platform account, or to a SAPUI5 ABAP repository. SAP Business Technology Platform ApplicationSAP Business Technology Platform application (Java, JavaScript, HANA) running on SAP Business Technology Platform with SAP predefined released OData service.Key User Extensibility ToolsThe extensibility apps are used to extend the customize applications and it’s UIs, reports, email templates, and form templates.With the extensibility apps, possible to create custom fields, data source extensions, and enhancement implementations for specific business contexts to enhance predelivered applications that are extensible, to adapt them to business needs.Also possible to create custom CDS views based on predelivered data sources.Using CDS views, you can merge the data from different data sources and rearrange the fields according to application-specific needs.It is possible to create custom business objects with UIs and add custom logic to custom business objects, and to create custom applications based on custom business objects.UI FlexibilityWith the UI Adaptation ModeHide fields in a form, table, or filter, hide groups and areasRename labelsAdd field to Ul from field repositoryMove form field or Ul group by drag & drop, create new groups and move fields intoCombine fields into one line, split combined fieldsDefine new filter and variants for tablesApp variants: Instead of saving the changes made in UI adaptation in original app, save them in a new app variant.Custom FieldsIn the Custom Fields App, Create and edit custom fields (extend the SAP table, application, CDS views and OData services)Delete an existing custom fieldManage the usages of a custom field such as other Uls, reports, forms, service interfaces, processes, searchDefine fields of type Text, number, amount, quantity, time, date, timestamp, …Value help views based on fixed code list or based on CDS view. Custom Fields Data Source ExtensionsIn the Custom Fields App, Data Source Extension tabExtend SAP CDS Views and OData-Services with SAP fields that are available in CDS views.Data Source Extensions are used to enable the usage of existing fields in predelivered SAP data sources.Fields exposed via Data Source Extensions are always Read Only fields but not filled with data.Possible to overwrite the SAP Fields Label and TooltipData Source Extensions can be created for SAP applications that have been enabled for key user extensibility.Possible to create, edit, and delete data source extensions, to enable the usage of existing fields in predelivered data sources.Enable the usage of additional standard fields (fields delivered by SAP) in the data source.  Custom Business ObjectsIn the Custom Business Objects appCreate custom business objects using CDS Views.Add fields to business objects, delete fields and business objectsCreate CDS views, OData services and UI to enter data through a UI or data load from other customer systemsCreate multiple sub-nodes for one business objectDefine fields of type association to other custom business objects and to SAP standard business objectsImplement custom logic on node level, write to custom business objects from custom logicPublish business objects, edit business objects that have already been publishedReset business objects to their last published versionCopy or delete an existing custom business objectCustom LogicIn the ABAP Web Editor, custom logic can be addedEasy exploration of extension points, key user documentationSyntax check, syntax highlighting, code completionDraft, published, testing includedABAP Language Version for Key UsersEnhancements can be created using Custom Logi AppCustom Reusable ElementsCustom Code ListA code list consists of code values and code value descriptionsCode values descriptions can be translatedCode list can be reused in several custom business objects Cannot modify or delete code values of code lists that are transported Custom LibrariesWith Custom Reusable Elements, custom code can be modularized and structuredPossible to create Custom Libraries and organize the methodsThis application is specifically designed for custom code reuseCreate a new custom libraryAdd a method to the created custom libraryAdd details to the methodUse global variables in custom reuse librariesCustom code can be Tested, saved and published. Custom Reusable LogicXCO LibraryExtension Components (XCO Library)String/XString: simplifications when working with strings/xstrings.UUID: effectively work with UUIDS, e.g. translate between different UUID formatsRegular expressions: match strings against patterns or extract substrings that match certain criteria.Time Library: standard abstractions for working with temporal values.JSON: work with JSON data, e.g. creation of JSON strings (both from ABAP data structures and from scratch), conversion of JSON strings to ABAPCustom CDS ViewsCreate Custom CDS ViewsThis app is used to create custom CDS views for different purposes like Cube or Dimension views to use in analytical scenariosGeneral custom CDS views to be reused for view building in various scenarios.External APIs define a service that can be consumed externally via OData.Value Help Views used in Custom Fields and Custom Business Objects.Data Extraction views to enable full extraction capabilities with Custom CDS ViewsWith the app, can create or modify a custom CDS view like adding fields from multiple data sourcescreating your own calculated fields such arithmetical calculations, case statements, conversionsrefining the properties (such as aggregation behaviour, semantics) of the selected fieldscreating and maintaining parameters for the usage within the view adding filters to refine the result setEditing a custom CDS view is an assisted process with scenario specific guidance and checks.After publishing custom CDS View, can preview the results in the built-in data preview or in the Customer Data Browser TracingTracing can be used to see which determinations, validations and actions of which custom business object and nodes are being processed in which order.Can also trace values of the input, output and changing parameters of validations, determinations, actions and the duration of their executionBy creating a new trace, able to select a name and define properties                   Retention date: until when a trace information will be available                   Lifetime: activate time for a trace                   Select user:Communication user in case of an incoming web service callcan start and stop the tracingThe result view of trace will also be listedThe icon on the trace overview indicates the status of the whole traceAnalytics ExtensibilityCustom Analytical Queries (Query Builder)Create Custom Analytical QueriesCreate a query based on a released SAP analytical data source (CDS views of type cube) or a custom analytical data sourceCopy a query from a SAP delivered standard analytical queryAdd or remove or customize field defined in the query (defining new labels for a field, display data as key or text, show or hide result rows etc.)Add or remove filters (pre-configured fixed value filters or user input values filters)Create parameters to read the values from the userCreate calculated/restricted / converted measuresDefine HierarchiesTesting included: Preview the results by executing the report (in Design Studio) View BrowserSearch for CDS views and display details of SAP and custom views, also Filter by view type, release status, and with Free text searchCreate/manage analytical applicationsDisplay of content of CDS ViewShow the details of released CDS views and State for release SAP S/4HANA CloudCustom TilesWith the Custom Tiles Fiori appCreate a new Fiori Launchpad tile with a static URLCustom Tiles can be created to access external application (e.g. on SAP Business Technology Platform) and want to create a tile with a URL link to this external application Custom Communication ScenarioWith Custom Communication ScenarioConfiguration for custom inbound services for Custom Business Objects (created with the Custom Business Objects Fiori app) and Custom CDS views (created with the Custom CDS Views Fiori app)Configuration for custom outbound servicesWhen creating a Custom Business Object or a Custom CDS Views, select the OData Service flag in the respective Fiori appCreate a custom communication scenario in the Custom Communication Scenarios Fiori app.Possible to combine multiple OData services in one scenario. Communication ArrangementsWith Communication Arrangements,Standard Communication Arrangements details can be shown the viewed.Custom Communication Arrangements can be created with standard communication or custom communication scenarios using Communication Arrangements. Maintain Form TemplateWith Maintain Form Template,Create a new form template can be created and can be accessed, modified using the Adobe lifecycle DesignerCustom Form can be created based on an existing data source (ODATA service) or based on an extended SAP data source (CDS View) Maintain Email TemplatesWith Maintain Email Templates,Create a new e-mail template based on an existing data source (CDS View) or based on an extended SAP data source (CDS View)Extensibility CockpitExtensibility CockpitSearch in business contexts for extensible objects (UI OData services, APIs, CDS views, business scenarios form/email templates, …) and BAdlsNavigation to creation of custom fields and BAdl implementation from the search result listShow the details of extensible CDS views, extensible OData service,extensible BAdls Maintain TranslationsWith the Maintain Translations Fiori app, Maintain translations for key user objects, e.g. custom CDS views and custom analytical queriesSome key user apps provide translation capabilities in the app itself. Extensibility Inventory ApplicationExtensibility Inventory ApplicationCan display an overview of extensibility items and view associations or dependencies between various extensibility itemsCan see how importing or exporting extensibility items affect other extensibility itemsInformation is provided in every extensibility item view like Name and type of extensibility item, date, last change, person who performed it, status of extensibility item (deleted, imported and/or exported)Life Cycle ManagementTwo SAP Fiori applications are available in SAP S/4HANA Cloud for transporting extensionsExport Software CollectionUse this application in the test environment to bundle extensions in software collections and export them together.Create collections of extensibility items and export them from the test systemCheck can be done for the consistency of items in a collectionCollections can be mergedAdd notes during exportLock collections and lock changes of items in collectionsImport CollectionUse this application in the productive/ Quality environment to import extensions.Import collections into a production systemReferencesKey User Extensibility OverviewGetting Started with In-App Extensibility in SAP S/4HANA | SAP LearningEnhancing Key User & Side-by-Side Extensibility for SAP S/4HANAPracticing Clean Core Extensibility for SAP S/4HANA CloudManaging Clean Core for SAP S/4HANA CloudManage Your SAP S/4HANA Cloud Public Edition | SAP Help PortalDeveloper Extensibility | SAP Help PortalOverview | SAP S/4HANA Cloud Public Edition | SAP Business Accelerator HubConclusion:SAP S/4HANA Cloud Public Edition provides a new upgrade-stable cloud extensibility model that clearly separates SAP code and extensions via mandatory publicly released SAP APIs and SAP extension points.Key user extensions and on-stack developer extensions have access to local public interfaces released by the underlying ABAP Platform or the SAP S/4HANA Cloud applications.ABAP Environment in S/4HANA Cloud is known as Embedded Steampunk.Extensions that run separately on SAP Business Technology Platform (SAP BTP) and connect to SAP S/4HANA for loosely coupled extension scenariosABAP Environment in BTP also known as Steampunk.         Read More Technology Blog Posts by Members articles 

#SAP

#SAPTechnologyblog

You May Also Like

More From Author