Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diapositivas 1 - 3
se resume en hacer todo lo que puedas en base de datos para no cargar innecesariamente la
aplicación,
Los CDS constan de los tres siguientes sub-lenguajes que abordan los diferentes subdominios
de modelado de datos y acceso
La parte DDL de los Core Data Services puede considerarse una mejora de SQL que permite
definir tablas y vistas de base de datos
Query Language (QL)
Las vistas definidas con Data Definition Language de CDS, se pueden consumir en programas
ABAP utilizando el lenguaje de consulta Open SQL
Esto lo veremos en los ejemplos, pero básicamente podemos definir una autorización para que
todos o algunos usuarios puedan acceder y/o ejecutar una vista en concreto.
Diapositiva 5 capas
Tenemos 3 capas, presentación lo que ve el usuario, debe ser una interfaz amigable y
funcional, aplicación contiene el backend y sap Gateway y la capa de base de datos que es
donde debemos mover la lógica para optimizar los tiempos de ejecución de las aplicaciones.
Diapositiva 6
Vamos a crear nuestra primera vista CDS, lo primero que debemos hacer es instalar eclipse y
una vez instalado ir Help>install new software
https://tools.hana.ondemand.com/oxygen
Creamos un nuevo proyecto y lo conectamos con los datos de conexión de SAP LOGON, luego
creamos un paquete y dentro un Data Definition para empezar a crear nuestra vista.
Una vez definida, nos genera la definición empezamos a ajustarla para nuestro caso.
Vamos a ver un ejemplo sencillo donde usamos nuestra vista en un report y mostramos los
datos.
Los siguientes ejemplos son iguales pero añadiendo la sentencia case o también podemos
hacer sumatorios para tener subtotales ya creados en la vista, counts para numero de pedidos
o también lo podemos usar para numero de palets etc etc
Tambien podemos crear vista con parámetros como vemos en el ejemplo, y dependiendo del
parámetro realizamos una opción y otra.
Por ejemplo si creamos una vista que llama a la función ADR_GET que acepta como parámetro
el ADNR, si en esta vista le indicamos el adnr según lo que necesitemos, tendremos una vista
que devuelve los datos de dirección para proveedor, socidad, solicitante etc etc lógicamente
estas vistas las podemos replicar en otros proyectos y reutilizarlas, por lo que tendríamos 1
vista para recuperar todos los datos de dirección para cualquier formulario (que necesite esos
datos) para cualquier proyecto y todo esto optimizando los tiempo de procesamiento de la
aplicación.
Supongamos que tenemos la vista anterior creada, y preparada pero para un caso en concreto
necesitamos mas datos, o calcular otro valor, podemos extender las Vistas como si
extendiéramos un BADI.
En este caso se creo una extensión para comprobar si el importe bruto es mayor a un importe
para definir el impacto (se podría crear en la vista principal pero la cree como extensión para el
ejemplo)
Diapositiva 17
Personalmente la más cómoda sería la última pero se puede buscar de varias maneras
Diapositiva 22
¿Y si queremos que nuestra vista CDS la podamos consumir como un servicio ODATA y
utilizarlo en una app FIORI por ejemplo?
CDS EN ODATA
Hay una serie de paso para crear un servicio ODATA pero de la siguiente forma es mucho mas
rápido, y automático:
@odata.publish = true
Iriamos a la transacción MAINT_SERVICE para añadir nuestro servicio, en mi caso era un CDS
en LOCAL una Y* completo los campos, le doy a buscar, selecciono el servicio y lo añado.
Ahora ya tenemos nuestro servicio en MAINT_SERVICE, lo probamos con cliente SAP GATEWAY
y con $metadata vemos que tiene 200 y OK, comprobamos en eclipse que el odata nos indica
que esta correcto.
Diapositiva 27
Muy bien, tenemos nuestro servicio, que devuelve datos de una vista creada en eclipse, ahora
vamos a consumirla en una APP fiori con una plantilla simple para mostrar datos de la vista
que hemos creado.
Seguimos los pasos pero básicamente es elegir una plantilla, indicarle el nombre del servicio, la
conexión y listo.
La idea es que realizamos las búsquedas y cálculos en la vista, y en la APP solo debemos
mostrar los datos.
Vamos a crear un ejemplo como el anterior, pero usando BOPF, en este caso conseguiremos
crear un CRUD (crear modificar eliminar) , para hacer modificaciones en los datos de la base de
datos y aparte la vista para mostrar los datos y los cambios.
BOPF es un framework y como tal nos ayuda a programar generando funcionalidades standard
como el crud que indicaremos.
AMDP