Sunteți pe pagina 1din 31

In-App Extensibility

Product Management, SAP


September 2020

PUBLIC
Agenda

Motivation for a New Extensibility Concept in S/4HANA


Extensibility Spectrum
SAP S/4HANA Extensibility Scenarios
In-app Key User Extensibility
S/4HANA Key User Extensibility
▪ UI Flexibility
▪ Custom Fields
▪ Data Source Extensions
▪ Custom Business Logic
▪ Custom Business Objects
▪ Custom Reusable Elements
▪ Custom Code List
▪ Tracing

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Agenda

S/4HANA Key User Extensibility


▪ Associations – Custom Fields and Custom Business Objects

▪ Analytics Extensibility – KPI Design

▪ Analytics Extensibility - Custom Analytical Queries (Query Builder)

▪ Analytics Extensibility - Custom CDS Views

▪ Custom Forms

▪ Custom Tiles

▪ Custom Catalog Extensions

▪ Custom Communication Scenario

▪ Custom CDS View OData-Scenario

▪ Lifecycle Management

▪ Extensibility Inventory Application

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Extensibility
In-app extensibility and side by side extensibility using SAP Cloud Platform

Key user can do SAP Cloud Platform


easy changes directly for side by side extensions
in the app and cloud integration

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Motivation for a New Extensibility Concept in S/4HANA

CLASSICAL EXTENSIBILITY DE-COUPLING AND LIFECYCLE STABILITY


Custom Code Development and Extensions today In-app Extensibility with Key User Tools
• Modifications of SAP code • Custom fields and tables,
SAP
S/4HANA
• Extensions calling SAP code customer analytics and forms, Cloud

(no APIs available) business logic (cloud ABP Web


SAP SAP
• Software updates require S/4HANA editor), … S/4HANA
On-premise On-premise

major adoption effort in • Web-based key user tools


customer/partner code • Based on stable extension points
and APIs

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Motivation for a New Extensibility Concept in S/4HANA

De-coupling and Lifecycle Stability


In-App Extensibility Side-by-side Extensibility
Challenge
on SAP Cloud Platform
• Software is always patched and upgraded based on a fixed
UI UI
schedule and new innovations are introduced easily.

Application App Solution


• Only extensibility that does not block SAP software updates and
continue to work after an update without manual steps is allowed.
Database DB
• Custom extensions are loosely coupled, i.e. the software lifecycle of
“De-coupled, Lifecycle-stable Extensions”
extensions is de-coupled from stable systems of records.
− Modification free
− Clash free
− Use whitelisted APIs and extension points
− Compliant with zero-downtime principles

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Motivation for a New Extensibility Concept in S/4HANA

Empowering the Key User • Create/change complex business logic


• Rich, modern IDE functionality, incl. debugging,
code checks, quality tools
Challenge • Support of big projects/teams
• Line of Business departments drive the
Developer
implementation of (Cloud / IT) services

Task complexity
Solution
• Extensibility tools are used by in business • Perform simple tasks in an easy way
departments that should easily apply non-disruptive • Fool-prove and life-cycle stable
• WYSIWYG / instant testing included
extensibility tasks without risk. • Low entry barrier
• In particular for: Business Expert,
− UI Adaptations Implementation Consultant
− Custom fields and tables
− Custom analytics and forms
− Custom business logic (cloud ABAP Web editor) Feature Richness

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Extensibility Spectrum

Functional Scope

Personalization

Layering
Key User Extensibility

Customer & Partner Development

Industry & Globalization Development

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


SAP S/4HANA Extensibility Scenarios

Fiori Lauchpad
Fiori Launchpad SAP Fiori
I6 Custom UI
is a collection of apps with a simple and easy-
Custom User User Interface
to-use experience for broadly used SAP
Interface (Fiori) (Fiori) software functions that work seamlessly across
I1 UI Adaptation devices – desktop, tablet, and smartphone.
Frontend
Backend: ABAP Server

OData Service OData Service OData


OData (Open Data Protocol)
is an OASIS standard that defines the best
practice for building and consuming RESTful
Custom Business Objects

APIs.
I3
Custom Fields

Analytics / Forms

Application Application
(ABAP | CDS) (ABAP | CDS) CDS (Core Data Services)
I4 Business Logic CDS is an enhancement of SQL which provides
a data definition language (DDL) for defining
semantically rich database tables/views (CDS
I2

entities) in the database. The enhancements


Database Table Database Table
I5

