SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
ABAP Core Data Services
No Pain, No Gain
Hitchhiker's Guide to ABAP CDS since NetWeaver 7.40
SAP Inside Track 2017, Frankfurt
Daniel Ridder @nielseabap
What’s CDS?
A beginners perspective
ABAP Core Data Services
Technical Description
• Technologically agnostic definition of
database views
• CDS borrowed heavily from SQL-Standard
• Supports functions of ANSI-SQL
• DDIC Object [DDLS] with can only be viewed
and edited with ADT
• Generates database native artefacts (DDL-
Statements) during activation
Context of Availability
• 1st introduction of CDS with NetWeaver 7.40
SP5 on AnyDB
• Parameter-Views came up with 7.40 SP8
(DBMS compatibility unknown at that time)
• General availability of CDS for AnyDB (incl.
Parameter-Views) since NetWeaver 7.50
! DO NO MIX UP ABAP WITH HANA CDS !
 It’s a total different technology
What’s the idea?
Accessing data
Programming model
Business Objects
Back to good software design
Data access via OpenSQL Business Objects
Performing with itabs Abstraction via API-Design
In the beginning the business object was created.
This has made a lot of people very angry and been widely regarded as a bad move.
Persistance
Business Object
Attributes
Locking
Links to other
Business Objects
Access via API
∙ BOPF
∙ SADL
∙ OpenSQL
• Don’t go back to the old days…
• 1st define your business
object/data model
• Make it accessible via API
• OpenSQL is still an API, but…
• do not code logic into the
statement
• use CDS Views instead
– “The truth lays inside the views”
Consumption and Use-Cases
• CDS may act as a read-only BO
• Is the 1st choice for analytical
processes
• Enables full code pushdown of
business logic to the database
• Can be consumed in different ways
• ABAP
• OData via Annotation or SAP Gateway
• BEx BW Tools
• …
CDS
Function
Module
SAP BW
VirtualProvider
SAP BEx Query
Business User
SAP BEx Tools
Fiori App SAP Gateway
ABAP
Floorplan Manager
No embedded BW in S/4HANA !
CDS – phase of activation
There is a theory which states that if ever anyone discovers exactly what CDS
activation does, it will instantly disappear and be replaced by something even more
bizarre and inexplicable…
Activation of a CDS Parameter-View
HDB on NetWeaver 7.50 SP3
• There is no specification of SQL
database views supporting
parameters
• Due to this a parameter view
becomes a complex native artifact
• A function object with a table as a
result set has to be created
• On HDB the definition of the
function is generated in SQLScript
There is a theory which states that if ever anyone discovers exactly
what CDS activation does, it will instantly disappear and be replaced by
something even more bizarre and inexplicable.
- There is another theory which states
that this has already happened.
Activation of a CDS Parameter-View
Oracle on NetWeaver 7.40 SP11
DROP TABLE "Z_DATATABLE“
error in DDL statement for "Z_DATATABLE“
SQL-error "-478-[IBM][CLI Driver][DB2] ALTER,
DROP, OR REVOKE AFFECTING OBJECT TYPE FUNCTION
CANNOT BE PROCESSED BECAUSE OBJECT
SAPR3.Z_DATAVIEW OF TYPE FUNCTION IS DEPENDENT ON
IT" in DDL statement for "Z_DATATABLE"
--------------- DB-ROLLBACK() ---------------
error in DDL, nametab for "Z_DATATABLE" not
activated
…after activation on Oracle:
Here comes DB2 on zOS
Problem description
• Extending/Modifying a database table during
SAINT yields to an upgrade error during
activation phase
DBMS- specific Lifecycle management
Trans.
Table
Trans.
Table
CDS View
W. Parameters
<dependency>
Unhandled
dependencies between
native artifacts!
“[IBM][CLI Driver][DB2] SQL0101N The statement is too
long or too complex.”
The walk of pain
Avoid ABAP CDS in an heterogeneous DBMS landscape
CDS on NetWeaver 7.40
“The Walk of pain”
Dec 2015 Jun 2016 Nov 2016
2331160 - Renaming of CDS artifacts in
customer systems
https://launchpad.support.sap.com/#/notes/23
31160
Still 3x open incidents in system
upgrade process / SPAM breaks
• DB2/zOS
• DB2
• Upgrade-Performance
SAINT/SPAM breaks during activation phase
• incorrect order of activation
• wrong quantity of activation
• problems with cyclic dependencies
• problems after renaming of views
• SELECT *
Problems while upgrading to
NetWeaver 7.50:
• undocumented change of CDS
specification (order of key attributes)
SAINT/SPAM breaks during activation phase
• incorrect order of activation
Development Track
Small selection of “hitting” notes
• Note 2240326 - Cycle problems during activation of CDS views
• cycles are subject to “some restrictions”  No documentation at that time
• Notes 2295005 - Data element change for table does not result in reactivation of all DDL sources during transport
2381956 - Inconsistent 'SELECT *' CDS views
2274996 - Problems with deletion of table or view fields with select * dependencies
• „Select-Star is for looser“
• Note 2239157 - Support of database features
• „Official“ GA of CDS Views with parameters in NetWeaver 7.50 on AnyDB  What about the introduction in 7.40 SP8?
• Note 2331160 - Renaming of CDS artifacts in customer systems
• CDS Views could be renamed  DDLS, CDS-Name, DDIC-Name (DDIC-Rename is always prohibited)
• Note 2387971 - Incompatible ABAP changes from Release 7.40 to 7.50
• Since NetWeaver 7.50 all key attributes must be located together at the start of SELECT
ABAP Core Data Services is a key technology
CDS goes further
• CDS let you define a VDM – virtual data model
under S/4HANA (BO 1st)
• HDB supports the definition of ABAP CDS table
functions
• Which solves a lack of AMDPs
• CDS Test Double Framework
• The upcoming S/4HANA programming model
depends heavily on CDS Views
• The draft concept combines CDS and BOPF for
transactional Fiori-Applications and is triggered by CDS
annotations
Recommendations using CDS
Recommendations based on our experiences:
• CDS > NetWeaver 7.40 > AnyDB
• Do not built huge view hierarchies (< 5 level, not more
than 10 views)
• Do not use parameters!
• Avoid cycles in associations
• Perform activation tests on each dbms target platform
• CDS > NetWeaver 7.50 > AnyDB
• We will see…
• CDS > NetWeaver 7.50 > HANA
• No restrictions
• CDS > NetWeaver 7.51 S/4HANA
• rocks
So Long, and Thanks for All the Fish
Daniel Ridder
@nielseabap

