✒️ABAP HANA / ABAP Core Data Services Por Jesús Quiñonez López

Selector Alummnos / Empresas

ABAP ABAP Core Data Services

ABAP ABAP Core Data Services

2 ABAP CDS (Core Data Services)

1 Introducción a la programación AVANZADA de BD con ABAP 7.4

Para poder implementar el paradigma "code to data" es necesario que implementemos parte de la lógica en la BD.

Para lograrlo disponemos de las siguientes herramientas disponibles en Eclipse.

- Procedimientos de BD

- Vistas de atributos

- Vistas analíticas

- Vistas de cálculo

Pero a diferencia de los objetos administrados por el AS ABAP los objetos de desarrollo de SAP HANA tienen algunas restricciones.

Restricciones o desventajas de los objetos de SAP HANA en ABAP.

- Desventajas :

- No. 1

Los objetos de desarrollo de SAP HANA no se integran por completo a la gestión del ciclo de vida de ABAP. Esto quiere decir que debemos sincronizar manualmente los cambios realizados en el DDIC de las modificaciones realizadas con objetos de SAP HANA Studio.

- No. 2

Los objetos de SAP HANA no son considerados en la verificación de sintaxis y activación de un programa ABAP. Esto nos lleva a tener errores en tiempo de ejecución.

- No. 3

Los objetos de SAP HANA no pueden extenderse o ampliarse.

- No. 4

Para implementar objetos de SAP HANA los desarrolladores requieren un usuario adicional para la BD SAP HANA con las autorizaciones correspondientes para la misma.

A partir de ABAP 7.4 se introducen algunas mejoras al lenguaje de modo de garantizar la integración de los objetos en el ciclo de vida ABAP. Incluye la gestión de versiones y la posibilidad de ampliar objetos.

Los más relevantes :

-> CDS: Se usan para crear modelos de datos persistentes.

-> Nuevas características de Open SQL: Soporte de expresiones SQL en los SELECT y en las cláusulas GRPUP BY, HAVING y WHERE.

-> Implementación de procedimientos de BD SAP HANA en métodos ABAP: Procedimientos de BD administrados ABAP AMDP los cuales nos permiten ejecutar lógica en la BD. Podemos implementar estos procedimientos de BD en el entorno de desarrollo ABAP normal sin necesidad de un usuario para BD SAP HANA.

2- ABAP CDS

Las CDS son un método específico de SAP para definir modelos de datos persistentes. Están basadas en los estándares SQL-92 y SQL:1999.

Su objetivo es facilitar la implementación de los modelos de datos desarrollados en la fase de diseño.

Al igual que SQL las CDS definen lo siguiente:

-> Un lenguaje de definición de datos(DDL): Usado para describir tablas de BD y tipos estructurados.

-> Un lenguaje de control de datos(DCL): Usado para restringir el acceso a los objetos CDS.

-> Un lenguaje de consulta (QL): Usado para leer datos de una manera cómoda y se usa en combinación con los DDL para definir vistas en la BD.

Inicialmente solo se podían crear las CDS teniendo una conexión directa al servidor de HANA, pero esto cambió a partir de SAP NetWeaver ABAP 7.4 SP05, ahora podemos crear vistas CDS desde el servidor ABAP usando el plugin ADT en Eclipse.

Las CDS contienen las siguientes mejoras SQL, las cuales son necesarias para crear modelos de datos óptimos para las aplicaciones de negocios:

-> Anotaciones : se utilizan para enriquecer los objetos CDS con metadatos adicionales, que no se pueden expresar en SQL. Estos metadatos también pueden ser consultados y utilizados por las aplicaciones cliente. Las aplicaciones cliente también pueden definir sus propias anotaciones y almacenar sus propios metadatos junto con el modelo de datos.

-> Tipos de datos definidos por el usuario, escalares y estructurados: Estos se utilizan para ilustrar mejor la semántica de los tipos de datos utilizados.

-> 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.

ABAP Core Data Services.

El enfoque principal de las CDS es crear vistas de los datos comerciales existentes, esto debido a que los datos de las soluciones SAP de las empresas ya se encuentran almacenados en la BD.

Las vistas CDS sientan las bases para la aceleración de programas ABAP existentes y para el desarrollo de nuevas e innovadoras aplicaciones.

En SAP HANA los datos comerciales son proporcionados mediante vistas CDS bien definidas en las tablas de la BD de SAP Business Suite.

Una de las características más importantes de las ABAP CDS es que le permiten a las nuevas aplicaciones beneficiarse de la reducción de código de las vistas creadas.

