ABAP RESTful Programming Model: un paso más

En la entrada de ayer os comentaba que algo, con lo que es probable que ni os hayáis puesto aún, se estaba quedando ya obsoleto. Realmente, debería decir que ha ido evolucionando.

Si ayer hablaba del ABAP Programming Model, hoy escribo de algo que no es exactamente lo mismo: ABAP RESTful Programming Model.

Todo esto está muy relacionado con el anunciado ABAP en Cloud, que nos presentaron hace unos meses en el SAP TechEd y que se basa en lo siguiente:

    • Modelado (CDS)
    • Aprovisionamiento de servicios (OData)
    • Consumo de servicios (Fiori)

Entre otras cosas, en este modelo, deberíamos trabajar con las ABAP Development Tools (ADT), ya no hace falta entrar a la SE80 por SAP GUI, a pesar de la flamante versión 7.60 😉

El ABAP sigue vivo, aunque no será el de siempre, y hay que habituarse al uso de API’s y el modelado de datos con CDS.

Aquí os dejo el artículo donde hablan de todo esto: Evolution of the ABAP Programming Model

¿Y tú, te apuntas a la evolución o piensas seguir con tus ALV’s? 😉

ABAP Programming Model: algo que te debería sonar

Hace menos de 1 año escuché esta frase: «El ABAP orientado a objetos casi no se utiliza». Que es algo así como decir, a estas alturas del partido, que La Tierra es plana, pero ya sabéis que hay de todo en este mundo… 😉

También cuando cuento algo de SAP Cloud Platform alguien me dice lo de «todo esto es muy  nuevo»… y cuando miro el primer curso que hubo en openSAP sobre esto veo que es del 26 de octubre de 2013… ¡hace casi 5 años y medio!

Lo que sí es cierto es que, por ejemplo, todo lo de SAP Cloud Platform ha cambiado bastante desde que empezó, pero de ahí a que sea «muy nuevo», hay una gran diferencia.

Y aunque tengo claro que esto es un poco predicar en el desierto, vuelvo de nuevo a la carga, intentando explicar por qué, sobre todo si eres desarrollador, deberías ir pensando en actualizarte.

La clave de todo está en entender este gráfico:

Simplificándolo mucho: tengo mis datos en HANA, los modelo con CDS, los pongo en formato OData y los consumo en aplicaciones SAPUI5/Fiori.

De entrada, tengo que tener muy claros algunos conceptos: HANA, CDS, OData y SAPUI5. Algo que ya era básico a finales de 2017… 😉

¿Por dónde empiezo? Aquí os dejo una pequeña ayuda: Be prepared for the ABAP Programming Model for SAP Fiori

¿Te vas a actualizar o vas a pasarte la vida haciendo batch-inputs?

Y lo mejor es que esto, está empezando a quedarse «obsoleto»… 😉

 

SAP Fiori: opciones de implementación y recomendaciones

Confío en que a estas alturas ya tengáis todos más que claro que Fiori es un patrón de diseño o el nuevo paradigma de la experiencia de usuario en SAP, pero no un lenguaje de programación.

Por no repetirme, os remito a un artículo publicado hace año y medio: SAPUI5, OData y Fiori: pongamos un poco de orden.

Precisamente, echando la vista atrás me acordé de que en artículo en el que hablaba de la compra de Qualtrics por parte de SAP, planteé una breve encuesta utilizando la herramienta y no había compartido los resultados.

Era sólo una pregunta  («¿Sobre qué te gustaría que escribiera en próximos artículos?») y este fue el resultado:

Y en ello estoy, de ahí que hoy toque hablar un poco de Fiori, en concreto de las opciones de implementación que tenemos a día de hoy.

Supongamos que tenemos un backend del que queremos extraer información para consumir aplicaciones Fiori, tendríamos estos 3 escenarios posibles:

  • SAP Fiori embebido: el frontend estaría el mismo servidor que el backend.
  • SAP Fiori hub: el frontend estaría en un servidor dedicado.
  • SAP Fiori Cloud: utilizaríamos el servicio de SAP Cloud Platform y el Cloud Connector para comunicarnos con el backend.