include annotations, associations, and


expressions
SAP In-App Extensibility

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Extensibility
Overview

UI Custom Custom
Key User Custom
Tools
Adaptation Business Business
at Runtime Fields
Object Logic

Custom
Custom
Analytical KPIs Forms
CDS View
Queries

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10


SAP S/4HANA Key User Extensibility: UI Flexibility

With the UI Adaptation Mode, you can


• Hide fields in a form, table, or filter, hide groups and areas

• Rename labels

• Add field to UI from field repository

• Move form field or UI group, create new groups and move


fields into

• Combine fields into one line, split combined fields

• Define new filter and table variants

Figure: UI Adaptation Mode – Adaptation Mode with Drag&Drop


Configuration

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


SAP S/4HANA Key User Extensibility: Custom Fields

In the Custom Fields and Logic Fiori app, you can


• Create and edit custom fields (extend the SAP table,
application, CDS views and OData services)

• Delete an existing custom field (deletion is not possible if a field


has been transported)

• Manage the usages of a custom field such as other UIs, reports,


forms, service interfaces, processes, search

• Define fields of type associations to custom business objects


or to SAP standard business objects
Figure: Custom Fields Fiori App
• Extend SAP CDS Views and OData-Services with SAP fields
that are available in CDS views in “lower layers” of the virtual
data model

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12


SAP S/4HANA Key User Extensibility: Custom Business Objects

In the Custom Business Objects app you can


• Create your own business objects and the corresponding
database tables

• Add fields to business objects, delete fields and business objects

• Create CDS views, OData services and UI to enter data through a


UI or data load from other customer systems

• Create multiple sub-nodes for one business object

• Define fields of type association to other custom business objects


and to SAP standard business objects

• Implement custom logic on node level, write to custom business


objects from custom logic

• Publish business objects, edit business objects that have already


been published

Figure: Custom Business Objects Fiori App


• Reset business objects to their last published version

• Copy or delete an existing custom business object

• Perform a trace
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13
SAP S/4HANA Key User Extensibility: Custom Business Logic

Web Editor
• Easy exploration of APIs, key user documentation

• Syntax check, syntax highlighting, code completion

• Draft (sandboxing) / published, testing included

• Restricted ABAP:
• Robustness / security / data consistency

• For example, the following statements are not allowed: any DB


operation except selects from released views, tweaking new tasks,
dynamic programming, code generation

• Simplicity: obsolete ABAP statements are removed from


the syntax

• This feature is available for released enhancement options. As


Figure: Custom Business Logic Fiori App of 1711 SAP offers more than 80 enhancement options.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 14


SAP S/4HANA Key User Extensibility: Analytics Extensibility
KPI Design
KPI design Fiori apps
• Modify SAP delivered KPIs by copying them and adjusting to
your business needs

• Define drill downs to analyze the KPIs to better understand your


business situation

• Apply filters on the drill down to narrow down to your area of


interest.

• Save the filtered analysis to launch the same analysis at a later


point in time

• Define associations between KPIs so that they are available


during analysis at runtime.
Key User Fiori App KPI Workspace
• Navigate to transactional apps to take action based on your
analysis

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 15


SAP S/4HANA Key User Extensibility: 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 source

• Copy a query from a SAP delivered standard analytical query

• Add 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 user

• Create calculated / restricted / converted measures


Key User Fiori App Custom Analytical Queries

• Testing included: Preview the results by executing the report (in


Design Studio)

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 16


SAP S/4HANA Key User Extensibility: Analytics Extensibility
Custom CDS Views
Create Custom CDS Views
• Display a list of all pre-delivered public data sources (VDM CDS
views) and already existing custom CDS views and Preview the
available data sources (CDS views)

• Create new custom CDS views

− Choose a primary data source

− Add one or more associated data sources according to your


needs

− Perform changes on the properties (“annotation” such as


aggregation behavior, semantics) of the fields
Key User Fiori App Custom CDS Views
− Create calculated fields such arithmetical calculations, case
statements, conversions

− Display the parameters of the selected data sources if they


contain such

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 17


SAP S/4HANA Key User Extensibility: Custom Reusable Elements

Custom Reusable Elements


• With Custom Reusable Elements you can modularize and structure
your custom code
• You can create Custom Libraries and organize your methods
• This application is specifically designed for custom code reuse
• Key Features:
• Create a new custom library
• Add a method to your created custom library
• Add details to your method
• Test your custom code, save and publish your custom code and
method
• Supported device types:
• Desktop
Custom Reusable Elements – Labs Preview
• Tablet

