¿Quién ha hecho esta mierda de programa?

Si eres desarrollador, es probable que más de una vez se te haya venido esa frase a la cabeza al revisar el código de un programa. Y es también muy posible que ese «quién» fueras tú mismo… 15 años antes 😉

Que no siempre tiene porqué ser así, que hay gente que hace las cosas muy bien desde el minuto 1, pero aunque fuera así, me cuesta creer que ahora mismo alguien haría igual las cosas que hace 15 años, sobre todo teniendo en cuenta lo que ha avanzado la tecnología en este tiempo.

Sí, ya conozco la máxima de «si funciona, no lo toques», pero es que si trabajas con SAP puede que las cosas dejen de funcionar en breve… ya sabéis, HANA, S/4HANA y esas cositas.

«¿¿¿Cómo??? ¿Pero es que las cosas no funcionan directamente más rápido por poner HANA?».

Claro, claro que sí… es todo automático. Tú metes el «CD de HANA», le das a «siguiente» unas cuantas veces y está todo listo.

A ver, si hace 20 años tú ya tuviste en cuenta que pasado un tiempo te iban a decir justo lo contrario («mete caña a la base de datos, que la aplicación sea ligera») de lo que te estaban diciendo en ese momento («no leas mucho de la base de datos, mete caña en la aplicación»), puede que no tengas que revisar mucho… o si lo tienes todo estándar… porque, por supuesto, las buenas prácticas las has aplicado desde siempre, ¿no?

Si, por un casual, no tuviste en cuenta eso y tienes algún «zeta», o no siempre has sido muy cuidadoso con las buenas prácticas, quizás sea el momento de que revises tu código ABAP.

No esperes al último momento y empieza con esa tarea, ya que obtendrás beneficios inmediatos (optimización del código existente, eliminación de programas obsoletos…) y te preparará mejor para lo que está por llegar, porque sí o sí, vas a pasar a S/4HANA… ¡y lo sabes!

Hace unos meses ya escribí una entrada sobre esto: Revisión de código para migrar a S/4HANA

¿Por qué lo recuerdo ahora? Pues porque es otra de las cosas para las que vas a necesitar las ABAP Development Tools (ADT), de las que os hablaba ayer, es para poder corregir automáticamente muchos de los errores de tu código.

¿Y esto cómo se hace? Pues, por resumir:

  1. Cargas la Simplication Database. Que es una lista que contiene las verificaciones a realizar.
  2. Lanzas el ABAP Test Cockpit (ATC). Una herramienta que busca esas verificaciones en tu código.
  3. Ejecutas la SPDD y la SPAU. Estas son viejas conocidas, ¿no?
  4. Vuelves a lanzar el ABAP Test Cockpit (ATC). Ahora en el sistema destino.
  5. Corriges el código con las ABAP Development Tools (ADT). Hay una perspectiva especial para leer los resultados del ATC.

¿Demasiado resumido? Tenéis todo el detalle aquí: Custom Code Migration Guide for SAP S/4HANA 1809

Venga, que aún estamos a tiempo de hacer bien las cosas y evitar que dentro de 15 años, cuando nos encontremos con nuestro código, vuelva a aparecer en nuestra mente la misma pregunta… 😉

ABAP Development Tools (ADT): ¿qué es esto?

Si eres un desarrollador ABAP y te preguntas esto: tienes un problema.

Vale que sigas haciendo tus cositas con la SE80 (incluso con la SE38), pero al menos tienes qué saber qué es esto de las ABAP Development Tools (ADT).

¿Por qué? Pues entre otras cosas porque puede que en poco tiempo todo lo que tengas que hacer por ahí, como ahora mismo tienes que hacer, sí o sí, lo de los Core Data Services (CDS), por ejemplo.

Y si no sabes lo qué es eso de los CDS, el problema que tienes es muy gordo 😉

Una pista: Core Data Services: ¿esto qué es?

Una vez solventados tus problemas, sigamos leyendo…

