Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CORE DATA
SERVICES
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
Introducción
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
Introducción
Situación inicial
¿Qué es un CDS?
1 2 3 4 5 6 7
Introducción CDS: Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
CDS: Creación y uso
Crear una vista CDS
Necesario:
-SAP_BASIS es 7.40 SP05 o superior
-IDE Eclipse y el plugin ABAP Development Tools
4) Usar nuestra vista como una tabla interna en SAP, en este caso metemos el resultado de la vista en la tabla interna que son
los vuelos de donde el carrid = “AA”
CDS: Creación y uso
Desde un report SAP
5) Si comprobamos, vemos que ha introducido los datos del Core Data Service creado.
CDS: Creación y uso
Ejemplo 1
Vamos a realizar algunos ejemplos de CDS view:
YHAV_CDS_EXAMPLE_0901.txt yhav_cds_consume_0901.txt
CDS: Creación y uso
Ejemplo 2
Como hemos visto, la limitación principal es que las vistas solo devuelven un conjunto de datos, en este ejemplo usaremos la
salida de la vista anterior para generar una nueva, (un ejemplo seria pedidos y línea de pedidos, sacas los pedidos en la primera
vista y completas con los items donde el numero de pedido sea el mismo).
YHAV_CDS_EX2_0901.txt
CDS: Creación y uso
Ejemplo 3
Ejemplo 3 CDS view con parametros
Usamos la vista 1 para recuperar los datos en myview, la vista 3 necesita 2 parámetros que se le pasaran en el programa de
consumo de la vista indicada.
YHAV_CDS_PARAMETERS.txt
YHAV_CONSUME_PARAMETERS.txt
CDS: Creación y uso
Ejemplo 4
Ejemplo 4 CDS view que extiende una vista ya creada en el ejemplo 1
YHAV_CDS_EXTND.txt
Una vez activada la extensión, en la vista principal aparecerá dicha extensión de ls CDS view.
Diccionario de
datos
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
Diccionario de datos
Busqueda de CDS view en SAP
Buscando en la tabla TADIR, podemos encontrar las vistas CDS existentes en SAP, su nombre en el diccionario y el paquete al que
pertenece.
Parametros:
Si accedemos a la tabla DLLDEPENDENCY obtendremos los nombres de la vista en el diccionario de datos y en SAP HANA, el
objectname es la denominación de la vista en el diccionario y DDLname es el nombre de la vista en eclipse.
Parametro:
OBJECTTYPE = ‘VIEW’
Diccionario de datos
Busqueda de CDS view en SAP
Podemos buscar todas las vistas para una tabla determinada: Elegimos fuentes DDL
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
CDS en ODATA
Consumir una vista CDS en un servicio ODATA
En la definición de la vista debemos indicar @Odata.publish : true, asi se creará automáticamente un servicio Odata y solo
habría que añadirlo, activarlo y ejecutarlo.
cds_view_sflight.txt
CDS en ODATA
Consumir una vista CDS en un servicio ODATA
Tenemos el CDS para poder consumirlo en el Odata primero debemos activar el servicio y comprobar que devuelve los
datos.
Vamos a la transacción /n/IWFND/MAINT_SERVICE y añadimos el servicio creado
Ejecutamos después de modificar el final por $metadata y si es correcto finalizará con status code 200 en mi caso la URL es:
/sap/opu/odata/sap/YCDSV_SFLIGHT_CDS/$metadata
CDS en ODATA
Consumir una vista CDS en un servicio ODATA
Vamos a comprobar si en Eclipse ya nos indica que el servicio ODATA esta online.
CDS en Fiori
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
CDS en Fiori
App Fiori
Completamos los nombres y elegimos el servicio Odata que creamos en el apartado anterior:
CDS en Fiori
App Fiori
Marcamos el check de anotaciones que se generó cuando creamos nuestra vista CDS en Eclipse.
Elegimos la colección de datos en este caso de la CDS, en este caso no hay navegación (tabla items por ejemplo)
CDS en Fiori
App Fiori
Esta aplicación se ha creado automáticamente solo con el servicio OData que tiene una CDS View, es decir solo con el
servicio hemos generado
CDS en Fiori + BOPF
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
CDS en Fiori + BOPF
Requisitos
2) Para alojar la aplicación usaremos Web IDE después de configurar el Cloud Connector*
Herramienta Dirección
YDEMO_C_SALESORDER_ITEM.txt
CDS en Fiori + BOPF
Ejemplo 1.1 creación de CDS view para header
Creamos la vista básica para el header y después una de consumo como hicimos para Items.
YDEMO_I_SALESORDER.txt
CDS en Fiori + BOPF
Ejemplo 1.1 creación de CDS view para header
Programamos la vista de consumo para luego probar el servicio desde SAP
YDEMO_C_SALESORDER.txt
CDS en Fiori + BOPF
Ejemplo 1.1 creación de CDS view para ITEMS
Añadimos el servicio como hicimos en el apartado 2 de este manual y ejecutamos:
Nos desplazamos al class builder y creamos la clase que definimos en la diapositiva anterior,
YCL_A_DEMO_SALESORDER podemos hacer doble click y modificar herencia
CDS en Fiori + BOPF
Ejemplo 1.1 creación de CDS view para ITEMS
Antes de empezar con la app debemos programar la acción BOPF y mostraremos la orden de venta en la app.
Con la transacción /nBOBX veremos las configuraciones BOBF y buscamos la nuestra para crear la acción de modificar el
estado a pagado.
Ahora que tenemos todo el backend programado, entramos en Web IDE service y creamos un nuevo proyecto.
CDS en Fiori + BOPF
Ejemplo 1.2 programando la APP Fiori
Elijo la plantilla de detalles ya que quiero mostrar pedido, líneas y detalle del mismo:
CDS en Fiori + BOPF
Ejemplo 1.2 programando la APP Fiori
Al pulsar siguiente, elegimos nuestro Service Catalog y la CDS VIEW que hemos creado en los pasos anteriores, ahora
estamos creando una app por template que muestre los datos que capturamos con la CDS view con CRUD y acción BOPF
CDS en Fiori + BOPF
Ejemplo 1.2 programando la APP Fiori
La collecion serian los pedidos, y la navegación detalle y de lo que se compone en este caso los items.
CDS en Fiori + BOPF
Ejemplo 1.2 programando la APP Fiori
1 2 3 4 5 6 7
Introducción CDS Diccionario de CDS en ODATA CDS en Fiori CDS en Fiori AMDP
Creación y uso datos + BOPF
AMDP
Introducción
ABAP MANAGED DATABASE PROCEDURES, como las vistas CDS se utiliza para optimizar la captura y calculo de datos
en tiempo de ejecución. La premisa es la misma, realizar los cálculos en base de datos ya que en las consultas SQL estamos
limitados a un solo paso.
La idea general es la implementación de un método que dentro realice la consulta y/o operaciones, es importante saber que
cada clase que contenga un AMDP debe contener la interfaz IF_AMDP_MARKER_HDB
Parámetros:
CDS VIEW:
CDS view solo puede devolver un conjunto de datos por vista, pero es reutilizable por lo que es útil si se va a usar dicha vista
en distintos proyectos. (ejemplo albarán 1 vista customer, 1 vista Factory 1 vista delivery …)
Utiliza la clase de IDA de la GUI de SAP por lo tanto es mucho más rápido (paginación)
AMDP:
-Por otro lado AMDP no se puede reutilizar en diferentes bases de datos, sino que habrá que programarlo según sea necesario.
-Se pueden aprovechar las potentes funciones de
SQL nativo, como la conversión de moneda.
- Se necesitan conjuntos de resultados múltiplos.
- Podemos usar SQLscript/AMDP y realizar consultas
sql sobre tablas internas
AMDP
Ejemplo AMDP
Implementamos la clase, primero la estructura y método data_ret, pulsado control+1 se abre la ayuda y seleccionamos add
implementation for data_ret
YTEST_PRO.txt
AMDP
Ejemplo AMDP
Una vez implementada la clase, podeos definir varias implementaciones que nos recuperen a nivel de base de datos lo que
necesitemos mostrar en la aplicación, creamos un programa de ejemplo para probarlo (activar antes)
CONCEPTO Referencia
BOPF https://archive.sap.com/documents/docs/DOC-45425
https://blogs.sap.com/2016/09/26/core-data-services-cds-in-sap-s4-
hana/
AMDP https://help.sap.com/saphelp_nw74/helpdata/en/3e/7ce62892d243e
ca44499d3f5a54bff/frameset.htm
SQL Script https://help.sap.com/viewer/de2486ee947e43e684d39702027f8a94
/2.0.02/en-US
Estamos a su lado para ayudarle
a mejorar su negocio