Video link
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 18
SAP S/4HANA Key User Extensibility: Custom Code List

Custom Code List


• A code list consists of code values (example: enUS) and code
value descriptions (example English (US))
• Code values descriptions can be translated
• You can reuse a code list in several custom business objects
• You cannot modify or delete code values of code lists that are
transported

Custom Code List

Video link
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 19
SAP S/4HANA Key User Extensibility: Tracing

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.
• You can also trace values of the input, output and changing
parameters of validations, determinations, actions and the duration
of their execution
• By creating a new trace you are able to select a name and define
properties:
• Retention date: until when a trace information will be available
• Lifetime: activate time for a trace
Tracing • You can start and stop the tracing
• The result view of your trace will also be listed
• The icon on the trace overview indicates the status of the whole
trace

Video link
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 20
SAP S/4HANA Key User Extensibility: Custom Catalog Extensions

Catalog Extensions Fiori app, you can


• Extend SAP Fiori catalogs

• Add custom business object UI to a SAP Fiori catalog

• Add a Smart Business KPIs or Report to a SAP Fiori catalog

• Add a Analytical Design Studio Application to a SAP Fiori catalog

• Add a Custom Tile to a SAP Fiori catalog

• Add a Analytic Cloud Story to a SAP Fiori catalog

• Custom Inbound Service App: Customers can call an inbound


service via oAuth
Custom Catalog Extension
By extending the Fiori catalog the respective custom Fiori tile is
assigned to to the selected Fiori catalog, and the tile appears in the
Fiori Launchpad.

In the Fiori Launchpad, you can use the “Personalize Home Page”
feature to add custom tile to one or more launchpad groups.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 21


SAP S/4HANA Key User Extensibility: Custom Communication Scenario

Custom Communication Scenario


• Custom Business Objects (created with the Custom Business
Objects Fiori app)

• Custom CDS views (created with the Custom CDS Views Fiori app)

OData exposure
• When creating a Custom Business Object or a Custom CDS
Custom Communication Scenario
Views, select the „OData Service“ flag in the respective Fiori app

• Create a custom communication scenario in the Custom


Communication Scenarios Fiori app. You can combine multiple
OData services in one scenario.

• Create a communication arrangement in the Custom


Arrangement Fiori app. In the communication arrangement, you
maintain the technical user that is used by the client. By activating
the communication, the system activates the service endpoint and
authorizes the technical user for the services that are bundled in the
communication arrangement.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 22


SAP S/4HANA Key User Extensibility: Custom CDS View OData-Scenario

Custom CDS Views for OData scenarios


• Custom CDS Views can be created via Custom CDS View
application

• A primary data source can be selected as a basis

• OData scenario can be selected in general tab

• Different fields can be chosen in the field selection

• After publishing, the view gets saved, activated and the OData
service gets activated and can be used in communication scenario

• OData service can be added in communication scenario and this


scenario can be published
Custom CDS View OData-Scenario
• Publishing the communication scenario generates the
communication scenario for the OData service, the authorization
role for the selected service and the service (IFC node) gets
activated

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 23


SAP S/4HANA Key User Extensibility: Custom CDS View OData-Scenario

Custom CDS Views for OData scenarios


• In Addition a communication arrangement can be generated with the
previously created communication scenario, a technical user can
also be created

• The creation of a communication arrangement grants access to the


views data via service and technical user

• After a communication arrangement is published the authorizations


for the service is assigned to a communication user

• Now services can be called in a web browser and the logon with the
communication user is possible

• Services can be consumed, like in Excel


Custom CDS View OData-Scenario
• The creation of connections to S/4HANA cloud systems are
possible. Therefore services can be called from the S/4HANA
system

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 24


SAP S/4HANA Key User Extensibility: Lifecycle Management

Public Cloud - SAP updates


• All extensibility capabilities offered to customers must continue to
work after an SAP software update without manual work
• In other words: SAP software updates do not depend on
adaptations by the customer

Public Cloud - Transport of custom objects


• Transport from the test to the production system
• Performed by the key user without interaction with the service
provider
• Outside of the maintenance window of the service provider

Key User Fiori App for transport of custom objects (Cloud): On Premise
Export Software Collection and Import Software Collection
• Customer manages SAP updates and customer transport with
“classical” transport tools (correction and transport system, CTS)

