🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP HANA ABAP Core Data Services

ABAP HANA ABAP Core Data Services

ABAP HANA ABAP Core Data Services

ABAP Core Data Services

Introducción a la programación avanzada de BD con ABAP 7.4

Mediante SAP HANA Studio podemos mencionar los siguientes objetos:

  1. Procedimientos de base de datos
  2. Vistas de atributos
  3. Vistas analiticas
  4. Vistas de calculo

Desventajas o restricciones de los objetos de desarrollo de SAP HANA en ABAP

  1. Los objetos de desarrollo de SAP HANA no se integran completamnete con la gestión del ciclo de vida de ABAP.
  2. Los objetos de desarrollo de SAP HANA no se consideran en la verificación de sintaxis y activación de una aplicación o programa ABAP.
  3. Los objetos de desarrollo de SAP HANA no pueden extenderse o ampliarse
  4. Para implementar los objetos de desarrollo de SAP HANA, los desarrolladores ABAP requieren un usuario adicional para la base de datos de SAP HANA y las autorizaciones correspondientes de la base de datos.

Las mejoras en ABAP 7.4, las mas relevantes son:

  1. CDS: Las Core Data Services, son un metodo especifico de SAP que se utilizan para definir modelos de datos persistentes.
  2. Nuevas caracteristicas de Open SQL: Estas incluyen soporte de expresiones SQL en el SELECT y en las clausulas GROUP BY, HAVING y WHERE.
  3. Implementación de procedimientos de bases de datos SAP HANA en metodos ABAP. Los procedimientos de base de datos administrados ABAP (AMDP) nos permite ejecutar la logica de procesamiento en la base de datos. Poedemos implementar estos procedimientos de la base de datos en el entorno de desarrollo ABAP normal sin requerir un usuario para la base de datos SAP HANA.

ABAP Core Data Services: Los servicios de datos centrales (CDS) son un metodo especifico de SAP para definir modelos de datos persistentes. 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:

  1. Un lenguaje de definición de datos (DDL): que utilizamos para describir tablas de bases de datos y tipos estructurados.
  2. Un lenguaje de control de datos (DCL): Con el que definimos restricciones de acceso para los objetos CDS.
  3. Un lenguaje de consulta (QL): que nos permite leer datos de una manera comoda y se utiliza en la combinación ocn DDL para definir visitas de base de datos.

Las CDS tambien contienen las siguientes mejoras de SQL:

  1. Anotaciones: Se utilizan para enriquecer los objetos CDS con metadatos adiciones, que no se pueden expresar en SQL. Estos metadatos tambien pueden ser consultados y utilizados por las aplicaciones cliente.
  2. Tipo de datos definidos por el usuario, escalares y estructurados: Estos se utilizan para ilustrar mejor la semantica de los tipos de datos utilizados.
  3. Asociaciones: Estas se utilizan para definir las relaciones entre los objetos CDS. Durante el proceso de modelado y cuando los datos se leen de la base de datos, podemos utilizar expresiones de ruta para abordar las relaciones que se han descrito con las asociaciones.

HANA CDS vs ABAP CDS

A continuación las caracteristicas que diferencia a ambas implementaciones:

Las SAP HANA CDS.

  1. Se crean directamente en la base datos de SAP HANA.
  2. Puede consumirse extrernamente con servicios ODATA.
  3. Para consumirlas desde una aplicación ABAP debemos crear una vista externa en el diccionario de datos ABAP, enlazar la vista externa con la vista HANA CDS y consumir la vista externa utilizando sentencias OPEN SQL.
  4. Necesitamos crear dos ordenes de transporte diferentes: una para la vista HANA CDS que se trasporta como una unidad de transporte de HANA y otra para la vista externa que se transporta con una orden de SAP.

Las ABAP CDS

  1. Se pueden definir y crear desde el servidor de aplicaciones ABAP mediante Eclipse y el plugin ADT
  2. Pueden consumirse externamente con servicios ODATA
  3. Son independientes de la base de datos
  4. Pueden utilizar tablas, vistas, etc,... definidos en el diccionario de datos ABAP
  5. No requieren crear vistas externas
  6. Necesitamos crear una unica orden de trasnporte estandar de SAP.

ABAP CDS vs vistas de la transacción SE11

Las vistas creadas desde la transacción SE11 tiene limitaciones, solo podemos crear asociaciones de tipo INNER JOIN y no podemos utilizar asociaciones de tipo LEFT OUTER JOIN.

Caracteristicas disponibles en las vistas ABAP CDS, que no estan en la transacción SE11

  1. Parametros de entrada
  2. SQL JOINS (inner join, left outer join, right outer join)
  3. Agrupar resultados (UNION/UNION ALL)
  4. Funciones de agregación (SUM, MAX, MIN, COUNT, AVG)
  5. Clausulas SELECT (WHERE, GROUP BY, HAVING)
  6. Operaciones aritmeticas sobre columnas (+, -, * , DIV)
  7. Insertar litares en la selección
  8. Funciones de conversión de fechas
  9. Expresiones condicionales (CASE)
  10. Asociación de tablas
  11. Anotaciones
  12. Path expressions

Como encontramos las vistas ABAP CDS creadas en el sistema SAP

Podemos consultar la tabla de base de datos estandar TADIR con los siguientes parametros de selección, de modo de encontrar todas las vistas CDS existentes en SAP, su nombre en el diccionario ABAP y el paquete al que pertenecen.

Debemos acceder a la tabla TADIR con los siguientes parametros:

  1. PGMID = R3TR
  2. OBJECT = DDLS

Accediendo la tabla DDLDEPENDENCY, podemos obtener los nombres de la vista en el diccionario ABAP y en SAP HANA.


 

 

 


Sobre el autor

Publicación académica de Marvin Raul Lopez Morales, en su ámbito de estudios para el Máster ABAP for HANA.

SAP Expert


Marvin Raul Lopez Morales

Profesión: Consultor Senior Sap / Abap It - Guatemala - Legajo: WP66T

✒️Autor de: 157 Publicaciones Académicas

🎓Cursando Actualmente: Consultor SAP Fiori

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Soy ingeniero en sistemas y cuento con mas de 20 años de experiencia en el área de informatica, tambien he participado en la implementación, migración y configuración de sap-erp para varias empresas.

Certificación Académica de Marvin Lopez