Las ABAP Development Tools (ADT), eso que a ti te aparece tan nuevo, aparecieron en al año 2012, y no dejan de ser una serie de componentes que se le añaden a Eclipse, para poder trabajar en ABAP desde ese entorno.

Si no sabes lo que es Eclipse, me rindo… 😉

El caso es que Eclipse hasta hace unos meses iba sacando una nueva versión cada año y SAP iba adaptando las ADT a cada una de esas versiones, al poco tiempo.

Muchas veces no era necesario actualizar, pero sí recomendable. Además, solía haber unos meses de decalaje entre que aparecía la nueva versión de Eclipse y la correspondiente de las ADT.

Los nombre de las versiones de Eclipse tenían que ver con temas «espaciales» (Mars, Neon, Oxygen, Photon…) pero desde septiembre del año pasado ha cambiado la nomenclatura y ahora son mucho mas sosas (aunque más útiles), del tipo AAAA-MM, es decir, 2018-09, 2018-12, etc…

Aquí os dejo el enlace a la última: Eclipse IDE 2019-03

De todas formas, no suele ser conveniente estar a la última, sino a la penúltima, por lo que os comentaba del tiempo de decalaje. Por ejemplo, a día de hoy, aún no están disponibles las ADT para esa versión, como podéis ver en SAP Development Tools.

Aparte de la nomenclatura, ha cambiado la frecuencia y ahora habrá actualizaciones trimestrales, con lo que el ritmo de actualización de las ADT se tiene que adaptar a esto.

¿Y es imprescindible seguir este ciclo de actualizaciones? Imprescindible, imprescindible, no… sobre todo, si me paso el día haciendo batch-inputs y ALVs… si uso CDS y AMDPs empieza a ser recomendable… y si tengo pensado hacer algo en ABAP en Cloud, entonces sí, entonces será imprescindible, ya que el servidor ABAP en Cloud será actualizado de manera automática (cosas de la nube) y necesitaremos la versión adecuada de las ADT para poder trabajar contra él.

Y, al igual que anteriormente, podremos trabajar siempre con 2 versiones anteriores, lo que pasa es que antes ese tiempo era de 2 años y ahora el tiempo se reduce a 6 meses; se supone que para poder tener ciclos de innovación más cortos, aunque alguno puede argumentar que es para volvernos más locos de lo que estamos… 😉

PD.- Información extraída de este artículo: Important changes to the ABAP Development Tools (ADT) release cycle

Vamos, ¡a darle a la tecla!

Hace unos meses os contaba que alguien me había pedido consejo sobre qué hacer para escribir un blog y yo le dí esencialmente uno: EMPIEZA.

Parece que me hizo caso, ahora viene el siguiente consejo: CONTINÚA.

Aquí os dejo su blog y otros dos, también de reciente creación, y que creo que pueden aportar cosas interesantes:

¿Qué os podéis encontrar ahí? Pues sobre todo temas relacionados con programación SAP: SAP Cloud Platform, SAPUI5, Fiori, ABAP… todo desde el punto  de vista personal de cada uno de los autores.

¿Y qué gano yo con esto? Lo mismo que vosotros: todo lo que ellos quieran aportar, ¿no os parece suficiente?

Por eso, desde aquí animo a que todo el que crea que tiene algo que aportar, a que se lance, que escriba, mejor o peor, pero que lo haga… después sólo es cuestión de ir mejorando.

Si esperas a tener todo «perfecto», ya sabes lo que va a pasar: que nunca tendrás nada.

Ahora les toca a ellos, seguir dándole a la tecla… 😉

Desarrollo en SAP HANA: ¿a qué esperas?

Cuando apareció HANA, a finales de 2010, empezaron a circular mensajes apocalípticos, diciendo que, por ejemplo el BW y el ABAP iban a desaparecer.

A día de hoy, que alguien siga diciendo cosas así, te hace ver que vive anclado en el pasado. Lejos de desaparecer, precisamente esos 2 productos, tienen sus especificaciones propias para trabajar con HANA, como podéis ver en estos 2 cursos de openSAP:

Cursos, por cierto, que son de 2014 y 2016, por si alguien me va a salir con lo de «esto es muy nuevo»… y, por supuesto, ambas cosas han ido evolucionando, a lo largo de estos años.

HANA empezó siendo una base de datos en memoria pero ahora es mucho más que eso: es la plataforma de innovación de SAP.

Por cierto, que si alguien quiere saber cómo surgió HANA, os recomiendo que leáis la entrada que hay en la Wikipedia al respecto. ¿Alguien sabía que el «famoso» TREX era uno de sus componentes principales? Sí, ya sabemos que HANA tiene capacidades de búsqueda y análisis, etc… pero que el origen venga de ahí es, cuando menos, curioso. Aquí os dejo el enlace: SAP HANA Wikipedia – Historia

En cualquier caso, aunque es cierto que el ABAP no está muerto, también lo es que deberíamos conocer de qué va esto del desarrollo en HANA. Y no hablo sólo del ABAP para HANA, hablo del desarrollo nativo en HANA.

Sobre esto, como os podéis imaginar, también ha habido cursos en openSAP, desde el año 2013 concretamente. Este fue el primer curso: Introduction to Software Development on SAP HANA

Y el último, que está ahora mismo en marcha, es este: Software Development on SAP HANA (Update Q1/2019) 

Entre medias, ha habido varios, de actualizaciones de las distintas versiones, con sus correspondientes novedades y/o alguna repetición de un curso anterior.

Si eres de los pocos que empezaste con el desarrollo en HANA, cuando surgió todo esto y no te has actualizado, tienes un problema.

Si no te has puesto aún con esto y eres desarrollador en el mundo SAP, es probable que en un futuro inmediato tengas un problema.

Si todo ha cambiado en los últimos años, esto ha cambiado mucho. Aún conservando la idea base de que hay que meter toda la carga que podamos de nuestras aplicaciones a nivel base de datos, en lugar hacerlo sobre la propia aplicación, la forma de construir y gestionar las mismas, ha cambiado.

El cambio principal vino en el SPS11 de HANA 1.0, cuando pasamos de hablar del XS clásico (XSC) al XS Advanced (XSA). Aquí os dejo un vídeo en el que intentan explicar la nueva arquitectura:

¿Cuál es mi consejo? Pues que empecéis a mirar de qué va esto, con los cursos de openSAP y con la SAP HANA Academy.

Si empezaste con XSC, entérate de cómo va el tema de XSA. Si no has empezado, empieza directamente con XSA, aunque no estaría mal que te sonara cómo va lo de XSC, por si te encuentras alguna aplicación «antigua».

Por mi parte, me comprometo a escribir algún artículo con algún ejemplo básico.

¿No crees que va siendo hora de que te pongas con esto? 😉

SAP Cloud Platform ABAP Environment: ¿por dónde empezamos?

En los últimos días, he recibido algunas preguntas sobre el tema del ABAP en Cloud y creo que lo mejor para estar bien informados es ir a las fuentes.

Así que lo primero que os recomendaría es leer las Frequently Asked Questions, donde podéis encontrar respuestas a muchas de las preguntas que os estáis haciendo. Por ejemplo:

  • No estará disponible en Neo, sólo en Cloud Foundry.
  • Hay que estar familiarizado con cosas como Eclipse, Git, APIs¡adiós SE80!
  • En un principio, se utilizará para extender la funcionalidad de S/4HANA Cloud, aunque técnicamente está preparado para hacerlo con cualquier producto.
  • ¿Me podré llevar mis «zetas» al cloud? Si los has hecho de manera óptima y siguiendo las mejores prácticas, puede que sí. Es decir: NO 😉

Y una de las cosas que más nos preocupan: «¿pero esto cuánto vale?». Bueno, esto lo podéis ver en la página del producto: SAP Cloud Platform, ABAP environment.