Video link
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 25
SAP S/4HANA Key User Extensibility: Extensibility Inventory Application

Extensibility Inventory Application


• You can display an overview of your extensibility items and view
associations or dependencies between various extensibility items
• You can see how importing or exporting extensibility items affect
other extensibility items
• Following information is provided in every extensibility item view:
• HEADER
− Name and type of extensibility item, date, last change, person who
performed it, status of extensibility item (deleted, imported and/or
exported)
• USES
− Other extensibility items that the extensibility item in question uses, their
name and type, further extensibility items that are used by or use these
Extensibility Inventory Application extensibility items
• USED BY
− Other extensibility items that the extensibility item in question is used by,
their name and type, further extensibility items that are used by these
extensibility items
• CHANGE HISTORY (in the cloud versions only)
− full history of changes made to the extensibility item in question
Video link
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 26
SAP S/4HANA Extension Decision Matrix: How to de-couple from the Core
Differentiate and innovate with customer extensions
Use cases and requirements In-App Side-by-side Examples and further details

Is custom code being used by external Consumers, business partners, patients, citizens etc.
user groups?
Is custom functionality to be consumed via Mobile scenarios (incl. Offline capabilities)
mobile devices (web or native)?
Scope of extension covered by In-App Key Close to standard processes, focus on UI adaptations,
User Extensibility? custom fields and tables with generated standard apps,
custom analytics and forms
Are APIs (Exits, BAPIs, Service) available Including hybrid models with API‘s built as in-app
to consume standard functionality? extensions and side-by-side apps consuming them
Is custom functionality to be enhanced by IoT, ML, Document Management, DataHub, etc.
innovative cloud services incl. partner
solutions on SCP
Is custom code executed before or after a After steps: Approvals etc.
standard process
Is custom code executed in between a
standard process

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 27


Extensibility of S/4HANA - Helpful Links

1. White Paper: SAP S/4HANA Extensibility for Customers and Partners


▪ White Paper, update August 2016 http://go.sap.com/documents/2015/07/2ad59b27-347c-0010-82c7-eda71af511fa.html

2. Blog Posts
▪ Key User Extensibility Tools of S/4HANA last update February 2017
▪ S/4HANA Extensibility Use Case Overview September 2016
▪ S/4HANA Extensibility: How to connect your SAP S/4HANA Cloud to SAP Cloud Platform (AP CP) October 2016

3. SAP S/4HANA Cloud – Feature Description


▪ S/4HANA Cloud 1611: General functions for the key user -> Extensibility
▪ Inside the user assistance documents, see the videos with a tour on the available extensibility tools:
– Creating Extension Items and Transporting Them
– Generating Customer Applications

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 28


Extensibility of S/4HANA - Helpful Links

3. SAP S/4HANA (On Premise) – Feature Description


▪ http://help.sap.com/s4hana_op_1610> Product Assistance (English) > SAP S/4HANA Enterprise Technology > SAP NetWeaver > General Functions for Key
Users > Extensibility
▪ Inside the user assistance documents, see the videos with a tour on the available extensibility tools:
− Creating Extension Items and Transporting Them
▪ 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 and go to Implementation
Information, Extensibility.

4. Online Sessions and Webinars, YouTube videos and other external links
▪ OpenSAP Course “Extending S/4HANA with HCP” January 2017
▪ Tutorial on In-app Extensibility: https://blogs.sap.com/?p=391857 January 2017
▪ In-app extensibility is now contained in the new S/4HANA 1610 image that is available in the SAP Cloud Appliance Library. So you can get your S/4HANA system,
launch it on Amazon Web Services and explore the extensibility features by your own: SAP S/4HANA trial –> Demo Guide –>Demo Story 7 “Extensibility” (p. 140
ff). January 2017
▪ The Key User Extensibility Tools of S/4 HANA : SAP Mentor Monday Webinars 2016, February 2016, 1h Session Replay. Includes demos of the Fiori apps for
Business Logic (Web-based Editor with Restricted ABAP), Query Designer, Custom Business Objects, Fiori UI Flexibility, Custom Fields (demos starting at 18:00)
▪ Extensibility Concepts for S/4HANA : Recorded TechEd Session, October 2015, 1h Session Replay
▪ Adapting the User Interface of SAP Fiori Apps at Runtime – YouTube

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 29


Thank you.
Contact information:
Product Management, SAP
Follow us

www.sap.com/contactsap

© 2020 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/copyright for additional trademark information and notices.

S-ar putea să vă placă și