ABAP Machine
ABAP es un lenguaje de programación que se utiliza para desarrollar aplicaciones empresariales en el entorno de software de SAP.

¿Qué es ABAP?

El lenguaje de programación ABAP  ( Advanced Business Application Programming ), es el lenguaje de cuarta generación que utiliza SAP para el desarrollo de los aplicativos de su ERP. Además de tener su funcionalidad para crear interfaces de usuario dentro del entorno SAP, este lenguaje se perfila mayormente como un lenguaje Back End. Es decir, es un excelente medio para brindar los servicios necesarios a un cliente que maneje la interacción con el usuario, dejando a ABAP la centralización, gestión de las funciones de la lógica de negocio y el acceso a la base datos.

Versiones ABAP

ABAP SAP

Tutoriales, lecciones y cursos sobre la programación clásica de aplicativos ABAP. Ciertamente, se utilizan en el ERP de SAP. Ideales para desarrolladores o consultores que buscan aprender la programación ABAP desde cero.

ABAP 7.4

Artículos y entradas pensados para programadores que ya han tenido acercamiento a los principales temas ABAP y buscan aprender la nueva sintaxis del lenguaje.

ABAP
On HANA

Temas pensados para desarrolladores que ya tienen conocimiento solido en el lenguaje de programación y buscan desarrollar con el motor de base de datos HANA. Además, de integrarse nuevos objetos como las CDS o los AMDP procedures.

ABAP
On Cloud

Tutoriales dirigidos a consultores con conocimiento avanzado en ABAP que poseen una comprensión completa de los objetos involucrados al momento de desarrollar en SAP.

¿Qué es la programación ABAP?

Hay dos tipos de programas, los Reports y el Module Pool. Ciertamente, un reporte representa una solución simple donde hay un proceso bastante sencillo, compuesto de una pantalla de selección, un proceso y una salida. Sin embargo, el Module Pool se compone de un conjunto de pantallas interactuando entre si por medio de un flujo lógico.

Para ejecutar las aplicaciones del SAP GUI ( Graphical User interface ) se hace uso de la transacciones, las cuales son códigos que se ingresan dentro del sistema y estos le permiten identificar qué programa ejecutar. Por ejemplo, en caso de que queramos crear una factura, ingresamos en la barra de transacción el código VF01 e internamente SAP ejecutará el programa SAPMV60A.

ABAP Desde Cero

Para aprender SAP ABAP de cero a experto, te recomendamos seguir el siguiente temario estructurado, el cual abarca desde los conceptos básicos hasta algunos de los más avanzados. A continuación, te dejamos los principales temas de SAP ABAP que debes aprender y dominar. Adicional, puedes realizar nuestro roadmap Modo Máquina que explica cada uno de estos puntos:

ABAP Básico:

ABAP Nivel Intermedio:

Nivel ABAP Avanzado:

  • SAP BAPI y SAP RFC: Conceptos, Creación y Uso
  • SAP BADI y SAP User Exits
  • SAP Enhancement Framework
  • Web Services
    • WSDL
    • IDOC
    • ODATA
  • SAP Web Dynpro
  • SAP Fiori Elements
  • SAP HANA
    • Conceptos básicos
    • Creación y Uso de Vistas CDS
    • Procedimientos AMDP
    • Conexión ADBC
    • ABAP RAP

Cada uno de estos niveles puede llevar varias semanas o incluso meses de estudio y práctica. Sin embargo, es importante que, a medida que se evolucione con el temario, se puedan realizar ejercicios prácticos y proyectos de implementación para afianzar los conocimientos. Además, es recomendable seguir recursos de formación en línea, tutoriales y materiales educativos de SAP y, muy importante, los de la comunidad de desarrolladores ABAP.

Programación ABAP / Tutorial ABAP PDF

Si estás buscando un curso ABAP o algún tutorial paso a paso donde aprender desde cero, a continuación, te dejo un manual con algunos programas que te puedan ayudar a empezar a familiarizarte con la sintaxis básica. Sin embargo, debo mencionarte que los ejercicios son antiguos, por lo cual no contemplan las sentencias con la nueva sintaxis de ABAP.


Aprende a Crear Tu Primera Aplicación FIORI


Características del lenguaje de programación ABAP

