Reality Check: ABAP no es ABAP
En el marco de un proyecto interno de innovación, queríamos someter las promesas de marketing a una prueba de realidad, por un lado, y aclarar lo que cuesta hacer que una aplicación local esté disponible en el SCP, por otro.
Herramienta de código de barras en la nube
Con la herramienta de códigos de barras Snap, un servicio de comprobación de los códigos de barras más utilizados, los datos de los códigos de barras contenidos en cada paquete marcado con ella pueden procesarse y cotejarse con el sistema ERP de SAP en una fracción de segundo.
Nuestro plan: Con la ayuda de SCP, queremos ofrecer este servicio en Internet como un servicio de pago por uso con integración en el backend de SAP. Con el fin de mejorar la calidad de los datos maestros de nuestros clientes, la aplicación también debe ser detectable e integrable a través de SAP Business API Hub o SAP Shop, y fácilmente utilizable en teléfonos móviles a través de Fiori. Hasta aquí, todo bien.
De on-prem a la nube
Al principio, nuestra idea era bastante simple: la aplicación ABAP que ahora funciona on-premise se ejecutará en ABAP en SAP Cloud Platform (SCP). Así que configuramos una cuenta SCP, activamos una instancia ABAP en ella e importamos la herramienta de código de barras. Ese era el plan.
Entonces, tal vez un poco de re-codificación, activar un servicio adicional aquí y allá y luego generar una aplicación de demostración Fiori simple de eso, publicarlo en el centro de negocios - ¡eso es todo! Pensamos.
Obtener una licencia de socio y activar una instancia pagando seguían siendo ejercicios sencillos. La expectativa de poder importar nuestra herramienta en el SCP en el mejor de los casos mediante una solicitud de transporte y en el peor mediante copiar y pegar se vio defraudada.
En realidad, teníamos que cargar objetos ABAP en un repositorio Git y descargar otros desde allí. Al fin y al cabo, SAP utiliza Git, ¡una herramienta de código abierto que conocíamos!
Pero, por desgracia, incluso el procedimiento correcto daba lugar a mensajes de error. Por un lado, porque algunos objetos (como los includes) no se importaban y, por otro, porque objetos clásicos de ERP como MARA y MATNR, que utiliza nuestra herramienta de códigos de barras, simplemente no existen en SCP-ABAP o porque no se permite acceder a ellos.
La constatación un tanto amarga: la "importación casi unívoca" prevista no puede realizarse, ¡nuestro experimento se desarrolla en la dirección de la reimplantación del producto!
Soluciones e improvisaciones
Así que construimos una envoltura para llamar a la funcionalidad desde el backend. Pero el nombre del ABAP-RESTful-Programming-Model (RAP) resultó ser un puro eufemismo.
Trabajar con él no fue en absoluto relajante, ya que no existe ni el "conocido" SE80 ni una GUI de SAP para Windows. Lo que hay disponible es Eclipse y varias aplicaciones Fiori Launchpad.
En estas condiciones, nuestro proyecto de portar una aplicación local a la nube se convirtió en un tour de force lleno de soluciones provisionales e improvisaciones, y en una cita con muchos componentes e interfaces de usuario nuevos.
ABAP en la nube funciona de forma diferente
Echando la vista atrás, hemos aprendido algunas cosas. En primer lugar: ABAP en la nube no es lo mismo que ABAP on-premise. La nube ofrece muchos conceptos y posibilidades nuevos.
SAP parece estar desarrollando primero innovaciones en el entorno ABAP para la nube, como demuestra el enfoque Fiori-everywhere de la interfaz de usuario, que elimina la GUI de SAP. El diccionario de datos sí contiene algunos objetos nuevos del mundo on-premise.
Sin embargo, algunas de las cosas conocidas ya no están disponibles. Así, nuestro proyecto de migración previsto se ha convertido en el transcurso del mismo en una auténtica nueva aplicación.
Bueno para los nuevos
Aunque nuestro enfoque no resultó eficaz, nos dio una buena idea de la plataforma en nube de SAP. Es muy adecuada para nuevos desarrollos, también en combinación con soluciones locales, pero no tanto para portar aplicaciones existentes.
Las ventajas de la nube, como la escalabilidad, la seguridad y los enfoques globales, pueden aprovecharse, y las nuevas tecnologías y procesos están disponibles aquí en el momento oportuno. En resumen: SCP ofrece un amplio abanico de posibilidades innovadoras que están a la última. Pueden utilizarse de forma óptima en el desarrollo de nuevas aplicaciones.