Week 4: Dealing with Existing Code Unit 1: The Business ...
Transcript of Week 4: Dealing with Existing Code Unit 1: The Business ...
2PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Topics
Week 4
01
02
03
04
The Business Scenario
Creating the CDS Data Model
Defining and Implementing the Business Object Behavior
Creating the Business Object Projection
05 Building and Previewing the OData UI Service
3PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Simplified flight data model for this openSAP course
Main business entities in current scenario
Secondary business entities in current scenario
TRAVEL
AGENCY FLIGHT
CUSTOMER
BOOKING
Travel
A Travel entity defines general travel data, such as the
agency ID or customer ID, status of the travel booking,
and the price of travel. The travel data is stored in the
database table /DMO/I_TRAVEL.
Booking
The booking data is stored in the database
table /DMO/BOOKING. The flight data model defines a
1:n cardinality between the Travel and the Booking entity.
Agency
An Agency entity defines travel agency data, such as the
address and contact data. The corresponding data is stored in the database table /DMO/AGENCY. The flight
data model defines a 1:n cardinality between Agency and
Travel.
Flight
The concrete flight data for each connection is stored in the database table /DMO/FLIGHT. The flight data model
defines a 1:n cardinality between the Connection and the
Flight entity.
Customer
A Customer entity provides a detailed description of a
flight customer (passenger) such as the name, the
address, and contact data. The corresponding data is stored in the database table /DMO/CUSTOMER. The flight
data model defines a 1:n cardinality between Customer
and Travel
4PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
The unmanaged scenario
BUSINESS DATA
NEW IMPEMENTATION
for transactional app
EXISTING LEGACY
BUSINESS LOGIC
WEB API SAP FIORI UI Other client or
consumer(Web Service, IDOC, …)
LEGACY UI
(Web Dynpro, SAP GUI)
5PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Resulting SAP Fiori elements app
Transactional List Report Travel App Search
Object Page
Create
Delete
Save
Update
6PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Dev flow – Unmanaged scenarios
CDS BEHAVIOR
DEFINITION
ADD
BEHAVIOR
IMPLEMENT
BEHAVIOR
ABAP CODE
Authority object
AUTHORITY CHECK
Lock object
CDS roleQUERY
DATA ACCESS
CONTROL
CDS-BASED
DATA MODEL
DEFINE SCOPE
SERVICE
DEFINITION
BIND TO SCENARIO
AND PROTOCOL
SERVICE
BINDING PREVIEW
BEHAVIOR
PROJECTION
ADD
BEHAVIOR
DATA MODEL
PROJECTION
PROJECT ELEMENTS & ENRICH PROJECT BEHAVIOR
APPLICATION DATA
DATABASE TABLES
7PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Unmanaged BO runtime implementation
SAP HANA
SAVE
SEQUENCE
checkBeforeSave
adjustNumbers
save
Application code
Already available for interaction phase, transactional buffer, and
save sequence
Existing code decoupled from UI and protocol technologies
Developers fully in charge of BO runtime, i.e. CRUD operations
Adapters needed to integrate the existing code
Examples
Sales Order, Purchase Order
Adapter for existing
application code
finalize
MO
DIF
Y
RE
AD
INTERACTION
PHASELO
CK
UNMANAGED RUNTIME
(APPLICATION CODE)
Transactional
Buffer
8PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Unmanaged BO runtime implementation – Adapter for existing application code
METHOD create.
DATA messages TYPE /dmo/t_message.DATA legacy_entity_in TYPE /dmo/travel.DATA legacy_entity_out TYPE /dmo/travel.LOOP AT entities ASSIGNING FIELD-SYMBOL(<entity>).
legacy_entity_in = CORRESPONDING #( <entity> MAPPING FROM ENTITY USING CONTROL ).CALL FUNCTION '/DMO/FLIGHT_TRAVEL_CREATE'
EXPORTINGis_travel = CORRESPONDING /dmo/s_travel_in( legacy_entity_in )
IMPORTINGes_travel = legacy_entity_outet_messages = messages.
IF messages IS INITIAL.APPEND VALUE #( %cid = <entity>-%cid travelid = legacy_entity_out-travel_id )
TO mapped-travel.ELSE.
“error handling…
ENDIF.ENDLOOP.
ENDMETHOD.
9PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Wrap-up
IN THIS UNIT, YOU LEARNED
▪ How the unmanaged implementation scenario for this week
differs from the scenarios from the last units
▪ How RAP supports this new scenario
NEXT UNIT
▪ Week 4 – Unit 2
Creating the CDS Data Model
10PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
The Business Scenario
Further readingAdditional Materiali
ABAP RESTful APPLICATION PROGRAMMING MODEL
INFORMATION PAGE
For more information, links to documentation, tutorials, and more, please
visit the RAP at openSAP information page by following the link below
RAP at openSAP information page (week 4)
© 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.
www.sap.com/contactsap
Follow all of SAP
2PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the CDS Data Model
Topics
Week 4
01
02
03
04
The Business Scenario
Creating the CDS Data Model
Defining and Implementing the Business Object Behavior
Creating the Business Object Projection
05 Building and Previewing the OData UI Service
3PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the CDS Data Model
Dev flow – Where we are
DEFINE SCOPE
SERVICE
DEFINITION
BIND TO SCENARIO
AND PROTOCOL
SERVICE
BINDING PREVIEW
Authority object
AUTHORITY CHECK
Lock object
CDS roleQUERY
DATA ACCESS
CONTROL
CDS-BASED
DATA MODEL
DATA MODEL
PROJECTION
PROJECT ELEMENTS & ENRICH
ADD
BEHAVIOR
CDS BEHAVIOR
DEFINITION
IMPLEMENT
BEHAVIOR
ABAP CODE
PROJECT BEHAVIOR
ADD
BEHAVIOR
BEHAVIOR
PROJECTION
APPLICATION DATA
DATABASE TABLES
4PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the CDS Data Model
What we will achieve in this unit
Root
key word
Composition
Associations
Field list
with aliases
Data
preview (F8)
5PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the CDS Data Model
Demo
1. Define the BO composition tree for the Travel and Booking entities
2. Preview the existing data
Creating the CDS Data Model
DEMO
HANDS ON
6PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the CDS Data Model
Wrap-up
IN THIS UNIT, YOU LEARNED
▪ What a BO composition tree is and how you
define it
NEXT UNIT
▪ Week 4 – Unit 3
Defining and Implementing the Business Object
Behavior
7PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the CDS Data Model
Further readingAdditional Materiali
ABAP RESTful APPLICATION PROGRAMMING MODEL
INFORMATION PAGE
For more information, links to documentation, tutorials, and more, please
visit the RAP at openSAP information page by following the link below
RAP at openSAP information page (week 4)
© 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.
www.sap.com/contactsap
Follow all of SAP
2PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
Topics
Week 4
01
02
03
04
The Business Scenario
Creating the CDS Data Model
Defining and Implementing the Business Object Behavior
Creating the Business Object Projection
05 Building and Previewing the OData UI Service
3PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
What we will achieve in this unit – Behavior Definition
Implementation
type unmanaged
Behaviour
implementation
classes
Standard
operations:
create, update
and delete
Specify fields that
are mandatory or
read-only
central mapping
for legacy
business logic
Create enabled
association
4PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
What we will achieve in this unit – Behavior Implementation
Local handler
class for buffer
access
Implementation of
standard
operations create,
update and delete
Create by
association
Local saver class
to save data to
database tables
Implementation
for read from
buffer
5PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
Dev flow – Where we are
DEFINE SCOPE
SERVICE
DEFINITION
BIND TO SCENARIO
AND PROTOCOL
SERVICE
BINDING PREVIEW
Authority object
AUTHORITY CHECK
Lock object
CDS roleQUERY
DATA ACCESS
CONTROL
CDS-BASED
DATA MODEL
DATA MODEL
PROJECTION
PROJECT ELEMENTS & ENRICH
ADD
BEHAVIOR
CDS BEHAVIOR
DEFINITION
IMPLEMENT
BEHAVIOR
ABAP CODE
PROJECT BEHAVIOR
ADD
BEHAVIOR
BEHAVIOR
PROJECTION
APPLICATION DATA
DATABASE TABLES
6PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
Demo
1. Create and define BO behavior definition for the Travel and Booking entities
2. Implement the BO behavior for the Travel and Booking entities
3. Create a unit test to test the BO implementation via EML
Create and implement the transactional BO behavior
DEMO
HANDS ON
7PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
Wrap-up
IN THIS UNIT, YOU LEARNED
▪ How to define the BO behavior definition for the Travel and
Booking entities and how to implement it
NEXT UNIT
▪ Week 4 – Unit 4
Creating the Business Object Projection
8PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Defining and Implementing the Business Object Behavior
Further readingAdditional Materiali
ABAP RESTful APPLICATION PROGRAMMING MODEL
INFORMATION PAGE
For more information, links to documentation, tutorials, and more, please
visit the RAP at openSAP information page by following the link below
RAP at openSAP information page (week 4)
© 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.
www.sap.com/contactsap
Follow all of SAP
2PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
Topics
Week 4
01
02
03
04
The Business Scenario
Creating the CDS Data Model
Defining and Implementing the Business Object Behavior
Creating the Business Object Projection
05 Building and Previewing the OData UI Service
3PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
What we will achieve in this unit – Data Model Projection
Enable Search
@Search.searchable:
true
Define value help
@Consumption.
valueHelpDefinition
Define association as
redirected to
composition child
Allow use of
MetaDataExtensions
Define association as
redirected to parent
4PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
What we will achieve in this unit – Metadata Extension
@UI.presentation
Variant
defines default sort
order
@UI.facet
annotations
@UI.headerInfo
5PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
What we will achieve in this unit – Behavior Projection
Define which
standard operations
are used
Define that create
enabled association
is used
Define that etag is
used
6PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
Dev flow – Where we are
DEFINE SCOPE
SERVICE
DEFINITION
BIND TO SCENARIO
AND PROTOCOL
SERVICE
BINDING PREVIEW
Authority object
AUTHORITY CHECK
Lock object
CDS roleQUERY
DATA ACCESS
CONTROL
CDS-BASED
DATA MODEL
DATA MODEL
PROJECTION
PROJECT ELEMENTS & ENRICH
ADD
BEHAVIOR
CDS BEHAVIOR
DEFINITION
IMPLEMENT
BEHAVIOR
ABAP CODE
PROJECT BEHAVIOR
ADD
BEHAVIOR
BEHAVIOR
PROJECTION
APPLICATION DATA
DATABASE TABLES
7PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
Demo
1. Define the BO data model projection for the Travel and Booking entities
2. Define Metadata Extensions for the BO data model projection
3. Define the BO behavior projection for the Travel and Booking entities
Define the business object BO projection
DEMO
HANDS ON
8PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
Wrap-up
IN THIS UNIT, YOU LEARNED
▪ How to define the BO data model projection and the
BO behavior projection for the Travel and Booking
entities
NEXT UNIT
▪ Week 4 – Unit 5
Building and Previewing the OData UI Service
9PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Creating the Business Object Projection
Further readingAdditional Materiali
ABAP RESTful APPLICATION PROGRAMMING MODEL
INFORMATION PAGE
For more information, links to documentation, tutorials, and more, please
visit the RAP at openSAP information page by following the link below
RAP at openSAP information page (week 4)
© 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.
www.sap.com/contactsap
Follow all of SAP
2PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
Topics
Week 4
01
02
03
04
The Business Scenario
Creating the CDS Data Model
Defining and Implementing the Business Object Behavior
Creating the Business Object Projection
05 Building and Previewing the OData UI Service
3PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
What we will achieve in this unit – Service Definition
Define scope of
service
4PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
What we will achieve in this unit – Service Definition, Service Binding, Preview
Define scope
of service
Define
binding type
SAP Fiori
Elements
Preview
5PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
Dev flow – Where we are
DEFINE SCOPE
SERVICE
DEFINITION
BIND TO SCENARIO
AND PROTOCOL
SERVICE
BINDING PREVIEW
Authority object
AUTHORITY CHECK
Lock object
CDS roleQUERY
DATA ACCESS
CONTROL
CDS-BASED
DATA MODEL
DATA MODEL
PROJECTION
PROJECT ELEMENTS & ENRICH
ADD
BEHAVIOR
CDS BEHAVIOR
DEFINITION
IMPLEMENT
BEHAVIOR
ABAP CODE
PROJECT BEHAVIOR
ADD
BEHAVIOR
BEHAVIOR
PROJECTION
APPLICATION DATA
DATABASE TABLES
6PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
Demo
1. Create the service definition from the data model projection
2. Create the service binding
3. Preview your SAP Fiori elements app
Create and preview the OData UI service
DEMO
HANDS ON
7PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
Wrap-up
IN THIS UNIT, YOU LEARNED
▪ How to create the service definition from the data
model projection
▪ How to create the service binding and test the service
NEXT UNIT
▪ Week 5
Service Consumption and Web APIs
8PUBLIC© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Building and Previewing the OData UI Service
Further readingAdditional Materiali
ABAP RESTful APPLICATION PROGRAMMING MODEL
INFORMATION PAGE
For more information, links to documentation, tutorials, and more, please
visit the RAP at openSAP information page by following the link below
RAP at openSAP information page (week 4)
© 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.
www.sap.com/contactsap
Follow all of SAP