Blog
El lenguaje de programación SAP ABAP: preguntas y respuestas
- 09/06/2020
- Escrito por: Grazia Masulli
- Categoría: SAP ABAP
¿Qué es el ABAP?
ABAP es el lenguaje propio creado por SAP (la empresa alemana) para desarrollar aplicaciones y adaptar los productos SAP a las necesidades específicas de la empresa. Por ejemplo, más del 80% de SAP R/3 se escribió con ABAP.
ABAP es un lenguaje de “alto nivel”, es decir, es independiente de la estructura del ordenador en el que se ejecuta el programa y es relativamente comprensible, ya que tiene similitudes con los lenguajes humanos. Estos lenguajes de alto nivel deben ser “interpretados” (en la práctica, traducidos a instrucciones de lenguaje de máquina) por los ordenadores para poder ser ejecutados.
ABAP era originalmente una abreviatura de Allgemeiner Berichts-Aufbereitungs-Prozessor (procesador general de informes), un nombre que delata la razón por la que fue concebido. Permitió a los usuarios crear informes “a medida” necesarios para sus actividades.
Más tarde se rebautizó como “Advanced Business Application Programming” (Programación avanzada de aplicaciones empresariales), un nombre que refleja mejor sus nuevas funciones.
Con SAP ABAP se pueden crear nuevas transacciones para SAP ERP de forma mucho más fácil, y también ampliar las transacciones ya existentes de forma que sean más funcionales.
¿Existen buenas razones para aprender a utilizar ABAP?
La razón principal es que hay decenas de miles de empresas que trabajan con SAP. Estas empresas a menudo necesitan arreglar un error, personalizar un proceso, etc., por lo que existe una considerable demanda de especialistas en ABAP, los llamados “consultores técnicos”.
Normalmente son una categoría diferente a la de los “consultores funcionales”, que son expertos en procesos de negocio pero pueden no saber programar en ABAP.
Actualmente hay casi 5 millones de desarrolladores ABAP registrados.
¿Qué pinta tiene el código escrito en ABAP?
El código es bastante legible si estás familiarizado con la programación. Cada línea termina con un punto y las estructuras son fácilmente reconocibles.
(WHEN…IF…ELSE…).
A continuación incluyo un ejemplo para que te hagas una idea de cómo es.
REPORT demo_list_window NO STANDARD PAGE HEADING.
START-OF-SELECTION.
SET PF-STATUS ‘BASIC’.
WRITE ‘Select line for a demonstration of windows’.
AT USER-COMMAND.
CASE sy-ucomm.
WHEN ‘SELE’.
IF sy-lsind = 1.
SET PF-STATUS ‘DIALOG’.
SET TITLEBAR ‘WI1’.
WINDOW STARTING AT 5 3 ENDING AT 40 10.
WRITE ‘Select line for a second window’.
ELSEIF sy-lsind = 2.
SET PF-STATUS ‘DIALOG’ EXCLUDING ‘SELE’.
SET TITLEBAR ‘WI2’.
WINDOW STARTING AT 45 10 ENDING AT 60 12.
WRITE ‘Last window’.
ENDIF.
ENDCASE.
¿Que es el ABAP Workbench (“banco de trabajo” de ABAP)?
SAP ABAP Workbench es un conjunto de herramientas para trabajar con ABAP.
Consta de los siguientes componentes:
- ABAP Editor: usado para mantener programas.
- ABAP Dictionary: usado para mantener los objetos del diccionario.
- Repository Browser: usado para estructura jerárquica de los componentes de un paquete.
- Menú Painter: para la creación de gráficas de usuario como barras de menú o de herramientas.
- Screen Painter: se usa en los programas en línea para mantener los componentes en pantalla.
- Test and Analysis Tools: tales como Syntax Check y Debugger.
- Function Builder: con esto se puede crear y dársele mantenimiento a grupos y módulos de funciones.
- Repository Information System: información sobre modelos de datos, estructuras de tablas, programas y funciones y tipos de diccionario.
- Data modeler: para modelado gráfico.
- Workbench Organizer: gestiona diferentes proyectos de desarrollo y su distribución.
¿Es difícil programar en ABAP?
La respuesta depende obviamente de tu punto de partida: si estás familiarizado con la programación orientada a objetos y conceptos como tipos de datos, condiciones, bucles, etc., si tienes experiencia con Java o C++, etc.
Dicho esto, existe cierto consenso en el sector de que se trata de un lenguaje fácil de utilizar, y que la dificultad radica más bien en la necesidad de comprender y traducir en código el funcionamiento de un proceso empresarial.
¿Cómo practicar con ABAP?
Puedes utilizar el editor ABAP de SAP siguiendo esta ruta en la GUI: Herramientas > ABAP Workbench > Development > ABAP Editor.
Aunque debes recordar que la mayoría de los usuarios finales no están autorizados, por lo cual deberás tener privilegios elevados. También deberías aprender con un sistema de prueba, ya que hacerlo en un sistema en producción puede ser desastroso.
Puedes intentar instalar el llamado mini SAP, que es básicamente un SAP sin módulos.
¿Tiene futuro el ABAP? ¿Merece la pena estudiar ABAP?
Definitivamente, si estás interesado en trabajar en el sector de la informática con SAP es ABAP puede ser un punto fuerte en tu CV – por el mantenimiento del código existente y también por el hecho de que la próxima generación de software ERP de SAP (S/4HANA) sigue estando basada en ABAP.
En el mercado laboral, los programadores que saben utilizar ABAP desempeñan diferentes tareas como consultores o programadores externos, y también como parte de la plantilla de la empresa. Así que esto ha hecho que crezca el interés en formarse en este lenguaje de programación.
También ayuda el hecho de que la cuota de mercado de SAP haya aumentado considerablemente en las últimas décadas: hay decenas de miles de empresas que trabajan con SAP, por lo cual, crece el número en la demanda de especialistas en ABAP. Existen casi 5 millones de desarrolladores registrados en ABAP.
Dicho esto, también hay un movimiento de SAP en la dirección opuesta: la de reducir el código “a medida” y aumentar en lo posible la aplicación de soluciones estándar basadas en las “Best Practices” (mejores prácticas).
Dado que la principal razón de ser de ABAP es la personalización del ERP, esta tendencia podría provocar un descenso de la demanda en el futuro.