![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP El lenguaje de programación ABAP
ABAP El lenguaje de programación ABAP
![ABAP El lenguaje de programación ABAP ABAP El lenguaje de programación ABAP](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/101.jpg)
¿Q es ABAP?
Es un lenguaje de programacion de cuarta generacion (propirdad de sap utilisada en SAP ECC como en SAP S/4HANA) sua siglas sicnifican Advanced Busimess Application Programming. es desir Programación Avansada de Aplicaciones de Negocio, auque tambien es conocido como SAP ABAP. Siendo un lenguage de muy alto nivel, facil de leer y se aprende rapidamente.
Pero siempre existe la pocibilidad que el cliente que tenga alguna nesecidad tan especifica de su negocio que no esté contemplada en el sistema estandar tal cual SAP lo proporciona a las empresas, es desir recien salido de fabrica.
tambien puede darse el caso que la funcionalidad que ofrece el sistema estandar no se ajuste conpletamente a las necesidades del cliente, (para resolver esta situacion existe un entorno completo de desarrollo de nuevas aplicaciones integradas en SAP).
ABAP Development Workbench o Entorno de Desarrollo ABAP, se compone de una serie de herramients, permitiendo crear desarrollos nuevos en poco tiempo. podemos decir que es un lenguaje estructurado.
La programacion estructurada es un paradigma orientado a mejorar la claridad, la calidad y el tiempo de desarrollo de un programa de computacion, que surje a fines de los años 70, solo se puede recurrir únicamente subrutinas y tres estructuras bácicas,
- Secuencias: es el orden que seben ser ejecutadas
- Instrucciones Condiciones o Selecciones: es la pocibilidad de elegir entre dos intrucciones
- Iteraciones:es la repeticion de una instruccion o grupo de intruccion mientras se cumple una condicion
ABAP tambien es un lenguaje orientado a eventos
La progracmacion orientada a eventos es un paradigma de programacin en el que la estructura y la ejecucion de los programas va determinando por los sucesos o acciones que ocurren en el sistema.( difinidos por el usuario o por el propio sistema)
Un poco de hitoria de ABAP
ABAP fue desarrollado por SAP como un lenguaje de programación para elaborar reportes para el sistema SAP R/2 en los años 80, en ese momento era un lenguaje de programación que era una mezcla entre COBOL y el SQL.
En 1992 fue lanza al mercado el lenguaje de desarrollo para la versión cliente-servidor de SAP R/3, en que casi todo el sistema, menos las llamadas al sistema bácas estaban escritas ABAP.
En 1999 con el lanzamiento dale vercion 4.6 de R/3, SAP lanzo una extencion orientada a objetos denominada ABAP Objects. (la incorporación de los objetos ABAP no comvirtió ABAP en un lenguaje orientado a objetos, sino que permite que determinadas funcionalidades pueden ser pensadas y sesarrolladas utilizando POO).
Las principales fortalezas de ABAP
Exiten muchos puntos fuerte que presenta ABAP como lengueje de programación por lo tanto mencionamos los principales:
- Utilizar sentencias de OPEN SQL para conectarse con practicamente cualquir base de datos
- Es un lenguaje de programación estructurado, que tambien puede ser programado orientado a eventos y tambien puede programarce utilizando la orientación de eventos
- Cuenta con miles de funciones para el manejo de archivos, bases de datos, Fechas, caracteres, entre otros
- Permite conecciones RFC para cocnectar a los sistemas SAP con cualquier otro sistema o lenguaje de programación
- Permite la creación de aplicaciones multidioma
- Posee una ayuda muy potente sobre la sintaxis y la semantica del lenguaje
- Permite la realización de reportes en forma rapida y sencilla
Las herramientas propias de ABAP
ABAP posee algunas herramientas que son propias del lenguaje y que no están presenta en otros entornos de desarrollo. las mas importantes son:
- El Diccionario de Datos ABAP (Transaccion SE11):es utilizada para la administración de todas las definiciones de datos utilisados en SAP.
- El editor de programas (Transaciones SE38 y SE80): ambas transacciones estandares son utilizadas para el desarrollo de aplicaciones o programas ABAR dentro del sistema SAP
- El Sceeen Painter (Transaccion SE51): es utilizada para la creacion de las denominadas pantallas o dynpros, que es el termino propio de SAP.
- El Entorno de depuracion (Dentro de la transaccion SE38): la ejecucion por bloques, ademas nos permire hacer todo esto viendo el codigo fuente del programa y la localizacion de lugar del error exacta
- Otras herramientas: exite una gran variedad de herramientas adicionales como el Menu Painter, el analisis del tiempo de ejecucion, el Class Builder, el Funcion Builder, etc.
Las modificaciones al sistema estandar SAP
SAP deja espacios en el sistena estandar para que los usuarios puedan sastifacer requerimientos, agregando código ABAP nesesarios para ellos.
a estos huecos que existen en el sistema SAP, se los denomina Ampliaciones, de esta forma se amplia o extiende las funcionalidades del sistema estandar.
Las principales ampliaciones que existen en SAP son:
- Costomer Exits (Transacciones CMOD y SMOD): son utilizadas para la administracion de las denominaciones ampliaciones de usuario del sistema SAP.
- Field Exits (transacción CMOD y escribir PRFB): tambien llamadas aplicaciones de campo, son validaciones de los elementos de datos asociados a campo de pantalla de SAP.
- BADIS (Busunes Adds-Ins, Transacciones SE18 y SE19): so ulilizadas para la definición y la declaración de las denomicaciones BADIS en el sistema SAP.
- Enhancements (Desde la misma transacción SE38): son ampliaciones al código estándar de SAP mediante las cuales podemos agregar funcionalidades determinadas.
- Estructuras Append ( Desde misma transacción SE11): son objotos de ABAP para agregar datos o configuraciones adicionales a las tablas base de datos y estructuras de SAP.
Los consultores SAP
Un consultor SAP puede definirse como un profesional que ofrece servicios para la implementación, obptimizacion y ejecución de los productos SAP y otros sistemas .
El consultor SAP adapta el sistema a lo que cada empresa quiere y necesita
Dentro del ecosistema SAP, existen basicamente 3 consultores, son:
- Consultor Funcional: los consultores Funcionales de SAP son aquellos profecionales que tienen el conocimiento de un área funcional o módulo del sistema y estan encargados de ayudar a las empresas a configurar sistema SAP, brindar asesoramienta para que las empresas logren al maximo de sus recursos al momento de tomar desiciones y luego formar al personal asignado por la emprasa para poder desempeñarse sin su ayuda costante.
- Consultor Baisi: tienencomo pricipal resposabilidad la administración del entorno SAP asegurando la integridad del sistema, tarea de mantenimiento, actualizaciones y generación de backups con el fin de tener un respaldo de la informacion. se encarga gestionar la plataforma operativa SAP Netweaver, para que esta funcione siempre correctamente optimizando recursos en el sistema.
- Consultor Tecnico: en general nos referimos a los programadores ABAP, pero tambien podriamos estar hablando de otros perfiles dependiendo la tecnologia utilizada
Dentro del mundo ABAP, cuando hablamos de consultor Técnico ABAP, consultor ABAP, Desarrollador ABAP, Programador ABAP o ABAPER nos estamos refiriendo a lo mismo.
No solo realizan la programación en el lenguaje ABAP, sino que tambien se encarga de confeccioinar la documentacion, realizae pruebas, asesorar a los consultores Funcionales en cuestion Técnicas, optimizar el sistema, entre otras cuestiones, es por ello que el nombre Programador ABAP se quede corto.
El ciclo de trabajo de un consultor ABAP
El gerente de ventas cita a un consultor Funcional SAP, al cual el gerente le comenta sus necesidades de informacion.
ejemple: necesitamos un reporte de ventas que nos sirva para medi la productividad de nuestros vendedores a los largo del mas.
Luego el consultor Funcional analizará el pedido del cliente y evaluara si se puede realizar "parametrizando" el sistema SAP, para el caso de nuestro reporte de venta, existe la posibilidad que SAP ya nos proporcione un reporte estandar de ventas.
Si se puede realizar la adaptacion mediante una "parametrizacion", o si SAP nos brinda dicho reporte y el mismo satisface las necesidades, entonces será cuetion utilizarlo y nuestro trabajo habra terminado.
Lo que suele suceder en cambio, es que el requisito del cliente exsede a un parametrizacion o un reporte ya existente y es alli cuando el consultar Funcional y el consultar Técnico, el ABAPER para nuestro caso, y se ponen a trabajar en equipo.
Las elabaraciones del Diseño Funcional:
La forma mas basica de realizar este trabajo Funcional y Técnico en conjunto, es que el consultor Funcional, lo inicie elaborando una documentacion llamada "Diseño Funcional", en este documento se le indica al consultor Técnico entre otros cuestiones lo siguiente:
- Si se trata de hacer un programa nuevo o modificar un programa existente.
- La funcionalidad del programa a realizar.
- El detalle de la itefaz gráfica de selección de datos que debe tener el programa o bien la modificacio/es.
- Las tablas base de datos que se accederán para obtener la informacion del programa .
- Las pruebas basicas a realizar luego que el programa esté terminado.
- Demas documentos que crea necesario o útil al Consultor ABAP.
Una vez el Consultar Funcional elabora el "Diseño Funcional", se le pedira al Consultor Técnico, elabore y entregue un "Diseño Técnico", el cual es un documento en donde especifica el trabajo que debera realizar desde el punto de vista Técnico, es desir se detalla
- El nombre del programa a crear.
- Los campo que componen lo que se denomina en ABAP la pantalla de seleccion.
- La forma de acceder a la tablas de la base de datos para obtener informacion.
- Las validaciones que se realizarán en el pregrama.
- Si se imprimiran datos en pantalla.
- Si se generará un archivo de salida y muchas cuestiones más.
Normalmente aqui tambien se incluirá la estimacion dela hora que se presume insumirá realizar o modificar el programa. esta estimacion por general se elabora de común acuerdo enetre el Consultar FFuncional y el Consultor ABAP en base a:
- La dificultad de la tarea a realizar.
- La experiencia que posee el Consultor ABAP como programador.
La elaboracion del Diseño Técnico y la Programacion
Una ves finalisado el Diseño Técnico, el Consultor ABAP comenzara el desarrollo del programa o modificacion a realizar.
Al terminarlo lo probara, realizando lo que se conose como "Pruebas Unitarias", para asegurarnos que el programa cumpla con los requisitos que nos solicitaron y avisa al Consultor Funcional.
El Consultor Funcional realza su propia prueba, las cuales se conocen como "Pruebas Integrales", es donde se pruebá el programa rigurosamente y si esta todo en orden, avisara al cliente, cerrando de esta manera el requerimiento establecido en un principio.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Alvaro Ardila Sandoval
Sobre el autor
Publicación académica de Javier Miguel Angel Barcelo, en su ámbito de estudios para la Carrera Consultor ABAP.
Javier Miguel Angel Barcelo
Profesión: Militar - Argentina - Legajo: DQ34X
✒️Autor de: 93 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
Certificación Académica de Javier Angel