En cualquiera de estas opciones, los procesos de negocio residen en el backend y lo único en que difieres es en la ubicación de las aplicaciones Fiori y el propio SAP Fiori Launchpad (FLP), que será el punto de acceso único a las aplicaciones.

¿Por qué elijo una opción u otra? Hay distintos criterios, pero aquí tenéis alguno:

  • Si tengo distintos backends que no sean S/4HANA, de los que quiero consumir datos: SAP Fiori embedido.

  • Si tengo un sistema S/4HANA (que ya trae la parte Fiori incluida siempre) y otros anteriores: SAP Fiori embebido.

  • Si añadimos un nuevo sistema S/4HANA al escenario anterior: SAP Fiori embebido.

  • Si tengo múltiples sistemas S/4HANA, puedo utilizar el propio los que vienen en el propio sistema: SAP Fiori embebido.

  • También es cierto que en el caso anterior, podría optar por tener un sistema para centralizar el acceso a los distintos FLPs que hay por detrás: SAP Fiori hub.

  • Si no quiero complicarme con la parte de infraestructura y me valen las aplicaciones Fiori que me ofrece el servicio, la opción sería SAP Fiori Cloud.

Evidentemente, aparte de decidir esto, después hay que ver cómo intercambiamos esa información entre el backend y el frontend, donde ahí tendríamos que hablar de gateway, OData y cosas así, pero de eso ya os cuento algo otro día.

Aquí os dejo un gráfico con las opciones:

Aparte de lo comentado, es evidente que cada una de las opciones tiene sus ventajas y sus inconvenientes, y podéis encontrar toda esa información aquí: SAP Fiori Deployment Options and System Landscape Recommendations (January 2019, Version 2.2)

Confío en que seáis más disciplinados que Bart y os hayáis aprendido la lección… 😉

SAP TechEd 2018 Las Vegas (III)

El futuro/presente del ABAP ya está aquí…

 

¿Aún no has probado lo de las Mobile Cards?

 

Próximamente en sus pantallas: Fiori 3.0. Si no has visto la 1 y la 2, no te vas a enterar de nada… 😉

 

Blockchain en todo y para todo, en el enlace del tuit te cuentan la historia de ¿qué es esto del Blockchain?

 

Los datos también tienen su corazoncito… ❤❤❤

 

Todo apunta a Fiori 3.0

 

SAP Fiori Cloud y olvídate de todo 😉

 

Una de estas imágenes que tanto me gustan, donde todo se integra por arte de magia… 😉

 

SAP Activate te ayuda en tu proceso de transformación.

 

Si no te suenan términos como Cloud Foundry, OData y CDS, entre otros, esto te va a servir de poco…

 

SAP Cloud Platform Functions = FaaS = Function-as-a-Service

 

¿Cómo puedo aprender SAP?, me preguntáis a veces. Antes era más complicado, ahora openSAP lo pone fácil.

 

Esto de la entrega continua, hay que empezar a tenerlo en cuenta… muy de la mano de todo el tema de los microservicios y del DevOps.

Mañana termino con esto, lo prometo… 😉

Conceptos básicos de SAP en 2017

A menudo recibo consultas de gente que quiere reciclarse dentro del mundo SAP y me piden orientación sobre qué y dónde mirar.

Evidentemente, no hay una fórmula mágica y depende del perfil de la persona, entre otras cosas, pero lo que está claro es que hay cosas que le tienen que sonar a todo el mundo y creo que esta imagen es un buen punto de partida:

Ahí lo tienes todo: una nueva experiencia de usuario (Fiori) que consume servicios (OData) generados con un nuevo modelo de programación (ABAP, CDS, BOPF), basado en las capacidades en tiempo real que ofrece una base de datos en memoria (HANA).

En eso se basan todas las soluciones SAP presentes y futuras, así que si quieres seguir en este mundo, al menos deberías tener claro qué es cada una de estas cosas.

Y a partir de ahí, elegir algo y profundizar en el tema; en todo es imposible, si no queréis morir ahogados en «el océano infinito del conocimiento». Creo que a estas alturas debes tener claro lo que comenta Raúl Hernández González en el citado artículo:

