
El lenguaje de programación ABAP
¿Qué es ABAP?
Es un lenguaje de programación de cuarta generación, propiedad de SAP que se utiliza para programar en sus productos SAP ECC y SAP S/4HANA
Sus siglas significan Advanced Business Application Programming, es decir Programación Avanzada de Aplicaciones de Negocio, aunque también es conocido como SAP ABAP
Es un lenguaje de programación de muy alto nivel, fácil de leer y se aprende rápidamente.
su negocio que no esté contemplada en el sistema estándar.
Cuando la funcionalidad que ofrece el sistema estándar no se ajuste completamente a las necesidades del cliente. Para resolver estas situaciones existe un entorno completo de desarrollo de nuevas aplicaciones integradas en el sistema SAP
Este entorno, que SAP denomina ABAP Development Workbench o Entorno de Desarrollo ABAP, se compone de una serie de herramientas integradas, que permiten crear desarrollos nuevos en poco tiempo.
El lenguaje de programación ABAP se caracteriza por su total integración en el sistema SAP.
Podemos decir que ABAP es un lenguaje de programación estructurado
La programación estructurada es un paradigma de programación orientado a mejorar la claridad, la calidad y el tiempo de desarrollo de un programa de computación, en el cual solo se puede recurrir únicamente a subrutinas y tres estructuras básicas que son las siguientes
1. Secuencia: es el orden en que las instrucciones deben ser ejecutadas
2. Instrucción Condicional o selección: es la posibilidad de poder elegir entre las instrucciones y la decisión se tomará en base a una evaluación, a la cual se le llama condición
3. Iteración: es la repetición de una instrucción o grupo de instrucciones mientras se cumple una condición,
También se encuentra orientado a eventos, son de la secuencia de instrucción depende de una condición o evento.
Un poco de Historia de ABAP.
Creada en los años 80 para elaborar reportes en SAP R/2, era una mezcla de los lenguajes de programación COBOL y SQL. Fue pensada para que los usuarios finales de SAP pudieran manipular la información, pero con el tiempo se necesitó de programadores experimentados.
ABAP se mantuvo para las versiones clientes/servidor de SAP R/3, en las que las básicas del sistema SAP no estaban en lenguaje ABAP.
En las ultimas versiones de ABAP se incorporaron las últimas innovaciones tecnológicas de los lenguajes de programación modernos, inclusive se dispone la posibilidad de programar en otros entornos de desarrollo deferentes al ABAP Development Workbench.
Las principales fortalezas de ABAP.
Los puntos fuertes que presenta ABAP son los siguientes:
Ø Utiliza sentencias de OPEN SQL para conectarse con prácticamente cualquier base de datos: si bien a partir de la versión SAP S/4HANA solo trabaja con SAP HANA como base de datos, en las versiones anteriores del sistema SAP, se utilizaban otras bases de datos, tal como Oracle y otras más.
Ø Es un lenguaje de programación estructurado, que también puede ser programado orientado a eventos y también puede programarse utilizando la orientación a objetos: tomando de cada uno de estos paradigmas las mejores prácticas.
Ø Cuenta con miles de funciones para el manejo de archivos, bases de datos, fechas, caracteres, entre otros: de esta forma operaciones complejas se vuelven simples
Ø Permite conexiones RFC para conectar a los sistemas SAP con cualquier otro sistema o lenguaje de programación: mediante estas conexiones podemos conectar nuestro sistema SAP con otros sistemas SAP o no SAP y a ABAP con otros lenguajes tal como JAVA, etc.
Ø Permite la creación de aplicaciones multiidiomas.
Ø Posee una ayuda muy potente sobre la sintaxis.
Ø Permite la realización de reportes en forma rápida y sencilla.
Las herramientas propias de ABAP
ABAP posee algunas herramientas que son propias del lenguaje.
Ø El diccionario de datos ABAP (SE11)
Ø El editor del programa (SE38 y SE80)
Ø El Screen Painter (SE51)
Ø El entorno de depuración (SE38)
Ø Otras herramientas: existe una gran variedad de herramientas cuyo uso no es tan frecuente como el menú Painter, el análisis de tiempo de ejecución, el Class Builder, etc.
Las modificaciones al sistema estándar de SAP
Para que los usuarios puedan adaptar el sistema a sus propias necesidades, SAP deja espacios en el sistema estándar de modo que los usuarios puedan satisfacer sus requerimientos, agregando en estos huecos el código ABAP necesario para ello. A estos huecos que existen en el sistema SAP, se los denominada Ampliaciones, ya que con ellos se amplía o extiende las funcionalidades del sistema estándar. Las principales ampliaciones que existen en SAP son las siguientes:
Ø Customer Exits (Transacciones EMOD y SMOD)
Ø Field Exits (Transacciones CMOD y PRFB)
Ø BADIS (Business Adss-Ins, transaccione SE18 y SE19)
Ø Enhancements
Ø Estructura Append.
Los consultores SAP
Un consultor SAP puede definirse como un profesional que ofrece servicios para la implementación, optimización y ejecución de los productos SAP y otros sistemas, que mediante interfaz con SAP aseguran el máximo aprovechamiento de los conocimientos y las herramientas de tecnología en beneficio de la compañía.
El consultor SAP adapta el sistema a lo que cada empresa quiere y necesita, Mediante su labor, las empresas obtienen información valiosa para la toma de decisiones y datos específicos para los agentes interesados en ellas.
Existen tres tipos de consultores.
1. Consultor Funcional.
2. Consultor SAP Basis
3. Consultor Tecnico.
El ciclo de trabajo de un Consultor ABAP
La interacción de los consultores ABAP con los consultores funcionales de SAP y como es la metodología de trabajo más comúnmente utilizada en el ciclo de vida de desarrollo de SAP: Cada empresa posee su propia metodología de trabajo, esta metodología afecta directamente la manera en que la información fluye entre los distintos niveles jerárquicos de la empresa. Si se encuentra bien implementada, mejora el control de los costos de los requerimientos de los usuarios antes de llevarlas a cabo. Aunque en primera instancia pudiera parecer un tanto burocrática, la misma garantiza la calidad del producto final y la organización del trabajo a realizar, ya que "en teoría" los tiempos han sido calculados con antelación, no teniendo que trabajar a las apuradas o con demasiado tiempo ocioso improductivo.
1. El requerimiento del cliente al consultor funcional.
2. La elaboración del Diseño Funcional.
3. La elaboración del diseño Técnico y la Programación.