SAP ABAP es un lenguaje de cuarta generación. Es decir, es un lenguaje con sentencias prefabricadas que emulan al lenguaje inglés, alejándose un poco de la programación a bajo nivel y brindando un completo acceso a las bases de datos.

Contamos con diversas herramientas que nos permiten construir diversos tipos de objetos pertenecientes al repositorio. Además, SAP proporciona estas herramientas de forma organizada a través de transacciones, esto nos ayuda a poder identificar claramente que tipo de objeto queremos construir. Algunas de ellas son:

  • Editor de código fuente, el cual puede ser ejecutado con la transacción SE38.
  • Tiene disponible un diccionario de base de datos, este nos permite construir objetos cómo estructuras, elementos de datos, ayudas de búsqueda, tablas y tipos de datos especializados, entre otros.
  • Creador de pantallas o Layout Painter, con esta herramienta podrás construir interfaces de usuario.
  • Constructor de funciones con la transacción SE37.
  • Constructor de excepciones, clases e interfaces con la transacción SE24.

Ventajas de la programación ABAP

  • Sentencias de programación que engloban diversas instrucciones
  • Tiempos cortos al momento de hacer la codificación
  • Curva empinada de aprendizaje ( se aprende mucho en poco tiempo )
  • Baja escritura de código

Desventajas de la programación ABAP

  • Poca flexibilidad a comparación de un lenguaje de bajo nivel
  • Alta dependencia de las librerías internas de SAP
  • Combina diversos paradigmas, lo cual lo vuelve confuso al momento de leer diversos programas.

Paradigmas de programación en SAP ABAP

A través del tiempo, el lenguaje de programación de SAP ha integrado el paradigma ABAP orientado a objetos, empujando a una mayor modularización de código y una arquitectura más robusta. Ciertamente, soporta la construcción de clases e interfaces, así como la creación de rutinas y funciones, permitiendo a la programación estructurada y en objetos trabajar conjuntamente sin ningún problema.

Ejemplo Programa ABAP

En el programa anterior se hace una declaración de variables con la sentencia DATA; una es una tabla interna y la otra es una estructura. Posteriormente, hacemos una selección a la base de datos con la sentencia SELECT a la tabla scarr y almacenamos los registros en la variable gt_scarr. Por último, recorremos la tabla gt_scarr con la sentencia LOOP, almacenamos cada registro en la variable gs_scarr y para cada registro escribimos en pantalla las columnas recuperadas con la sentencia WRITE.

Principales capas del AS

El lenguaje ABAP es lo que nos permite interactuar con el AS ( Aplicattion Server ), el cual es un componente indispensable en SAP NetWeaver. Es decir, necesitamos de una arquitectura que nos permita interactuar entre las siguiente capas:

Capa de Base de Datos

desarrollador sap

Bases de datos donde se encuentran almacenados los conjuntos de datos. Esta capa se instala en un servidor dedicado a la gestión de base de datos.

Capa de Aplicación

programación en sap

Es la maquina virtual ABAP, donde se ejecutan los programas. Ciertamente, esta capa puede ser distribuida por diferentes servidores de aplicación, generalmente instanciados en diferentes computadoras donde no es necesario que los sistemas operativos sean los mismos. Se comunica con las otras dos capas utilizando el message server

Capa de Presentación

lenguaje sap

Se refiere a la interfaz de usuario, aquí es donde se cargan las pantallas SAP, con las cuales el usuario estará interactuando. Adicional, esta capa es distribuida a todas las computadoras que puedan ejecutar tanto el SAP UI, como algún navegador WEB.

Lecciones y Tutorías De La Programación ABAP

Construimos tutorías que abarquen temas indispensables para el aprendizaje del desarrollo en SAP. Ciertamente, tratamos de incluir guías prácticas para implementar soluciones que se encuentren tanto del lado de ECC como en S4HANA. Además, buscamos ir empezando a construir una base de conocimiento, documentando nuestra experiencia en el acercamiento a nuevas tecnologías como ABAP en la nube.

Puedes empezar con algunas de las siguiente entradas o ir al menú de navegación que se encuentra en la parte de arriba, donde puedes elegir los temas acerca de programación que más te llamen la atención.

Te puede interesar

Aprende a crear un reporte SAP ALV

SAP Documentación Oficial

Para más información sobre las características y acerca de su sintaxis, puedes visitar el siguiente enlace con documentación oficial SAP.