Unit 1: The Business Scenario: Week 4: Dealing With Existing Code

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 52

Week 4: Dealing with Existing Code

Unit 1: The Business Scenario


The Business Scenario
Topics

01 The Business Scenario

02 Creating the CDS Data Model

03 Defining and Implementing the Business Object Behavior

04 Creating the Business Object Projection

Week 4 05 Building and Previewing the OData UI Service

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


The Business Scenario
Simplified flight data model for this openSAP course

A Travel entity defines general travel data, such as the


agency ID or customer ID, status of the travel booking,
Travel and the price of travel. The travel data is stored in the
CUSTOMER database table /DMO/I_TRAVEL.
The booking data is stored in the database
Booking table /DMO/BOOKING. The flight data model defines a
1:n cardinality between the Travel and the Booking entity.
An Agency entity defines travel agency data, such as the
address and contact data. The corresponding data is
TRAVEL BOOKING Agency stored in the database table /DMO/AGENCY. The flight
data model defines a 1:n cardinality between Agency and
Travel.
The concrete flight data for each connection is stored in
the database table /DMO/FLIGHT. The flight data model
Flight
defines a 1:n cardinality between the Connection and the
AGENCY FLIGHT Flight entity.
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
Customer
Main business entities in current scenario stored in the database table /DMO/CUSTOMER. The flight
data model defines a 1:n cardinality between Customer
Secondary business entities in current scenario
and Travel

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


The Business Scenario
The unmanaged scenario

Other client or
LEGACY UI
WEB API SAP FIORI UI consumer
(Web Dynpro, SAP GUI)
(Web Service, IDOC, …)

NEW IMPEMENTATION EXISTING LEGACY


for transactional app BUSINESS LOGIC

BUSINESS DATA

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


The Business Scenario
Resulting SAP Fiori elements app

Transactional List Report Travel App Search

Create

Delete
Object Page

Update

Save
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5
The Business Scenario
Dev flow – Unmanaged scenarios

SERVICE
BINDING PREVIEW
BIND TO SCENARIO
AND PROTOCOL

SERVICE
DEFINITION
DEFINE SCOPE

ADD
BEHAVIOR

DATA MODEL BEHAVIOR


PROJECTION PROJECTION
PROJECT ELEMENTS & ENRICH PROJECT BEHAVIOR

ADD IMPLEMENT
BEHAVIOR BEHAVIOR
Authority object CDS role
QUERY
DATA ACCESS CDS-BASED CDS BEHAVIOR
CONTROL DATA MODEL DEFINITION ABAP CODE

AUTHORITY CHECK
APPLICATION DATA
DATABASE TABLES Lock object
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6
The Business Scenario
Unmanaged BO runtime implementation

INTERACTION SAVE
PHASE SEQUENCE
Application code
finalize
Already available for interaction phase, transactional buffer, and
checkBeforeSave save sequence
MODIFY

Existing code decoupled from UI and protocol technologies


adjustNumbers
READ

LOCK

Developers fully in charge of BO runtime, i.e. CRUD operations


save
Adapters needed to integrate the existing code

UNMANAGED RUNTIME
(APPLICATION CODE) Examples
Transactional Sales Order, Purchase Order
Buffer

Adapter for existing


application code SAP HANA
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7
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'
EXPORTING
is_travel = CORRESPONDING /dmo/s_travel_in( legacy_entity_in )
IMPORTING
es_travel = legacy_entity_out
et_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.

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


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

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


The Business Scenario
i Additional Material
Further reading

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. ǀ PUBLIC 10


Thank you.
Contact information:

open@sap.com
Follow all of SAP

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.
Week 4: Dealing with Existing Code
Unit 2: Creating the CDS Data Model
Creating the CDS Data Model
Topics

01 The Business Scenario

02 Creating the CDS Data Model

03 Defining and Implementing the Business Object Behavior

04 Creating the Business Object Projection

Week 4 05 Building and Previewing the OData UI Service

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


Creating the CDS Data Model
Dev flow – Where we are

SERVICE
BINDING PREVIEW

BIND TO SCENARIO
AND PROTOCOL

SERVICE
DEFINITION
DEFINE SCOPE

ADD
BEHAVIOR

DATA MODEL BEHAVIOR


PROJECTION PROJECTION
PROJECT ELEMENTS & ENRICH PROJECT BEHAVIOR

ADD IMPLEMENT
BEHAVIOR BEHAVIOR
Authority object CDS role
QUERY
DATA ACCESS CDS-BASED CDS BEHAVIOR
CONTROL DATA MODEL DEFINITION ABAP CODE

AUTHORITY CHECK
APPLICATION DATA
DATABASE TABLES Lock object
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Creating the CDS Data Model
What we will achieve in this unit

Root
key word

Composition

Associations

Field list
with aliases

Data
preview (F8)

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


Creating the CDS Data Model
Demo

HANDS ON

DEMO

Creating the CDS Data Model

1. Define the BO composition tree for the Travel and Booking entities

2. Preview the existing data

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


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

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


Creating the CDS Data Model
i Additional Material
Further reading

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. ǀ PUBLIC 7


Thank you.
Contact information:

open@sap.com
Follow all of SAP

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.
Week 4: Dealing with Existing Code
Unit 3: Defining and Implementing the Business
Object Behavior
Defining and Implementing the Business Object Behavior
Topics

01 The Business Scenario

02 Creating the CDS Data Model

03 Defining and Implementing the Business Object Behavior

04 Creating the Business Object Projection

Week 4 05 Building and Previewing the OData UI Service

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


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

Create enabled
association

Specify fields that


are mandatory or
read-only

central mapping
for legacy
business logic

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


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

Implementation
for read from
buffer

Create by
association

Local saver class


to save data to
database tables

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


Defining and Implementing the Business Object Behavior
Dev flow – Where we are

SERVICE
BINDING PREVIEW

BIND TO SCENARIO
AND PROTOCOL

SERVICE
DEFINITION
DEFINE SCOPE

ADD
BEHAVIOR

DATA MODEL BEHAVIOR


PROJECTION PROJECTION
PROJECT ELEMENTS & ENRICH PROJECT BEHAVIOR

ADD IMPLEMENT
BEHAVIOR BEHAVIOR
Authority object CDS role
QUERY
DATA ACCESS CDS-BASED CDS BEHAVIOR
CONTROL DATA MODEL DEFINITION ABAP CODE

AUTHORITY CHECK
APPLICATION DATA
DATABASE TABLES Lock object
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5
Defining and Implementing the Business Object Behavior
Demo

HANDS ON

DEMO

Create and implement the transactional BO behavior

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

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


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

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


Defining and Implementing the Business Object Behavior
i Additional Material
Further reading

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. ǀ PUBLIC 8


Thank you.
Contact information:

open@sap.com
Follow all of SAP

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.
Week 4: Dealing with Existing Code
Unit 4: Creating the Business Object Projection
Creating the Business Object Projection
Topics

01 The Business Scenario

02 Creating the CDS Data Model

03 Defining and Implementing the Business Object Behavior

04 Creating the Business Object Projection

Week 4 05 Building and Previewing the OData UI Service

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


Creating the Business Object Projection
What we will achieve in this unit – Data Model Projection

Enable Search
@Search.searchable:
true

Allow use of
MetaDataExtensions

Define value help


@Consumption.
valueHelpDefinition

Define association as
redirected to
composition child

Define association as
redirected to parent

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


Creating the Business Object Projection
What we will achieve in this unit – Metadata Extension

@UI.headerInfo

@UI.presentation
Variant
defines default sort
order

@UI.facet
annotations

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


Creating the Business Object Projection
What we will achieve in this unit – Behavior Projection

Define that etag is


used

Define which
standard operations
are used

Define that create


enabled association
is used

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


Creating the Business Object Projection
Dev flow – Where we are

SERVICE
BINDING PREVIEW

BIND TO SCENARIO
AND PROTOCOL

SERVICE
DEFINITION
DEFINE SCOPE

ADD
BEHAVIOR

DATA MODEL BEHAVIOR


PROJECTION PROJECTION
PROJECT ELEMENTS & ENRICH PROJECT BEHAVIOR

ADD IMPLEMENT
BEHAVIOR BEHAVIOR
Authority object CDS role
QUERY
DATA ACCESS CDS-BASED CDS BEHAVIOR
CONTROL DATA MODEL DEFINITION ABAP CODE

AUTHORITY CHECK
APPLICATION DATA
DATABASE TABLES Lock object
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6
Creating the Business Object Projection
Demo

HANDS ON

DEMO

Define the business object BO projection

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

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


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

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


Creating the Business Object Projection
i Additional Material
Further reading

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. ǀ PUBLIC 9


Thank you.
Contact information:

open@sap.com
Follow all of SAP

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.
Week 4: Dealing with Existing Code
Unit 5: Building and Previewing the OData UI
Service
Building and Previewing the OData UI Service
Topics

01 The Business Scenario

02 Creating the CDS Data Model

03 Defining and Implementing the Business Object Behavior

04 Creating the Business Object Projection

Week 4 05 Building and Previewing the OData UI Service

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


Building and Previewing the OData UI Service
What we will achieve in this unit – Service Definition

Define scope of
service

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


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

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


Building and Previewing the OData UI Service
Dev flow – Where we are

SERVICE
BINDING PREVIEW

BIND TO SCENARIO
AND PROTOCOL

SERVICE
DEFINITION
DEFINE SCOPE

ADD
BEHAVIOR

DATA MODEL BEHAVIOR


PROJECTION PROJECTION
PROJECT ELEMENTS & ENRICH PROJECT BEHAVIOR

ADD IMPLEMENT
BEHAVIOR BEHAVIOR
Authority object CDS role
QUERY
DATA ACCESS CDS-BASED CDS BEHAVIOR
CONTROL DATA MODEL DEFINITION ABAP CODE

AUTHORITY CHECK
APPLICATION DATA
DATABASE TABLES Lock object
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5
Building and Previewing the OData UI Service
Demo

HANDS ON

DEMO

Create and preview the OData UI service

1. Create the service definition from the data model projection

2. Create the service binding

3. Preview your SAP Fiori elements app

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


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

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


Building and Previewing the OData UI Service
i Additional Material
Further reading

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. ǀ PUBLIC 8


Thank you.
Contact information:

open@sap.com
Follow all of SAP

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.

You might also like