También se puede reutilizar directamente modelos de datos ya existentes y objetos DDIC del Diccionario de datos en ABAP CDS.

Las ABAP CDS son una extensión del DDIC y los objetos SQL definidos en el mismo.

2.1 HANA CDS vs ABAP CDS

Diferencias de implementación de ambas CDS.

-> SAP HANA CDS

- Se crean directamente en la BD SAP HANA.

- Pueden consumirse directamente con servicios ODATA.

- Para consumirlas desde ABAP es necesario crear una CDS ABAP y enlazarla con la CDS HANA y consumirla usando sentencias OPEN SQL.

- Se requieren dos órdenes de transporte :

- Una para la vista HANA CDS que se transporta como unidad de transporte de HANA.

- Una para la vista externa que se transporta como orden de SAP mediante la TX STMS.

-> ABAP CDS

- Disponibles desde SAP NW ABAP 7.4 SP05 (Service Pack).

- Se pueden crear desde el AS ABAP usando el plugin ADT en Eclipse.

- Se pueden consumir externamente con servicios ODATA.

- Son independientes de la BD

- Pueden usar tablas, vistas, etc.. definidos en el DDIC ABAP.

- No requieren crear vistas externas.

- Necesitamos crear una sola orden de transporte estándar SAP mediante la TX STMS.

2.2 ABAP CDS vs Vistas de la TX SE11

Las vistas creadas con la TX SE11 tienen limitaciones, solamente podemos crear asociaciones de tipo INNER JOIN y no permite usar de tipo LEFT OUTER JOIN.

Características disponibles en las CDS ABAP que no tienen las vistas de la TX SE11:

-> Parámetros de entrada:

- ABAP CDS.

-> SQL JOINS (inner, left, right):

- ABAP CDS

- Vistas creadas con la tx SE11 pero con limitaciones.

-> Agrupar resultados (UNION / UNION ALL):

- ABAP CDS.

-> Funciones de agregación (SUM, MAX, MIN, COUNT, AVG ...)

- ABAP CDS.

-> Cláusulas SELECT (WHERE, GROUP BY, HAVING):

- ABAP CDS.

-> Operaciones aritméticas sobre columnas (-, *, DIV...):

- ABAP CDS.

-> Insertar literales en la selección.

- ABAP CDS.

-> Funciones de conversión de fechas.

- ABAP CDS.

-> Expresiones condicionales (CASE).

- ABAP CDS.

-> Asociación de tablas.

- ABAP CDS.

-> Anotaciones.

- ABAP CDS.

-> Path expressions

- ABAP CDS.

2.3 Pasos para crear y consumir una vista ABAP CDS.

-> Seleccionar el proyecto ABAP en el que queremos crear la vista CDS.

-> Seleccionamos el paquete donde crearemos la vista CDS.

- Para esto damos clic derecho sobre el paquete y seleccionamos las siguientes opciones:

- New -> Other ABAP Repository Object

-> Seleccionamos el objeto DATA DEFINITION dentro de la carpeta CORE DATA SERVICES.

NOTA: Si trabajamos con un componente SAP_BASIS inferior a la versión 7.5 debemos seleccionar el objeto "Data Definition" o "DLL Source" dentro de la carpeta Dictionary.

-> Completamos el nombre de la vista CDS y su descripción.

-> Seleccionamos una orden de transporte existente o creamos una nueva.

-> Seleccionamos la plantilla "Define view" y damos clic en finalizar.

NOTA: Dicha plantilla es de las que se encuentran disponibles por defecto.

-> Nos mostrará una ventana con algunas líneas de código.

-> Para implementar la Vista CDS debemos:

- Cambiar el texto "sql_view_name" por el nombre que tendrá la vista en el diccionario ABAP.

NOTA: El nombre que se le asigna a la vista en el DDIC ABAP, NO DEBE SER EL MISMO QUE ASIGNAMOS EN EL PASO 4.

- Cambiar "Data_source_name" por el nombre de la tabla de la BD.

- Para referenciar los campos se usa "." (punto) en vez de "~" (tilde).

- Las columnas a recuperar dentro de la consulta se definen dentro de llaves "{}".

- Después de las {} podemos incluir la cláusula "WHERE".

- Los comentarios inician con "//" para una sola línea o "/* */" para un bloque.

-> Finalmente grabamos y activamos la vista.

En el DDIC las vistas CDS se denominan "Vistas SQL DDL".

Una vez activa la vista ya podemos verla desde la TX SE11, ejecutarla y acceder a su definición desde el menú :

-> Detalles

-> ABAP Create

