Technical Articles
ABAP Core Data Services | SAP Business Suite – Best Practice Guide
The ABAP Core Data Services (ABAP CDS) framework has been available since NetWeaver 7.40 SP05 and offers highly attractive features & benefits, e.g.:
- Many new SQL features:
- SQL joins: INNER JOIN, LEFT OUTER JOIN, …
- SQL set operations: UNION, UNION ALL
- SELECT clauses: GROUP BY, HAVING
- Aggregate functions: AVG, MAX, SUM, …
- Numeric functions: CEIL, MOD, ABS, …
- String functions: SUBSTRING, LPAD, CONCAT, …
- Date and time functions: DATS_DAYS_BETWEEN, DATS_ADD_DAYS, …
- …
- Easy-to-integrate services on-top:
- OData clients
- SAP Fiori
- Analytics
- Simplification of application coding
- Push-down of workload into the database
Since the technology is fairly new it poses quite some challenges to you as system administrators or development teams. You need to
- ensure that the maintenance level of their software stack is up-to-date,
- keep an eye on the overall CDS work load,
- monitor and tune the performance of complex queries, and
- establish clear rules for the development of own code using CDS.
Fortunately, a best practice guide is now available on how to implement, monitor and tune CDS based applications in Business Suite systems. All supported databases types are covered (IBM Db2, Oracle, MS-SQL, SAP ASE, SAP MaxDB & SAP HANA DB). The document provides an holistic approach to CDS and is written for IT architects, ABAP developers, SAP Basis teams and database administrators. Regular updates are planned.
Direct Link: ABAP Core Data Services | SAP Business Suite – Best Practice Guide
Short URL: https://tinyurl.com/ABAP-CDS-inside-BusinessSuite
Last update of the guide: 7-Feb-2020
but these pretty new CDS objects (i guess mostly DB-views) are a new issue during restore a database-schema (RSTLIB) on IBM-i
we did a SAP-Systemcopy (with Tool LIBELLE system copy) and using the RSTLIB option (restore productive SAP-System database from Tape) into TEST-SAP-System, the ibm-i CMD RSTLIB can not restore all saved DB-objects in one execution - so you will get message:
146305 Objects restored, 381 not restored in R3ERTDATA.
mostly CDS-Views could not be restored in the first execution of RSTLIB or RSTOBJ
so you have to execute a second run of RSTLIB or RSTOBJ with option MBROPT(*NEW)
Hello Mr. Ostrop,
trying to summarize our mail conversation for other readers:
After all, I think we have to assume that the error you observed is due to a bug in the IBM i operating system that does not seem to be trivial to reproduce. (At least I haven’t been able to recreate the problem from the detailed instructions you provided, and we have so far not experienced anything like that in our regular inhouse system copy tests, which use the same SAV/RST techniques.) RSTLIB should always be able to recreate all database objects in the correct order, although that got a bit more challenging now that CDS views come into play. If you see something like that again, don’t hesitate to contact the SAP on IBM i team via ticket or chat. A job log would then help to determine what went wrong.
A side remark only, but important to be aware of, is the following:
In case of SAP_BASIS >= 7.40, the usage of non-SAP tools to perform a SAP system refresh on IBM i requires to follow the instructions described in SAP note 2368628 to recreate some (or all) CDS views. This is, because some of those new objects are of type *PGM or *SRVPGM. Restoring them to a different SAP SID will unfortunately not automatically recompile the (service) program with the effect that those objects will continue to reference database objects in the source schema. If you use SWPM to perform the system refresh, it will automatically take care about these post-installation steps, if necessary.
Best regards,
Dorothea Stein
An updated version of the guide is now available at:
Direct Link: ABAP Core Data Services | SAP Business Suite – Best Practice Guide
Short URL: https://tinyurl.com/ABAP-CDS-inside-BusinessSuite
A new version of the guide is available and can be downloaded from the links specified above.