![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP HANA ABAP Core Data Services
ABAP HANA ABAP Core Data Services
![ABAP HANA ABAP Core Data Services ABAP HANA ABAP Core Data Services](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/127.jpg)
1. Introducción a la programación avanzada de bases de datos con ABAP 7.4
Para utilizar el paradigma code-to-data disponemos de los siguientes objetos de desarrollo de SAP HANA, los cuales solo se pueden crear con SAP HANA Studio:
- Procedimientos de base de datos
- Vistas de atributos
- Vistas analíticas
- Vistas de calculo
Sin embargo, estos objetos de desarrollo de HANA tienen desventajas con respecto a los objetos que están completamente administrados por el AS ABAP:
- Los objetos de desarrollo de SAP HANA no se integran con la gestión del ciclo de vida ABAP ni con la gestión de versiones ABAP.
- No se consideran en la verificación de sintaxis y activación de un programa ABAP.
- No pueden extenderse o ampliarse.
- Para implementarlos, los desarrolladores requieren un usuario adicional para la base de datos de SAP HANA.
A partir de ABAP 7.4 se introducen las siguientes mejoras al lenguaje para garantizar la integración de los objetos en el ciclo de vida ABAP, la gestión de versiones y la posibilidad de ampliar o extender los objetos.
- CDS: Las Core Data Services son un método especifico de SAP para definir modelos de datos persistentes.
- Nuevas características de Open SQL: Soporte de expresiones SQL en el SELECT y en las cláusulas GROUP BY, HAVING y WHERE.
- AMDP (ABAP Managed Database Procedures): Nos permiten ejecutar la lógica de procesamiento en la base de datos. Podemos implementar estos procedimientos de base de datos en el entorno de desarrollo ABAP sin requerir un usuario para la base de datos SAP HANA.
2. ABAP Core Data Services
El objetivo de las CDS es facilitar la implementación de los modelos de datos desarrollados en la fase de diseño.
Al igual que SQL, las CDS definen:
- Un lenguaje de definición de datos (DDL): Describe tablas de bases de datos.
- Un lenguaje de control de datos (DCL): Define restricciones de acceso para los CDS.
- Un lenguaje de consulta (QL): Nos permite leer datos de una manera cómoda y se utiliza en combinación con DDL para definir vistas de base de datos.
Las CDS también contienen las siguientes mejoras SQL:
- Anotaciones: Se utilizan para enriquecer los objetos CDS con metadatos adicionales, que no se pueden expresar en SQL.
- Tipos de datos definidos por el usuario, escalares y estructurados: Se utilizan para ilustrar mejor la semántica de los tipos de datos.
- Asociaciones: Se utilizan para definir las relaciones entre las CDS.
2.1. HANA CDS vs ABAP CDS
Existen dos implementaciones diferentes de las CDS: las HANA CDS y las ABAP CDS. Veamos sus características y diferencias entre ambas:
HANA CDS:
- Se crean directamente en la base de datos SAP HANA.
- Pueden consumirse externamente con ODATA.
- Para consumirlas desde una aplicación ABAP debemos crear una vista externa, enlazar la vista externa con la vista HANA CDS y consumir la vista externa con Open SQL.
- Necesitaremos crear dos órdenes de transporte diferentes: una para la vista HANA CDS que se transporta como una unidad de transporte de HANA y otra para la vista externa que se transporta con una orden de SAP.
ABAP CDS:
- Están disponibles desde SAP NW ABAP 7.4 SP05.
- Se pueden crear desde el AS ABAP mediante Eclipse y el plugin ADT.
- Pueden consumirse externamente con ODATA.
- Son independientes de la base de datos.
- Pueden utilizar tablas, vistas, etc... definidos en el diccionario de datos ABAP.
- No requieren vistas externas.
- Necesitaremos crear una única orden de transporte estándar de SAP mediante la transacción STMS.
 
 
 
Sobre el autor
Publicación académica de Ricardo Daniel Tovar Barrera, en su ámbito de estudios para el Máster ABAP for HANA.
Ricardo Daniel Tovar Barrera
Profesión: Consultor Abap - Mexico - Legajo: WC52Q
✒️Autor de: 15 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Ricardo Tovar