ABAP Cloud &
Extensibility updated
slides
INTERNAL - SAP and Partners Only
ABAP Cloud
… is the ABAP development model to build
cloud-ready business apps, services or
extensions
… comes with SAP BTP and SAP S/4HANA
… works with public or private cloud, and even
on-premise
INTERNAL - SAP and Partners Only 2
The evolution to ABAP Cloud
2012 2015 2018 09/10.2022
ABAP Cloud
INTERNAL - SAP and Partners Only * SAP Business Technology Platform 3
ABAP Cloud – What’s in it?
DEVELOPMENT
MODEL
ABAP Cloud
TRANSACTIONAL REUSE SERVICES AND LIBRARIES
ANALYTICAL BUILT-IN QUALITIES
INTEGRATION LIFECYCLE MANAGEMENT
PROGRAMMING MODEL TOOLS
CONTAINING
BUSINESS SERVICE EXPOSURE
DOMAIN-SPECIFIC IMPLEMENTATION
DATA ACCESS
INTERNAL - SAP and Partners Only More in the blog post ABAP Cloud - What does it comprise? 4
ABAP Cloud – High-level abstraction model
BUSINESS UI SERVICES INTEGRATION SERVICES
Output Management, Jobs, SAP Workflow Mgmt, XCO,...
Git based code management with gCTS and abapGit
SERVICE OData and SAP Information Access (InA) OData, Events, HTTP, RFC, SQL
EXPOSURE for SAP Fiori and analytical clients for application and data integration
Cloud-readiness, IAM3, BC4, extensibility,...
ADT5, BAS6, Key User & Monitoring Tools
REUSE SERVICES AND LIBRARIES
LIFECYCLE MANAGEMENT
BUILT-IN QUALITIES
DOMAIN-SPECIFIC MODELS
CDS1 entity, RAP2 Business Object, CDS analytical provider
TOOLS
DOMAIN-SPECIFIC
IMPLEMENTATION
DOMAIN-SPECIFIC LOGIC
ABAP, CDS
BUSINESS INTEGRATION SERVICES
DATABASE SAP HANA SERVICE OData, SOAP, Events, HTTP, RFC
SQL and SQLScript CONSUMPTION for application integration
1 Core Data Services 3 Identity 5 ABAP
INTERNAL - SAP and Partners Only & Access Management Development Tools 5
2 ABAP RESTful application programming model 4 Business 6 SAP
Configuration Business Application Studio
ABAP Cloud – One development model for SAP S/4HANA and SAP BTP
SAP S/4HANA SAP S/4HANA Cloud, SAP S/4HANA Cloud, SAP BTP,
any premise 1 private edition 1 public edition 2 ABAP Environment
ABAP Cloud development model
to build cloud-ready business apps, services, and extensions
Classic ABAP development model
1 SAP S/4HANA any premise or SAP S/4HANA Cloud, private edition release ≥ 2022
2 SAP S/4HANA Cloud, public edition release ≥ 2208, 3-system landscape required
INTERNAL - SAP and Partners Only 6
One common extensibility model for cloud and on premise
1 KEY USER EXTENSIONS
ON-STACK DEVELOPER
2 EXTENSIONS
SAP
S/4HANA
CLOUD 3
public interfaces
SIDE-BY-SIDE EXTENSIONS
remote API
public interfaces public interfaces
SAP BUSINESS TECHNOLOGY PLATFORM ABAP
SAP S/4HANA CLOUD ABAP ENVIRONMENT ENVIRONMENT
Key-user extensions ABAP custom code or partner extensions Public interfaces released for developer extensibility
low-code/no-code extensions following the cloud extensions model
Public interfaces released for key-user extensibility
INTERNAL - SAP and Partners Only 7
SAP S/4HANA Cloud extensibility patterns
ON-STACK SIDE-BY-SIDE
EXTEND AN SAP APP NEW APP ON STACK NEW APP SIDE-BY-SIDE
TIGHTLY coupled TIGHTLY coupled LOOSELY coupled
such as to an SAP app such as to SAP data to SAP data, transaction, app
or transaction
Extend SAP code, data
Local API call, SQL join Remote API call, consume events
structure, user interface
public extension point public local API public remote API
SAP S/4HANA Cloud application
SAP S/4HANA Cloud SAP Business Technology Platform
INTERNAL - SAP and Partners Only 8
ABAP extensibility for SAP S/4HANA
… is crucial for the success of SAP, SAP customers and partners
… provides means for on-stack and side-by-side extensibility
… supports key-user and developer extensibility
… uses ABAP Cloud as development model
ABAP Cloud
… is the ABAP development model to build cloud-ready business apps, services or extensions
… comes with SAP BTP and SAP S/4HANA
… works with public or private cloud, and even on-premise
INTERNAL - SAP and Partners Only 9
ABAP Cloud on SAP BTP and on SAP S/4HANA
ABAP CLOUD ABAP CLOUD
DEVELOPMENT DEVELOPMENT
SAP
ON SAP S/4HANA ON SAP BTP
S/4HANA
(CLOUD) ABAP Cloud
interfaces
public
❖ Public SAP APIs and extensions
remote API points
❖ Cloud-optimized ABAP language
public
interfaces public interfaces ❖ ABAP Development Tools
❖ ABAP RESTful Application
Programming Model
SAP S/4HANA CLOUD ABAP SAP BUSINESS TECHNOLOGY PLATFORM
ENVIRONMENT / ABAP PLATFORM ABAP ENVIRONMENT
INTERNAL - SAP and Partners Only 10
ABAP Cloud – IDE and API examples for on-stack developer extensibility
Custom ABAP on
SAP S/4HANA Cloud
ABAP development tools in Eclipse
Cloud-optimized ABAP language
Proven ABAP transport management
Access to public SAP APIs ONLY
– otherwise, syntax error!
No access to old Dynpro APIs
No direct select on the MARA table
from SAP
Local APIs from SAP S/4HANA
SELECT products from
SAP S/4HANA tables using the public
I_Product CDS view
INTERNAL - SAP and Partners Only 11
Clean core rules for extensions to support smoother SAP software updates
SAP S/4HANA Cloud private edition,
and on-premise
Expectation management – no magic!
Upgrade projects will not go away
This is not the public cloud
❖ Easier frequent upgrades
GOAL
❖ Future-safe extensions
RULE FOR SMOOTH SOFTWARE UPDATES
Extensions must be clearly separated form SAP code
No modifications to SAP objects Only stable public SAP APIs and SAP
Follow the public cloud extensibility rules
allowed extension points can be used
whenever possible (clean core approach)
MANDATORY IN PUBLIC CLOUD Recommended in private cloud
and on-premise
INTERNAL - SAP and Partners Only 12
SAP S/4HANA, private cloud and on-premise editions
Reuse the SAP S/4HANA Cloud extensibility model
DEFAULT FOR ALL
NEW EXTENSIONS On-stack extensions Side-by-side extensions
on SAP S/4HANA Cloud on SAP BTP
Business expert SAP S/4HANA CLOUD
SAP Build
Key user KEY-USER TOOLS
SAP S/4HANA CLOUD, SAP Build Code or
Developer ABAP ENVIRONMENT ABAP ENVIRONMENT
INNOVATE OR
MODERNIZE
RETIRE
CLASSIC CUSTOM ABAP CODE
(control and minimize)
INTERNAL - SAP and Partners Only 13
3-tier extensibility model for SAP S/4HANA private cloud and on-premise
TIER 1 – Cloud extensibility model
SAP S/4HANA SAP Business Technology Platform
Cloud-ready and upgrade-stable development of new
applications and extensions. ABAP Cloud is mandatory –
no classic ABAP in tier 1
TIER 1 ON-STACK TIER 1 SIDE-BY-SIDE
Cloud development Same extensibility model as used in SAP S/4HANA Cloud,
ABAP Cloud
(Java / Node.js / ABAP Cloud) public edition
Default for new extensions and custom apps
TIER 2 TIER 2 – Cloud API enablement
Cloud API enablement
RENOVATE OR Extends and enables tier 1 for private cloud and on-premise
INNOVATE
Mitigates missing public SAP APIs or extension points:
Develop custom wrapper objects for not released SAP
objects to be used in tier 1
Retire wrapper once a released SAP API is available
TIER 3
Classical ABAP development
TIER 3 – Classic ABAP extensions
Legacy/existing custom ABAP code or new on-stack
ADAPT extensions code that cannot follow the rules of tier 1 and 2
RETIRE
Avoid and reduce the content in tier 3
ON-STACK - tightly coupled SIDE-BY-SIDE - loosely coupled
INTERNAL - SAP and Partners Only 14
SAP S/4HANA, private cloud edition and on-premise
ABAP Cloud development – ABAP language version and public SAP APIs
HOW TO USE ABAP CLOUD IN THE PRIVATE CLOUD AND ON-PREMISE EDITIONS?
Switch on the strict ABAP Cloud syntax check for Use public APIs released by SAP
selected custom ABAP objects for ABAP Cloud development
INTERNAL - SAP and Partners Only 15
Important ABAP Cloud related guides
Overview, comparison of
How the old, tier 3 / classic ABAP How to check compliance
extensibility options, introduction How to leverage tier 2 of the
world maps to the new, tier 1 / with the ABAP Cloud and
to ABAP Cloud and 3-tier 3-tier extensibility model.
ABAP Cloud world. 3-tier extensibility model
extensibility model.
INTERNAL - SAP and Partners Only Further information and blog posts linked at https://community.sap.com/topics/s4hana-cloud-abap-environment and https://community.sap.com/topics/abap 16
Thank you.
Contact information:
Name
Email
© 2023 SAP SE or an SAP affiliate company. All rights reserved. See Legal Notice on www.sap.com/legal-notice for use terms, disclaimers, disclosures, or restrictions related to this material.