Pero no podremos modificar la vista desde el diccionario ABAP, esto solo lo podemos hacer desde Eclipse.

Desde las aplicaciones ABAP las vistas CDS pueden ser consumidas mediante sentencias OPEN SQL como cualquier vista o tabla del DDIC.

También pueden usarse como tipo de datos para tablas internas, estructuras y variables dentro de nuestros programas ABAP.

NOTA: Debemos usar el nombre que indicamos en el atributo "sqlviewname" y no el nombre de la vista ABAP CDS.

2.4 Cómo encontramos las vistas ABAP CDS creadas en el sistema SAP?

Para encontrar todas las CDS creadas en el sistema SAP, podemos consultar la tabla estándar "TADIR" con los siguientes parámetros

-> Accedemos a la tabla TADIR con los siguientes parámetros.

- PGMID = R3TR

- OBJECT = DDLS

-> Accediendo a la tabla DDLDEPENDENCY podemos obtener los nombres de la vista en el DDIC ABAP y en SAP HANA con el parámetro:

- OBJECTTYPE = VIEW


 

Escanear / Compartir

 

 

Agradecimiento:

Ha agradecido este aporte: Martín Gómez Rodríguez


Sobre el autor

Publicación académica de Jesús Heriberto Quiñonez López, en su ámbito de estudios para el Master ABAP for HANA.

SAP SemiSenior

Jesús Heriberto Quiñonez López

Profesión: Desarollador de Software - Mexico - Legajo: KH27S

✒️Autor de: 14 Publicaciones Académicas

🎓Egresado del módulo:

Disponibilidad Laboral: FullTime

Presentación:

Mi nombre es heriberto quiñonez. actualmente me desempeño como analista de desarrollo de aplicaciones y sistemas. estoy en búsqueda de mi desarrollo y crecimiento tanto personal como profesional.

Certificación Académica de Jesús Quiñonez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "ABAP Core Data Services" de la mano de nuestros alumnos.

SAP Master


ABAP Core Data Services Introducción y contexto de ABAP CDS Se explicó la programación ABAP orientada a bases de datos introducida en ABAP 7.4 y el paradigma code to data. Se mencionaron los objetos de desarrollo SAP HANA disponibles en Eclipse: procedimientos de base de datos, vistas de atributos, vistas analíticas y vistas de cálculo. Se detallaron desventajas de los objetos HANA en ABAP: falta de integración con el ciclo de vida ABAP, gestión de versiones, verificación de sintaxis y activación, imposibilidad de extensión y necesidad de usuarios/roles adicionales. Mejoras en ABAP 7.4: CDS (Core Data Services), nuevas características...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert



ABAP Core Data Services (CDS) es una tecnología clave en la programación avanzada de ABAP sobre SAP HANA. Permite definir modelos de datos semánticos directamente en la base de datos, optimizando el acceso y el rendimiento gracias al principio de code pushdown, trasladando la lógica de negocio hacia la capa de base de datos. Con CDS, los desarrolladores crean vistas enriquecidas que combinan datos de múltiples tablas, aplican asociaciones, agregaciones y anotaciones que facilitan la integración con frameworks como SAP Fiori, OData y analítica embebida. Estas vistas no solo simplifican el modelado de datos, sino que también mejoran la reutilización y la consistencia en distintos escenarios....

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Programacion Avanzada de Base de datos con ABAP 7.4 Necesitamos impkementar y ejecutar la logica de procesamiento en la base de datos pra poder usar el paradigma code to data en las aplicaciones ABAP. Disponemos de una seria de objetos de desarrollo de SAP HANA para este proposito, los cuales solo se encuentran disponibles en Eclipse por ejemplo: Procedimiento de BD Vistas de Atributos Vistas Analiticas Vistas de Cálculo Sin embargo, el uso de estos nos puede ocasionar algunos problemas, ya que a diferencia de los objetos que estan completamente administrados por el servidor de aplicaciones ABAP, existen restricciones que aplican a los objetos de desarrollo de SAP HANA. Entre las restricciones o desventajas de los objetos...

Acceder a esta publicación

Creado y Compartido por: Jeferson Jos Pena Curvelo / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

ABAP Core Data Services 1. Introducción a la programación avanzada de bases de datos con Abap 7.4 El paradigna code-to-data permite implementar y ejecutar lógica de procesamiento en la base de datos Para esto, tenemos objetos de desarrollo de Sap Hana que se encuentran disponibles en Eclipse, tales como Procedimientos de base de datos, Vistas de atributos, Vistas analíticas y Vistas de cálculo Estos objetos no están vinculados a la gestión de versiones de Abap En el entorno de desarrollo Abap, no se muestran errores ni advertencias relacionados con los objetos de desarrollo de Sap Hana Para implementar objetos de desarrollo de Sap Hana, se requiere un usuario adicional para...