De momento, parece que no está disponible para las cuentas trial, se puede adquirir en modo suscripción (a partir de 1.800 €/mes) o en modo créditos (pago por hora).

Personalmente, podría probar la opción de créditos, siempre que tenga el control para apagar/encender el sistema, como en SAP Cloud Appliance Library, aunque esto no es exactamente lo mismo, ya que esto se trata más de una plataforma (PaaS) que de una infraestructura (IaaS) en sí.

En cualquier caso, dejemos que pasen unas semanas, a ver si sale alguna otra opción, que sería lo suyo, como en muchos de los servicios de SAP Cloud Platform.

Mientras, os dejo con un vídeo de presentación del entorno:


¿Podremos jugar con esto sin tener que pasar por caja? 😉

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… 😉

SAP TechEd 2018 Las Vegas (II)

Sigamos con lo empezado el viernes…

¿Aún sigues con el Portal? Vete pensando en migrar a SAP Cloud Portal

 

3 aspectos claves para lo que viene: colaborar, colaborar y colaborar.

 

«Es que SAP es alemán y es muy rígido»… ¿seguro?

 

Para desarrollar microservicios, gestionar eventos, procesos recurrentes…

 

Los transportes de SAP están muy bien, pero yo que tú iría enterándome de cómo va eso del Git…

 

El ABAP va evolucionando, como no puede ser de otra forma.

 

Antes de cambiar tu software, deberías cambiar muchas cosas… ¿o no hemos aprendido nada en los últimos años?

El servicio de transporte en la nube,  en beta, pero aquí está.

 

Nueva versión de SAP Data Hub.

 

Últimas novedades de Mendix.

 

SAP soporta Quorum, la plataforma Blockchain basada en Ethereum que creo JP Morgan

 

Si con esa guía no os vale para saber cómo crear un Portal freestyle, siempre podéis mirar en el blog de Jorge García, que os lo cuenta en castellano.

Björn Goerke nos habla de SAP Cloud Platform en este artículo.

Por cierto, que he echado de menos el numerito de este hombre en el SAP TechEd de este año, tras los que hizo de Marte, Regreso al Futuro y Star Trek en el pasado… ¿se habrá cansado?

Me da que no, que algo está maquinando… 😉

SAP Cloud Platform ABAP Environment: que viene el coco

Ya os dije hace tiempo que el ABAP no estaba muerto y que SAP estaba trabajando en la forma de llevárselo a la nube.

Este ha sido uno de los mayores anuncios en la primera jornada del SAP TechEd: SAP Delivers New Cloud-Native Services, SAP Cloud Platform, ABAP Environment, to Help Customers Become Intelligent Enterprises

En el artículo, hace referencia al entorno ABAP en SAP Cloud Platfom y al modelo de programación de aplicaciones del que os hablé hace unos días en el artículo: Application Programming Model: ¿esto de qué va?

Además habla de nuevos servicios que estarán disponibles en SAP Cloud Platform a lo largo de 2019:

  • SAP Cloud Platform Enterprise Messaging: que nos permitirá automatizar nuestros procesos mediante la gestión de eventos y mensajes. Algo del tipo IFTTT
  • SAP Cloud Platform Backend: para poner a disposición nuestros datos para el consumo en tiempo real, mediante el uso de APIs y servicios. Habrá que ver cómo encaja esto con los servicios ya existentes como el API Management
  • SAP Cloud Platform Functions: podremos crear, implementar y ejecutar microservicios desde un entorno centralizado.

Podéis ver la charla inaugural (ya sé que queda más profesional lo de «keynote») completa en la que Bernd Leukert nos cuenta de qué va esto de «la empresa inteligente»:

Es algo más de una horita, pero seguro que no tenéis nada mejor que hacer… 😉

En cualquier caso, esta entrada me sirve para recordarte que si eres un desarrollador ABAP no puedes ir por la vida sin saber qué es SAP Cloud Platform… y diría más, no sólo un desarrollador, sino cualquiera que esté metido en este mundo.

