abap programming model in sap s/4hana involved technologies · pdf fileabap programming model...

17
ABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler, SAP

Upload: truongnhan

Post on 22-Feb-2018

228 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

ABAP Programming Model in SAP S/4HANA

Involved technologies

Marcel Hermanns, Jens Weiler & Thomas Gauweiler, SAP

Page 2: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 2Public

Disclaimer

The information in this presentation is confidential and proprietary to SAP and may not be disclosed without the permission of SAP. Except for your

obligation to protect confidential information, this presentation is not subject to your license agreement or any other service or subscription

agreement with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or any related document, or to develop

or release any functionality mentioned therein.

This presentation, or any related document and SAP's strategy and possible future developments, products and or platforms directions and

functionality are all subject to change and may be changed by SAP at any time for any reason without notice.

The information in this presentation is not a commitment, promise or legal obligation to deliver any material, code or functionality. This presentation

is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness

for a particular purpose, or non-infringement. This presentation is for informational purposes and may not be incorporated into a contract. SAP

assumes no responsibility for errors or omissions in this presentation, except if such damages were caused by SAP’s intentional or gross

negligence.

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, which speak only

as of their dates, and they should not be relied upon in making purchasing decisions.

Page 3: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 3Public

The new programming modelInvolved technologies

SAPUI5

SAP HANA

SAP NetWeaver

SAP Gateway

SQL

OData

ABAP

Development

Core Data

Services

Application

Frameworks

One common data modelling technology for all scenarios

Core Data Services (CDS)

OData protocol infrastructure

SAP Gateway

Transaction, error and event handling services

Business object processing framework (BOPF)

Effective and efficient application development

Modern ABAP language and development tools

Freestyle or templates based UI development

SAPUI5 / SAP Fiori Elements

Exploit SAP HANA features and performance

AMDP and CDS Table Functions

Page 4: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

Public

DEMO –

BUILDING AN

APPLICATION FROM

SCRATCH

Page 5: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 5Public

BUILDING AN APP FROM SCRATCHGet the idea

We want to create a sales order overview with analytics, search and

transactional capabilities.

INTERACTIVE

TRANSACTIONAL

SAP FIORI APP

INCLUDING LIST

REPORTING

Page 6: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

Public

DETAILS: DEVELOPMENT

FLOW, ARTEFACTS AND

RUNTIME STACK

Page 7: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 7Public

ABAP programming model for SAP Fiori and SAP S/4HANADevelopment process for transactional and ‘batch input’ applications

Expose service

Model and implement

business object

Design persistency

Create user interface SAPUI5 with SAP Fiori Elements

CDS consumption views with DCL

Gateway services with authorizations

CDS business model and DCL

Business logic and authorizations

Data Dictionary (DDIC) tables

[1..1]

[1..1]

[1..n]

UI

developer

Backend

developer

Web IDE

ABAP

development

tools

PLANNED

INNOVATION

Handle redundancy:

Decouple service

from business object

Page 8: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 8Public

ABAP programming model for SAP Fiori and SAP S/4HANADevelopment process for ‘read only’ applications

SAPUI5 with smart elements

Gateway services and authorizations

CDS views and DCL based on

external tables

Data Dictionary (DDIC) tables

[n..m]

[1..1]

[1..n]

UI

developer

Backend

developer

Expose service

Perform view building

Consume existing persistency

Create user interface Web IDE

ABAP

development

tools

PLANNED

INNOVATION

Page 9: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 9Public

ABAP programming model for SAP Fiori and SAP S/4HANARuntime stack - Overview

SAP HANA

REST

OData

Open SQL

ABAP platform

Client

Page 10: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 10Public

ABAP programming model for SAP Fiori and SAP S/4HANARuntime stack – Components and responsibilities

SAP HANA

REST

OData

Open SQL

ABAP platform

Client

CDS

OData protocol implementation

Authorization, metering, …

Persistency handling

Locking

Authorization

Business logic exits

BOPF

SAP Gateway

SADLCommon data modelling

Database artefacts

UI semantics

Request dispatching

Query pushdown

PLANNED

INNOVATION

Page 11: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 11Public

ABAP programming model for SAP Fiori and SAP S/4HANARuntime stack – Exits

SAP HANA

REST

OData

Open SQL

ABAP platform

Client

CDS

Gateway breakout

BO exits

Static action implementation

Action implementation

Determination validation impl.

Field control implementation

BOPF

SAP Gateway

SADL

Query Refinement

Filter modification

Sort order modification

Result refinement

PBO transient fields

Field control refinement

CDS table functions

PLANNED

INNOVATION

Page 12: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 12Public

Advanced data model definition and access ABAP Core Data Services (CDS)

03

Improved programming

model

For all application domains

Rich set of build-in functions

Code pushdown capabilities

Common data model

Semantically rich

Declarative

Close to conceptual thinking

0201

Capture business intent

Reduced complexity

Extending SQL

Page 13: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 13Public

Contributions to SAP S/4HANA SAP S/4HANA applications – Example CDS view with annotations

Access Control

OData

Search

UI

Page 14: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 14Public

Advanced data model definition and accessAccess control in CDS

Declarative approach instead of coded

Based on CDS entities and PFCG data

Authorizations pushed down to database

by extending the SQL statement

Defined once and automatically used everywhere

Open SQL, Analytical Engine, SADL,

Enterprise Search, …

DCL approach

&

Classical approach

PFCG

<Code>

Open SQL

<Code>

PFCG

DCL

CDS

ViewAuthorization

Check

<Code>

Open SQL

<Code>

Page 15: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 15Public

Enables model-based and standardized

development approach

Manages transactional data of draft and

active instances within one business

object

CRUDE

Locking

Authorization

Orchestrates business logic in well

defined exits like

actions

determinations

validations

draft handling

Role of BOPF in programming model

Page 16: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

© 2017 SAP SE or an SAP affiliate company. All rights reserved. 16Public

SummaryKey message

Availability of app types

Read-only ABAP 7.50

’Batch input’ ABAP 7.51

Interactive /

Draft

New programming model

New programming model

available but still evolving

Documentation available

Search for

‘ABAP Programming model Fiori’ Planned for ABAP 7.51 SP02

Page 17: ABAP Programming Model in SAP S/4HANA Involved technologies · PDF fileABAP Programming Model in SAP S/4HANA Involved technologies Marcel Hermanns, Jens Weiler & Thomas Gauweiler,

Thank YouKontaktinformationen:

Marcel Hermanns

[email protected]

Renzo Colle

[email protected]