Weitere ähnliche Inhalte

Was ist angesagt?

Beginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANABeginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANAAshish Saxena
 
Technical Overview of CDS View - SAP HANA Part II
Technical Overview of CDS View - SAP HANA Part IITechnical Overview of CDS View - SAP HANA Part II
Technical Overview of CDS View - SAP HANA Part IIAshish Saxena
 
Coolcats don't Use Customzing
Coolcats don't Use CustomzingCoolcats don't Use Customzing
Coolcats don't Use CustomzingTobias Trapp
 
SAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course ContentSAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course ContentZaranTech LLC
 
Sap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP bookSap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP bookYVIKASH
 
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.Coy Currin
 
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOTSAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOTGlobal Online Trainings
 
SAP HANA Native Application Development
SAP HANA Native Application DevelopmentSAP HANA Native Application Development
SAP HANA Native Application DevelopmentDickinson + Associates
 
SAP HANA for SAP Overview
SAP HANA for SAP OverviewSAP HANA for SAP Overview
SAP HANA for SAP OverviewIliya Ruvinsky
 
HANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceSAP Technology
 
Core Data Service
Core Data ServiceCore Data Service
Core Data ServiceSujoy Saha
 
SAP Inside Track Munich 2016 - SAP HANA Cloud Platform
SAP Inside Track Munich 2016 - SAP HANA Cloud Platform SAP Inside Track Munich 2016 - SAP HANA Cloud Platform
SAP Inside Track Munich 2016 - SAP HANA Cloud Platform Christian Lechner
 
Sap hana experiences at southern california edison — bw hana and standalone hana
Sap hana experiences at southern california edison — bw hana and standalone hanaSap hana experiences at southern california edison — bw hana and standalone hana
Sap hana experiences at southern california edison — bw hana and standalone hanarobgirvan
 
SAP HANA Overview
SAP HANA OverviewSAP HANA Overview
SAP HANA OverviewAbel Johny
 
SAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development ToolsSAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development ToolsSAP Technology
 

Was ist angesagt? (20)

Sap abap on hana
Sap abap on hanaSap abap on hana
Sap abap on hana
 
Beginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANABeginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANA
 
Technical Overview of CDS View - SAP HANA Part II
Technical Overview of CDS View - SAP HANA Part IITechnical Overview of CDS View - SAP HANA Part II
Technical Overview of CDS View - SAP HANA Part II
 
Coolcats don't Use Customzing
Coolcats don't Use CustomzingCoolcats don't Use Customzing
Coolcats don't Use Customzing
 
Dev207 berlin
Dev207 berlinDev207 berlin
Dev207 berlin
 
SAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course ContentSAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course Content
 
Sap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP bookSap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP book
 
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
 
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOTSAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
 
SAP HANA Native Application Development
SAP HANA Native Application DevelopmentSAP HANA Native Application Development
SAP HANA Native Application Development
 
SAP HANA for SAP Overview
SAP HANA for SAP OverviewSAP HANA for SAP Overview
SAP HANA for SAP Overview
 
SAP HANA SPS10- SHINE
SAP HANA SPS10- SHINESAP HANA SPS10- SHINE
SAP HANA SPS10- SHINE
 
HANA XS Engine
HANA XS EngineHANA XS Engine
HANA XS Engine
 
HANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application Service
 
Core Data Service
Core Data ServiceCore Data Service
Core Data Service
 
SAP Inside Track Munich 2016 - SAP HANA Cloud Platform
SAP Inside Track Munich 2016 - SAP HANA Cloud Platform SAP Inside Track Munich 2016 - SAP HANA Cloud Platform
SAP Inside Track Munich 2016 - SAP HANA Cloud Platform
 
Sap hana experiences at southern california edison — bw hana and standalone hana
Sap hana experiences at southern california edison — bw hana and standalone hanaSap hana experiences at southern california edison — bw hana and standalone hana
Sap hana experiences at southern california edison — bw hana and standalone hana
 
SAP HANA Overview
SAP HANA OverviewSAP HANA Overview
SAP HANA Overview
 
SAP Hana Overview
SAP Hana OverviewSAP Hana Overview
SAP Hana Overview
 
SAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development ToolsSAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development Tools
 

Ähnlich wie Daniel Ridder ABAP Core Data Services No Pain, No Gain

Oracle big data appliance and solutions
Oracle big data appliance and solutionsOracle big data appliance and solutions
Oracle big data appliance and solutionssolarisyougood
 
In-memory ColumnStore Index
In-memory ColumnStore IndexIn-memory ColumnStore Index
In-memory ColumnStore IndexSolidQ
 
Denver SQL Saturday The Next Frontier
Denver SQL Saturday The Next FrontierDenver SQL Saturday The Next Frontier
Denver SQL Saturday The Next FrontierKellyn Pot'Vin-Gorman
 
COUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesCOUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesAlfredo Abate
 
OTN tour 2015 Oracle Enterprise Manager 12c – Proof of Concept
OTN tour 2015 Oracle Enterprise Manager 12c – Proof of ConceptOTN tour 2015 Oracle Enterprise Manager 12c – Proof of Concept
OTN tour 2015 Oracle Enterprise Manager 12c – Proof of ConceptAndrejs Vorobjovs
 
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at DatabricksLessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at DatabricksDatabricks
 
PPCD_And_AmazonRDS
PPCD_And_AmazonRDSPPCD_And_AmazonRDS
PPCD_And_AmazonRDSVibhor Kumar
 
OBIEE ARCHITECTURE.ppt
OBIEE ARCHITECTURE.pptOBIEE ARCHITECTURE.ppt
OBIEE ARCHITECTURE.pptCanara bank
 
001 hbase introduction
001 hbase introduction001 hbase introduction
001 hbase introductionScott Miao
 
Framing the Argument: How to Scale Faster with NoSQL
Framing the Argument: How to Scale Faster with NoSQLFraming the Argument: How to Scale Faster with NoSQL
Framing the Argument: How to Scale Faster with NoSQLInside Analysis
 
Run Oracle Apps in the Cloud with dashDB
Run Oracle Apps in the Cloud with dashDBRun Oracle Apps in the Cloud with dashDB
Run Oracle Apps in the Cloud with dashDBIBM Cloud Data Services
 
SQL Server 2019 Big Data Cluster
SQL Server 2019 Big Data ClusterSQL Server 2019 Big Data Cluster
SQL Server 2019 Big Data ClusterMaximiliano Accotto
 
Presentation big dataappliance-overview_oow_v3
Presentation   big dataappliance-overview_oow_v3Presentation   big dataappliance-overview_oow_v3
Presentation big dataappliance-overview_oow_v3xKinAnx
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabasesAdi Challa
 
Evolutionary Database Design
Evolutionary Database DesignEvolutionary Database Design
Evolutionary Database DesignAndrei Solntsev
 

Ähnlich wie Daniel Ridder ABAP Core Data Services No Pain, No Gain (20)

Copy Data Management for the DBA
Copy Data Management for the DBACopy Data Management for the DBA
Copy Data Management for the DBA
 
Oracle big data appliance and solutions
Oracle big data appliance and solutionsOracle big data appliance and solutions
Oracle big data appliance and solutions
 
