SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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
 

Similar a 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
 

Similar a 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
 

Último

Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
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
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
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
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
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
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
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
 
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.
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
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
 
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
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 

Último (20)

Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
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...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
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
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
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 ...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
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
 
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 ...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
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 ☂️
 
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 ...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 

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