Podemos aprender cualquier cosa, pero no podemos aprenderlo todo.

Muy bien, ¿y dónde puedo encontrar información de todo esto? La respuesta está clara: en este mismo blog. Concretamente, en una entrada que escribí hace un par de meses en la que intentaba dar respuesta a la pregunta de «¿Dónde puedo aprender SAP?» 😉

El ABAP no está muerto… ¿y tú?

Como ya comenté hace unos días el ABAP no está muerto, ni mucho menos… lo que no tengo tan claro es si muchos de los desarrolladores ABAP siguen «vivos».

Con la versión 4.6, allá por el año 2000, apareció en SAP la programación orientada a objetos y es el día de hoy cuando todavía muchos clientes siguen manteniendo sus viejos desarrollos donde los métodos y las clases brillan por su ausencia.

Eso sí, batch-inputs y ALVs, los que quieras 😉

Esto me lleva a reflexionar sobre un «novedoso» artículo publicado hace casi más de 5 años en el SCN: «A Call to Arms for ABAP Developers»

Básicamente, habla de lo que comentaba, que no te puedes tirar 15 años haciendo lo mismo y de la misma forma, sin estar al tanto de las innovaciones que van saliendo.

También es interesante ver la evolución que tuvo este hilo abierto en 2010 y actualizado hasta 2015: «ABAP Future in next coming years»

Es curioso ir viendo cómo van variando las opiniones a medida que va pasando el tiempo… lo que es cierto es que el ABAP permanece.

De todas formas, veamos una opinión más actual en: «The Future and Scope of SAP ABAP Career Paths»

Aquí mencionan algo que comparto plenamente: ABAP sí, pero no sólo ABAP.

Personalmente, creo que la clave en los próximos años va a estar en la integración: sistemas cloud con sistemas on-premise, sistemas SAP de toda la vida (ERP, CRM, SRM…) con sistemas adquiridos (que no integrados, aunque todo llegará) por SAP (SuccessFactors, Ariba, Concur…) y, por supuesto, con sistemas de otros proveedores, que algo hay que dejar para los demás… 😉

Es cierto que es difícil seguir el ritmo y que es imposible que alguien controle: ABAP OO, WebDynpro Java, Workflow, WebDynpro ABAP, OData, Gateway, SAPUI5, BOPF, BRF+, JavaScript, CSS, Core Data Services, HCI, SQLScript… aunque los recruiters y/o los jefes de proyecto lo pretendan…

Lo que es cierto es que te tiene que sonar de qué va todo eso y que si no te suena ya, vas tarde… pero tienes forma de reengancharte, sólo es cuestión de bucear entre los miles de blogs, videos, libros y echarle un poco de ganas.

Yo iré contando alguna cosa por aquí, pero seguro que la tecnología va más rápida, así que mejor espabila, si no quieres que te arrolle el tren 😉

PD.- Ah, y si no os importa pagar, creo que este libro podría serviros de ayuda: «ABAP to the Future»

SAPUI5, OData y Fiori: pongamos un poco de orden

Aunque ya he escrito anteriormente sobre cada uno de estos temas, creo que no es malo poner un poco de orden e intentar explicar qué es cada cosa.

SAPUI5 es un conjunto de herramientas para el desarrollo de aplicaciones, basado en HTML5 y otras tecnologías o protocolos como JavaScript, CSS3 y OData, entre otros, como ya dije en su momento en HTML5, SAPUI5, OpenUI5: ¿es lo mismo?

Pero como puede que no se entienda, vamos a ver cómo lo cuentan otros:

OData es una iniciativa impulsada por Microsoft para la exposición de datos como servicio basándose en estándares de Internet, como ya dije en su momento en SAP GWPAM: trabajando en SAP desde Excel

Muy relacionado con OData está el tema del SAP Gateway, que es lo que nos va a permitir consumir esos servicios OData… ¿qué?, ¿cómo?…

Fiori es la nueva experiencia de usuario SAP , diseñada con una imagen actual, basada en tecnologías estándar y centrada en la usabilidad, lo que permite a los usuarios, de cualquier línea de negocio, trabajar de una manera uniforme desde cualquier dispositivo. De esto he hablado unas cuantas veces: AAncos.com – Entradas sobre Fiori

