![](/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/136.jpg)
UNIDAD 1: INTRODUCCION A SAP Y ABAP
TEMA 8: LENGUAJE DE PROGRAMACION ABAP
A.- QUE ES ABAP?
* Es un lenguaje de programación de cuarta generación propiedad de SAP
* Se utiliza para programar SAP ECC y SAP S/4Hana.
* ABAP= Advanced Business Application Programming.
* ABAP significa Programación Avanzada de Aplicaciones de Negocios.
* ABAP también es conocido como SAP ABAP.
* Es de alto nivel, fácil de leer y aprender.
* ABAP Development Workbench = ABAP Enterno de Desarrollo: Es 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.
* ABAP es un lenguaje de programación estructurado.
* La programación estructurada: es un paradigma de programación orientado a mejorar la claridad y el tiempo de desarrollo de un programa de computación, solo se puede recurrir únicamente a subrutinas y tres estructuras básicas:
- Secuencias: el orden en que las instrucciones deben ser ejecutadas.
- Instrucciones Condicionales o Selecciones: es la posibilidad de poder elegir entre dos instrucciones y la decisión se tomará en base a una evaluación, a la cual se le llama condición.
- Interacciones: es la repetición de una instrucción o grupo de instrucciones mientras se cumple una condición.
*ABAP también es un lenguaje orientado a eventos, donde la secuencia de instrucciones depende del cumplimiento de una condición o evento.
* Programación Orientada a Eventos: es en donde la estructura y la ejecución de los programas va determinado por los sucesos o acciones en los sistemas definidos por el usuario o por el propio sistema.
* El sistema SAP este compuesto por un conjunto de áreas funcionales o líneas de negocios, según la versión de SAP, por lo cual utilizaremos el lenguaje de programación ABAP para realizar nuevos desarrollos o modificar los desarrollos existentes.
B.- Historia de ABAP
* En los 80. ABAP fue desarrollado como lenguaje de programación para elaborar reportes para el sistema SAP R/2, COBOL y SQL.
* ABAP fue pensado como un lenguaje de programación para que los usuarios finales del sistema SAP pudieran manipular la información, pero con el paso del tiempo y de las versiones, se fue volviendo demasiado complicado.
* En 1992 se mantuvo el lenguaje desarrollado para la versión cliente-servidor SAP R/3.
* En 1999 se lanzó la extensión orientada a objetos denomina ABAP Objetos.
* ABAP llega incorporar a objetos ABAP permitiendo funciones que pueden ser pensadas y desarrolladas con POO (Programación Orientada a Objetos).
C.- Principales Fortalezas de ABAP
- Utiliza sentencias de OPEN SQL para conectarse con prácticamente cualquier base de datos: si bien a partir de la versión s/4 Hana solo trabaja con SAP Hana como base de datos, en las versiones anteriores se utilizaban otras bases de datos tal como Oracle y otras.
- 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.
- Cuenta con miles de funciones para el manejo de archivos, base de datos fechas, caracteres entre otros: de esta forma operaciones complejas se vuelven más simples.
- Permite conexiones RFC para conectar a los sistemas SAP con cualquier otro sistema de lenguaje de programación: mediante estas conexiones podemos conectar nuestro sistema SAP con otros sistemas SAP o no SAP y ABAP con otros lenguajes tal como Java etc.
- Permite la creación de aplicaciones multiidioma: todos los textos de nuestras aplicaciones los puede traducir a diferentes idiomas.
- Posee una ayuda muy potente sobre la sintaxis y la semántica del lenguaje: ¡simplente con presionar F! sobre la sentencia que queramos.
- Permite la realización de reportes en forma rápida y sencilla: dispone de varias opciones para la realización de estos en forma rápida. REPORTES AVL.
D.- Herramientas propias de ABAP
D.1. El diccionario de datos ABAP (transacción SE11):
* Es el punto de referencia para los programadores.
* permite aislar el sistema de gestión de base de datos que se utilice.
* Se puede crear, modificar, borrar los objetos de base de datos, entre los que se incluyen las tablas de datos, estructuras, vistas, elementos de datos y dominios.
* Es utilizada para la administración de todas las definiciones de datos utilizadas en el sistema.
D.2. Editor de programas (transacciones SE38 y SE80):
* Aparte de proveer funciones básicas para editar textos, tiene múltiples características que facilitan la programación enormemente.
* Permite resaltar las palabras clave y tener una vista en forma de estructura jerárquica que ofrece la posibilidad de ocultar o desglosar bloques sintácticos
* Transacción SE38 y SE80: Ambas transacciones estándares son utilizadas para el desarrollo de aplicaciones o programas ABAP dentro del sistema SAP.
D.3. El Scrren Painter (transacción SE51)
* con esta herramienta crearemos interfaces graficas de usuario incluyendo una amplia variedad de elementos de control, como botones de pulsación, botones de radio, etiquetas, etc.
* Las pantallas, campos, lógica que se crean se denominan dynpros.
* Es utilizada para la creación de las denominadas pantallas de Dynpros que es el termino de SAP.
D.4. El entorno de depuración (dentro de la transacción SE38):
* el modo debugging de ABAP es posiblemente la herramienta más alabada de los programadores.
* Tiene todas las ventajas de este tipo de ayudas a la programación tal como la creación de Breakpoints y watchpoints.
La ejecución paso a paso y por bloquees, nos permite hacer todo esto viendo el código fuente del programa por lo tanto localizar el lugar exacto del error.
D.5. Otras herramientas:
* Existe una gran variedad de herramientas adicionales cuyo uso no es tan frecuente
* El Menú Painter, el análisis del tiempo de ejecución, el class builder, etc.
E.- Modificaciones al sistema estándar de SAP
* Las Ampliaciones: Son huecos que existen en el sistema.
* Las ampliaciones son los que amplían o extiende las funciones del sistema estándar.
* Las principales aplicaciones son:
E.1. Customer Exists (transacciones CMOD y SMOD)
** son espacios que los usuarios pueden agregar código para validaciones y mejoras.
** Las transacciones CMOD y SMOD son utilizadas para la administración de las aplicaciones de usuario SAP
E.2. Field Exists (transaccion CMOD y escribir PRFB):
** Ampliaciones de campo.
** Son validaciones de los elementos de datos asociados a campo de pantallas SAP.
E.3. BADIS (Business Adds-ins- Transacciones SE18 y SE19):
** son un nuevo tipo de extensión al sistema SAP.
** Utilizan los objetos ABAP para la implementación de validaciones.
** Utilizan las ampliaciones del código estándar de SAP sin tener que modificar el código estándar.
** Las transacciones SE18 y SE19 son utilizadas para la definición y la declaración de la BADIS en SAP.
E.4. Enhancements (desde la misma transaccion SE38):
** Son ampliaciones al código estándar de SAP mediante las cuales podemos agregar funcionalidades determinadas.
E.5. Estructuras Append (desde la misma SE11):
** Son objetos ABAP que se crean para agregar datos o configuraciones adicionales.
F. Consultores ABAP
* Es el profesional que ofrece servicios para la implementación, optimización y ejecución de los productos SAP y otros sistemas.
* Estos profesionales mediante interfaz con SAP aseguran el máximo aprovechamiento de los conocimientos y las herramientas de tecnología de la compañía.
* El consultor SAP adapta el sistema a lo que cada empresa quiere y necesita.
*Requisitos importantes
** Escuchar: debe saber escuchar y entender al cliente.
** Parametrizar: o programar en algun modulo o herramienta. Su supuesto no es evidente
** Analizar: deben entender y comprender los procesos de negocio de una emoresa y transformarlos al lenguaje SAP
** Hablar: debe saber comunicar al cliente el funcionamiento del sistema y ayudarle a entender como será su trabajo con la herramienta.
** Aprender: Seguir con los nuevos avances en herramientas.
** Colaborar: Tiene que trabajar en equipo, preparando ideas.
**Dentro de SAP existen tres tipos de consultores:
- Consultor Funcional:
** Son aquellos profesionales que tienen el conocimiento de un área funcional o modulo del sistema y están encargado de ayudar a las empresas a configurar el sistema SAP de acuerdo con las necesidades. - Consultor ABAP Basis:
** SAP Basis nos referimos a la base técnica de las aplicaciones SAP.
** Los consultores especialistas en SAP Basis tienen como principal responsabilidad la administración del entorno SAP asegurando la integridad del sistema, esto incluye tareas de mantenimiento, actualizaciones, generación de buckups. - Consultor Técnico:
** Nos estamos refiriendo a las personas que poseen los conocimientos técnicos dentro del sistema SAP.
** En general nos referimos a los programadores ABAP, pero también a otros perfiles dependiendo de la tecnología utilizada.
** Dentro del mundo ABAP cuando hablamos de consultores técnicos hablamos de Consultor ABAP, Desarrollador ABAP, Programador ABAP.
** Los desarrolladores ABAP, realizan la programación en el lenguaje ABAP, la documentación, pruebas, asesoramiento a los consultores funcionales, optimizar el sistema.
G. Ciclo de Trabajo de un consultor ABAP:
* Se trata de explicar la interacción de los consultores ABAP con los consultores funcionales
* Explica cómo es la metodología de trabajo más utilizada en el ciclo de vida de desarrollo SAP.
* Una metodología bien implementada mejora el control de costos de los requerimientos de los usuarios.
*Estructura Organizativa de trabajo
- Reunión del usuario con el consultor funcional:
** Es quien analiza si el trabajo se puede realizar parametrizando el sistema. - Elaboración del diseño funcional:
** La forma básica de realizar este trabajo funcional y técnico en conjunto se inicia elaborando una documentación "diseño funcional" en este documento se indica al consultor lo siguiente:
- Si se trata de hacer un programa nuevo o modificar uno existente.
- La funcionalidad del programa a realizar.
- Detalle de la interfaz de selección de datos.
- Las tablas bases de datos que se accederán para obtener la información.
- Las pruebas básicas a realizar luego que el programo esté terminado.
*Una vez que el consultor funcional elaboro el diseño funcional, se pedirá al consultor técnico que en base al diseño funcional elabore el diseño técnico en el cual debe especificar:
- Nombre del programa a crear
- Campos que componente lo que se denomina en ABAP la pantalla de selección.
- La forma de acceder a las tablas de la base de datos para obtener información.
- Las validaciones que se realizaran en el programa.
- Si se imprimirán los datos de la pantalla
- Si se generará un archivo de salida y muchas cuestiones más.
*Se estima las horas en que se realizar o modificara el programa.
* La dificultad de la tarea.
* La experiencia que posee el consultor ABAP.
· Una vez finalizado el diseño técnico el consultor ABAP comenzara el desarrollo del programa o modificación a realizar.
· Al terminarlo lo probara, realizando pruebas unitarias (pruebas básicas) para asegurarnos que el programa cumple con los requisitos que nos solicitaron y avisa al consultor funcional.
· El consultor funcional a su vez realizara sus Pruebas Integrales en donde se probará el programa rigurosamente si esta todo en orden avisara al cliente.
 
 
 
Sobre el autor
Publicación académica de Víctor Alberto Saccaco Maldonado, en su ámbito de estudios para la Carrera Consultor ABAP.
Víctor Alberto Saccaco Maldonado
Profesión: Consultor Abap - Peru - Legajo: RD90F
✒️Autor de: 25 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: PartTime
Presentación:
Consultor abap junior, con experiencia en módulos sd, mm.
Certificación Académica de Víctor Saccaco