In-memory ColumnStore Index
In-memory ColumnStore IndexIn-memory ColumnStore Index
In-memory ColumnStore Index
 
Manageability Enhancements of SQL Server 2012
Manageability Enhancements of SQL Server 2012Manageability Enhancements of SQL Server 2012
Manageability Enhancements of SQL Server 2012
 
Denver SQL Saturday The Next Frontier
Denver SQL Saturday The Next FrontierDenver SQL Saturday The Next Frontier
Denver SQL Saturday The Next Frontier
 
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
 
COUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesCOUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_Features
 
OTN tour 2015 Oracle Enterprise Manager 12c – Proof of Concept
OTN tour 2015 Oracle Enterprise Manager 12c – Proof of ConceptOTN tour 2015 Oracle Enterprise Manager 12c – Proof of Concept
OTN tour 2015 Oracle Enterprise Manager 12c – Proof of Concept
 
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at DatabricksLessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
 
PPCD_And_AmazonRDS
PPCD_And_AmazonRDSPPCD_And_AmazonRDS
PPCD_And_AmazonRDS
 
OBIEE ARCHITECTURE.ppt
OBIEE ARCHITECTURE.pptOBIEE ARCHITECTURE.ppt
OBIEE ARCHITECTURE.ppt
 
001 hbase introduction
001 hbase introduction001 hbase introduction
001 hbase introduction
 
Framing the Argument: How to Scale Faster with NoSQL
Framing the Argument: How to Scale Faster with NoSQLFraming the Argument: How to Scale Faster with NoSQL
Framing the Argument: How to Scale Faster with NoSQL
 
Run Oracle Apps in the Cloud with dashDB
Run Oracle Apps in the Cloud with dashDBRun Oracle Apps in the Cloud with dashDB
Run Oracle Apps in the Cloud with dashDB
 
SQL Server 2019 Big Data Cluster
SQL Server 2019 Big Data ClusterSQL Server 2019 Big Data Cluster
SQL Server 2019 Big Data Cluster
 
Presentation big dataappliance-overview_oow_v3
Presentation   big dataappliance-overview_oow_v3Presentation   big dataappliance-overview_oow_v3
Presentation big dataappliance-overview_oow_v3
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabases
 
What's new in SQL Server Integration Services 2012?
What's new in SQL Server Integration Services 2012?What's new in SQL Server Integration Services 2012?
What's new in SQL Server Integration Services 2012?
 
Virtualization and Containers
Virtualization and ContainersVirtualization and Containers
Virtualization and Containers
 
Evolutionary Database Design
Evolutionary Database DesignEvolutionary Database Design
Evolutionary Database Design
 

Kürzlich hochgeladen

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 

Kürzlich hochgeladen (20)

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