No me vale con ponerlo en el powerpoint  de turno y soltar cuatro generalidades, hablo de entender lo que se dice. Sé que pido imposibles, pero por pedir…

Y lo malo de todo esto es que lo que sabías hace 1 año, probablemente, te sirva de muy poco hoy. La evolución es continua y toca estar actualizándose continuamente.

Así que aunque el ABAP no esté muerto, puede que tú si lo estés, aunque no te des cuenta…

No es por asustar, pero llevan tiempo avisándonos de que viene el coco… 😉

ABAP en SAP Cloud Platform: ahora sí que sí

Como ya anunciaron hace casi un año, ya es posible desarrollar en SAP Cloud Platform con ABAP.

De momento, lo podemos considera un MVP (mínimo producto viable), tal y como nos cuenta Harald Kuck en este artículo: SAP Cloud Platform ABAP Environment

Tal y como mencionan en el artículo debemos considerar esto como una Plataforma como Servicio (PaaS), ya que lo que realmente tenemos como novedoso es que podemos utilizar ABAP como lenguaje de programación dentro del entorno de desarrollo de SAP Cloud Platform.

Evidentemente, no es el mismo ABAP al que estamos acostumbrados, tiene sus limitaciones, que irán mejorando con el tiempo, pero debemos ir acostumbrándonos a escuchar este término ABAP PaaS.

La versión actual está enfocada a las extensiones de S/4HANA Cloud, pero se está trabajando ya en las conexiones con los sistemas on-premise y se pueden también desarrollar y exponer servicios vía OData y HTTP.

Os recomiendo que leáis con detenimiento el artículo, ya que tiene cosas muy interesantes y menciona una serie de temas que se dan por supuestos: saber trabajar con las ABAP Development Tools (ADT), conocer lo qué es Cloud Foundry, saber lo qué es Git

Creo que es hora de ponerse las pilas y dejar de hacer batch-inputs y ALVs… 😉

Se acaba 2017

Casi sin darnos cuenta, se nos va un año más y nos toca hacer balance de lo bueno y malo, como dirían aquellos.

Por mi parte, aquí os dejo un par de recopilaciones de algunos de los artículos que he escrito a lo largo del año: una para gente normal y otra para «saperos» 😉

He seleccionado uno por mes y puede que no estén todos los que son, pero si son todos los que están.

La de la gente normal:

Enero Las personas se crean y se transforman… o se destruyen
Febrero Storytelling: que no te cuenten cuentos
Marzo ¡Mamá, quiero ser artista!
Abril Consigue todo lo que quieras, trabajando sin esfuerzo
Mayo Nissan, los percebes y la innovación
Junio La tormenta perfecta de la transformación digital
Julio Innovar no es sólo inventar
Agosto Cómo saber cuál es el puesto ideal de cada uno en una consultora con una sola pregunta
Septiembre ¿Me parezco más a Brad Pitt o a Mariano Rajoy?
Octubre Las empresas confían en empresas y las personas confían en personas
Noviembre El error te ayuda a aprender
Diciembre Mi empresa no me forma: tenemos un problema

La de «los otros»:

Enero SAP Business Client 6.0: ¿qué es?
Febrero SAP Screen Personas te ayuda a que SAP no parezca SAP
Marzo SAP SuccessFactors Expert Self Service te facilita la vida
Abril S/4HANA: ¿qué va a pasar con SAP HCM?
Mayo SAP Leonardo no sólo es IoT
Junio Cloud Foundry en SAP Cloud Platform
Julio SAP Best Practices Explorer te puede ayudar
Agosto El ABAP no está muerto… ¿y tú?
Septiembre ¿Dónde puedo aprender SAP?
Octubre Viaje estelar con SAP
Noviembre SAP Fiori Launchpad: ¿en tu casa o en la mía?
Diciembre SAP Analytics Cloud: la toma de decisiones se sube a la nube

Vamos, ¡que nos dan las uvas! 😉