Acceder a esta publicación

Creado y Compartido por: Sergio Diaz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

1. Introducción a la programación avanzada de bases de datos con ABAP 7.4 Objetos de desarrollo de SAP HANA. - Procedimientos de base de datos - Vistas de atributos - Vistas analíticas - Vistas de cálculo Desventajas de los objetos de desarrollo de SAP HANA en ABAP. - Desventaja no 1. Si modificamos un objeto de desarrollo en SAP HANA Studio entonces deberemos sincronizar manualmente los cambios realizados en el Diccionario de datos ABAP DDIC. - Desventaja no 2. El entorno en tiempo de ejecución de ABAP no muestra errores y advertencias relacionados con las implementaciones de objetos de desarrollo de SAP HANA. Esto a menudo nos conduce a errores en tiempo de ejecución. - Desventaja no 3. Los objetos...

Acceder a esta publicación

Creado y Compartido por: Oscar Iván Eugenio Trejo / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Junior

ABAP Core Data Services 1.- Introducción a la programación avanzada de bases de datos ABAP 7.4 Para utilizar paradigma Code-to-Data en aplicaciones ABAP, necesitamos implementar y ejecutar la lógica de procesamiento en la base de datos. Objetos disponibles en Eclipse: Procedimientos de base de datos vistas de atributos vistas analíticas vistas de cálculo Restricciones o desventajas de objectos de SAP HANA No se integran completamente con la gestión del ciclo de vida de ABAP, ni estan vinculados a la gestión de versiones de ABAP No se consideran en la verificación de sintaxis y activación de una aplicación o programa ABAP No pueden extenderse...

Acceder a esta publicación

Creado y Compartido por: Adan Elizarraras

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

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...

Acceder a esta publicación

Creado y Compartido por: Ricardo Daniel Tovar Barrera

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

INTRODUCCIÓN A LA PROGRAMACIÓN AVANZADA DE BASES DE DATOS CON ABAP 7.4 Paradigma CODE-TO-DATA. => Implementar/ejecutar lógica de procesamiento en BD. Objetos de desarrollo de SAP HANA para este propósito (disponibles sólo en Eclipse y pueden ser creados mediante SAP HANA STUDIO): Procedimientos de BD, vistas de atributos, vistas analíticas y vistas de cálculo. Restricciones de los objetos de desarrollo de SAP HANA en ABAP. No se integran completamente con la gestión del ciclo de vida ABAP. Estos objetos de desarrollo se deben sincronizar manualmente en el ABAP DDIC. No están vinculados a la gestión de versiones de ABAP. No se consideran en la verificación...

Acceder a esta publicación

Creado y Compartido por: Johanna Thaina Rangel Lucero / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Unidad 2: Lección 2 ABAP Core Data Services Para utilizar el paradigma code-to-data, se necesita implementar la lógica de procesamiento en la base de datos, para esto se dispone de una serie de objetos de desarrollo de SAP HANA disponibles en Eclipse y creados mediante el SAP HANA Studio: Procedimientos de base de datos Vistas de atributos Vistas analíticas Vistas de cálculo Restricciones o desventajas de los objetos de desarrollo de SAP HANA en ABAP Los objetos de desarrollo de SAP HANA no se integran completamente con la gestión del ciclo de vida de ABAP, si hay cambios en SAP Hana Studio se debe sincronizar manualmente en el diccionario de datos ABAP DDIC No consideran la verificación...

Acceder a esta publicación

Creado y Compartido por: Alejandra Soto Guerrero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Para utilizar el paradigma code-to-data en las aplicaciones ABAP, necesitamos implementar y ejecutar la lógica de procesamiento en la base de datos. Disponemos de una serie de objetos de desarrollo de SAP HANA para este propósito, los cuales solo se encuentran disponibles en Eclipse y pueden ser creados mediante el SAP HANA Studio, entre los que podemos mencionar los siguientes objetos: Procedimientos de base de datos Vistas de atributos Vistas analíticas Vistas de cálculo Sin embargo, el uso de estos objetos nos puede ocasionar algunos problemas, ya que a diferencia de los objetos que están completamente administrados por el servidor de aplicaciones ABAP, existen restricciones que aplican a los objetos...

Acceder a esta publicación

Creado y Compartido por: Maximiliano Belgrado / Disponibilidad Laboral: PartTime

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!