Daniel Ridder ABAP Core Data Services No Pain, No Gain

  • 1. ABAP Core Data Services No Pain, No Gain Hitchhiker's Guide to ABAP CDS since NetWeaver 7.40 SAP Inside Track 2017, Frankfurt Daniel Ridder @nielseabap
  • 3. ABAP Core Data Services Technical Description • Technologically agnostic definition of database views • CDS borrowed heavily from SQL-Standard • Supports functions of ANSI-SQL • DDIC Object [DDLS] with can only be viewed and edited with ADT • Generates database native artefacts (DDL- Statements) during activation Context of Availability • 1st introduction of CDS with NetWeaver 7.40 SP5 on AnyDB • Parameter-Views came up with 7.40 SP8 (DBMS compatibility unknown at that time) • General availability of CDS for AnyDB (incl. Parameter-Views) since NetWeaver 7.50 ! DO NO MIX UP ABAP WITH HANA CDS !  It’s a total different technology
  • 4. What’s the idea? Accessing data Programming model Business Objects
  • 5. Back to good software design Data access via OpenSQL Business Objects Performing with itabs Abstraction via API-Design
  • 6. In the beginning the business object was created. This has made a lot of people very angry and been widely regarded as a bad move. Persistance Business Object Attributes Locking Links to other Business Objects Access via API ∙ BOPF ∙ SADL ∙ OpenSQL • Don’t go back to the old days… • 1st define your business object/data model • Make it accessible via API • OpenSQL is still an API, but… • do not code logic into the statement • use CDS Views instead – “The truth lays inside the views”
  • 7. Consumption and Use-Cases • CDS may act as a read-only BO • Is the 1st choice for analytical processes • Enables full code pushdown of business logic to the database • Can be consumed in different ways • ABAP • OData via Annotation or SAP Gateway • BEx BW Tools • … CDS Function Module SAP BW VirtualProvider SAP BEx Query Business User SAP BEx Tools Fiori App SAP Gateway ABAP Floorplan Manager No embedded BW in S/4HANA !
  • 8. CDS – phase of activation There is a theory which states that if ever anyone discovers exactly what CDS activation does, it will instantly disappear and be replaced by something even more bizarre and inexplicable…
  • 9. Activation of a CDS Parameter-View HDB on NetWeaver 7.50 SP3 • There is no specification of SQL database views supporting parameters • Due to this a parameter view becomes a complex native artifact • A function object with a table as a result set has to be created • On HDB the definition of the function is generated in SQLScript
  • 10. There is a theory which states that if ever anyone discovers exactly what CDS activation does, it will instantly disappear and be replaced by something even more bizarre and inexplicable. - There is another theory which states that this has already happened. Activation of a CDS Parameter-View Oracle on NetWeaver 7.40 SP11
  • 11. DROP TABLE "Z_DATATABLE“ error in DDL statement for "Z_DATATABLE“ SQL-error "-478-[IBM][CLI Driver][DB2] ALTER, DROP, OR REVOKE AFFECTING OBJECT TYPE FUNCTION CANNOT BE PROCESSED BECAUSE OBJECT SAPR3.Z_DATAVIEW OF TYPE FUNCTION IS DEPENDENT ON IT" in DDL statement for "Z_DATATABLE" --------------- DB-ROLLBACK() --------------- error in DDL, nametab for "Z_DATATABLE" not activated …after activation on Oracle: Here comes DB2 on zOS Problem description • Extending/Modifying a database table during SAINT yields to an upgrade error during activation phase DBMS- specific Lifecycle management Trans. Table Trans. Table CDS View W. Parameters <dependency> Unhandled dependencies between native artifacts! “[IBM][CLI Driver][DB2] SQL0101N The statement is too long or too complex.”
  • 12. The walk of pain Avoid ABAP CDS in an heterogeneous DBMS landscape
  • 13. CDS on NetWeaver 7.40 “The Walk of pain” Dec 2015 Jun 2016 Nov 2016 2331160 - Renaming of CDS artifacts in customer systems https://launchpad.support.sap.com/#/notes/23 31160 Still 3x open incidents in system upgrade process / SPAM breaks • DB2/zOS • DB2 • Upgrade-Performance SAINT/SPAM breaks during activation phase • incorrect order of activation • wrong quantity of activation • problems with cyclic dependencies • problems after renaming of views • SELECT * Problems while upgrading to NetWeaver 7.50: • undocumented change of CDS specification (order of key attributes) SAINT/SPAM breaks during activation phase • incorrect order of activation Development Track
  • 14. Small selection of “hitting” notes • Note 2240326 - Cycle problems during activation of CDS views • cycles are subject to “some restrictions”  No documentation at that time • Notes 2295005 - Data element change for table does not result in reactivation of all DDL sources during transport 2381956 - Inconsistent 'SELECT *' CDS views 2274996 - Problems with deletion of table or view fields with select * dependencies • „Select-Star is for looser“ • Note 2239157 - Support of database features • „Official“ GA of CDS Views with parameters in NetWeaver 7.50 on AnyDB  What about the introduction in 7.40 SP8? • Note 2331160 - Renaming of CDS artifacts in customer systems • CDS Views could be renamed  DDLS, CDS-Name, DDIC-Name (DDIC-Rename is always prohibited) • Note 2387971 - Incompatible ABAP changes from Release 7.40 to 7.50 • Since NetWeaver 7.50 all key attributes must be located together at the start of SELECT
  • 15. ABAP Core Data Services is a key technology CDS goes further • CDS let you define a VDM – virtual data model under S/4HANA (BO 1st) • HDB supports the definition of ABAP CDS table functions • Which solves a lack of AMDPs • CDS Test Double Framework • The upcoming S/4HANA programming model depends heavily on CDS Views • The draft concept combines CDS and BOPF for transactional Fiori-Applications and is triggered by CDS annotations Recommendations using CDS Recommendations based on our experiences: • CDS > NetWeaver 7.40 > AnyDB • Do not built huge view hierarchies (< 5 level, not more than 10 views) • Do not use parameters! • Avoid cycles in associations • Perform activation tests on each dbms target platform • CDS > NetWeaver 7.50 > AnyDB • We will see… • CDS > NetWeaver 7.50 > HANA • No restrictions • CDS > NetWeaver 7.51 S/4HANA • rocks
  • 16. So Long, and Thanks for All the Fish Daniel Ridder @nielseabap