Por supuesto, de esto también nos hablan Jorge y Oreka:

Tened en cuenta que ha pasado un tiempo desde que se hizo la entrada de Oreka y esto está en constante evolución, pero creo que está bien como punto de partida.

Resumiendo: con SAPUI5 podemos desarrollar aplicaciones Fiori que nos permiten consumir datos obtenidos con OData de una manera sencilla.

En cualquier caso, os recomiendo que visitéis ambos blogs de manera regular, ya que suelen publicar cosas muy interesantes, no sólo de estos temas:

¿Y yo qué gano con esto? Pues digo yo que tendrán la decencia de pagarse unas cañas por la mención, ¿no? 😉

¿Qué puedo hacer con HANA Cloud Platform?

Aunque en el post anterior quedó clara la utilidad de HANA Cloud Platform en caso de que nos perdamos en Marte, hoy toca hablar de cosas más terrenales.

HANA Cloud Platform nos permite:

  • Crear micro-servicios, para que el usuario pueda realizar determinadas tareas desde cualquier dispositivo y cualquier lugar, accediendo a toda la información necesaria (y sólo a esa) para poder tomar una decisión. Por ejemplo: aprobar facturas, solicitudes de pedido…
  • Tener un único punto de acceso a toda la información, sin importar si la información la tengo en una aplicación on-premise o cloud. Con el Fiori Launchpad, por ejemplo.
  • Extender la funcionalidad de aplicaciones como S/4HANA, SuccessFactors ó el ERP, con el uso de tecnologías abiertas como Java, JavaScript, OData… Hace unos meses escribí algo sobre JobPts, una aplicación de gamificación para SuccessFactors.
  • Desarrollar aplicaciones desde cero, de una manera ágil y rápida, utilizando herramientas abiertas (openUI5, JavaScript, CSS…), utilizando estándares de desarrollo en cloud, como pueden ser CloudFoundry y OpenStack… tanto en nubes públicas como privadas.

SAP-HANA-Platform

En definitiva, SAP HANA Cloud Platform nos permite integrar todas las aplicaciones cloud, facilitando a los usuarios un acceso fácil y sencillo a la información, con la capacidad de crear aplicaciones abiertas y flexibles, así como extender y personalizar las aplicaciones ofrecidas por SAP.

¿A qué esperas para abrirte tu cuenta? https://account.hanatrial.ondemand.com/

¿Qué es HANA Cloud Platform?

Aunque ya he hablado con anterioridad de qué es esto de HANA Cloud Platform, «permíteme que insista», como diría aquél…

HANA Cloud Platform (HCP) es una PaaS (plataforma como servicio) con un amplio conjunto de herramientas y servicios fáciles de usar que permiten a los clientes de SAP:

  • Crear rápidamente aplicaciones en cloud para cualquier dispositivo.
  • Extender la funcionalidad de las soluciones cloud y on-premise y/o personalizarlas (con ciertas restricciones) de acuerdo a nuestros requerimientos.

Todo ello en un entorno de desarrollo basado en estándares abiertos (OData, HTML5, JavaScript…), que nos permite extender y desplegar cualquier aplicación de forma segura, en cualquier lugar dentro o fuera de la organización.

 

¿Quieres saber algo más? Aquí te lo cuentan: http://hcp.sap.com/index.html

 

Interoperabilidad entre SAP y Microsoft

Han pasado ya más de diez años desde que SAP y Microsoft lanzaran su primer proyecto de colaboración serio, que nació con el nombre de “Mendocino”. El objeto era diseñar un conjunto de utilidades que permitieran interactuar fácilmente con los procesos de SAP desde un entorno más familiar para el usuario, como son los que forman parte del paquete de Microsoft Office. Al mercado llegó con un nombre algo más comercial, que es como se conoce actualmente: “Duet”.

bsp

Extracto del artículo publicado en el último número de bspreviewsPodéis leer el artículo completo aquí: http://bspreviews.com/interoperabilidad-entre-sap-y-microsoft/