🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP El lenguaje de programación ABAP

ABAP El lenguaje de programación ABAP

ABAP El lenguaje de programación ABAP

Unidad 1: Introducción a ABAP y a SAP

7. El lenguaje de programacion ABAP

1.Que es ABAP?

El entorno que SAP denomina ABAP Development Workbench o Entorno de Desarrollo de Abap, se compone de una serie de herramientas integradas, que perminten crear desarrollos nuevos en poco tiempo.

ABAP es un lenguaje estructurado y orientado a eventos.

2. Historia de ABAP

  • En los 80 era una mezcla de COBOL y SQL

SQL

Por sus siglas en inglés Structured Query Language, en español lenguaje de consulta estructurada.

SQL es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas.

Una de sus características es el manejo del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de datos, así como hacer cambios en ellas.

  • En 1999, se lanzo ABAP Objects, orientada a objetos, que permitia que determinadas funcionalidades puedan ser pensadas y desarrolladas por POO.
POO

Son las siglas con las que se designa a la "Programación Orientada a Objetos". Es un método de desarrollo de software basado en el comportamiento de los objetos en el mundo real.

Para aprender a programar orientado a objetos tendremos que pensar las cosas de una forma diferente a que solíamos utilizar cuando realizabamos programación estructura en lenguajes tales como COBOL o ABAP por citar dos ejemplos.

A través de la POO nuestros programas estarán formados por objetos, atributos, métodos, eventos y una serie de términos nuevos.

Cuando decimos que pensar en objetos es parecido a como se piensa en la vida real, nos referimos a que por ejemplo si pensamos en un auto para tratar de modelizarlo en un esquema de POO, vamos a identificar que el objeto es el auto, que este tiene una serie de atributos o características como son el color la cantidad de puertas, la potencia del motor, si tiene o no airbags, etc.

También podemos decir que el auto tiene métodos tales como arrancar o frenar.

3. Principales fortalezas de ABAP

RFC

Es una llamada a función remota como sus siglas en inglés lo indican ( Remote Function Call).

Se trata de un protocolo que permite a un programa ejecutar código en otra maquina remota sin tener que preocuparse por las comunicaciones entre ambos dado que ha sido configurada previamente por el administrador del sistema.

En SAP configuramos las RFC en la transacción SM59 y es allí donde se indica el tipo de RFC, si es de confianza o no, si los datos que viajan va a utilizar el sistema universal de codificación (unicode) o si utiliza un juego de caracteres especial en este caso configurado en la instalación del sistema, etc.

4. Las herramientas propias de ABAP

  • Diccionario de datos ABAP-SE11, es utilizada para la administracion de todas las definiciones de datos utilizadas en el sistema SAP
  • El editor de programas- SE38 Y SE80, utilizadas para el desarrollode aplicaciones o programas ABAP, dentro de SAP.
  • El screen painter- SE51, para la creacion de interfaces graficas de usuario, las pantallas que se crean se denominas dynpros.
DYNPROS

Es el sinónimo de pantalla dentro de SAP.

Cada dynpro tiene asignado un número compuesto por cuatro dígitos numéricos.

Las dynpros son los componentes fundamentales de un programa de diálogo en abap, el cual está compuesto por una serie de pantallas por las cuales el usuario navega mientras interactúa con el programa y realiza determinadas acciones.

A los programas de diálogo en ABAP se los conoce también con el nombre de "Module Pool".

Dentro de cada dynpro se crearán o asociarán diferentes objetos para darles funcionalidades a las mismas. Entre ellos podemos nombrar:

  1. Menús
  2. Títulos
  3. Botones
  4. Tablas de control
  5. SubScreens
  6. Campos de entrada
  7. Campos de salida

Para trabajar con Programas de diálogo o Module Pools vamos a utilizar la transacción SE80 correspondiente al "Navegador de objetos".

  • El entorno de depuracion-SE38, es el modo debugging de ABAP, puedes usar breakpoints y watchpoints, tienes la ejecucion paso a paso o por bloques para ver el programa y localizar el error en el lugar exacto.
DEBUGGING

Es el proceso de identificar y corregir errores de programación.

Forma parte del proceso de desarrollo del software y de hecho es una parte muy importante ya que todo desarrollo debe pasar por una prueba unitaria y una prueba funcional.

La prueba unitaria la realizará el mismo programador o un par. La idea de esta prueba es probar el funcionamiento del programa de forma unitaria o individual.

La prueba de sistemas la realizará el analista funcional encargado del proyecto. Su objetivo es probar el nuevo desarrollo de forma integra, viendo como interactúa este con otros objetos existentes en el sistema.

En ABAP podemos utilizar 2 Debuggers o "Entornos de depuración" diferentes:

  • El nuevo debugger
  • El viejo debugger

El nuevo debugger presenta ventajas significativas respecto al viejo debugger.

Para configurar uno u otro debugger debemos ir a:

Desde las transacciones SE80 o SE38 vamos a Utilidades → Opciones.

BREAKPOINTS

Son puntos de control que se colocan en el programa, para que al ejecutarse se detenga el procesamiento en esos puntos, de modo de poder analizar un posible error o la razón por la cual ciertas variables adquieren determinados valores.

Es indispensable para un programador ABAP saber utilizar a la perfección esta poderosa herramienta que nos brinda el Debuger ABAP ya que de esta manera es como se pueden descubrir los errores en las aplicaciones.

Existen dos tipos de breakpoints:

  • Breakpoints de sesión: Estos puntos de interrupción solo son válidos para la sesión actual, es decir, para aplicaciones que se lancen dentro de la misma entrada al sistema. Además estos breakpoints son independientes de usuario.
  • Breakpoints externos o de de usuario: Estos puntos de interrupción son válidos para cualquier aplicación que se ejecute en el sistema, independientemente de donde se haya lanzado. Por ejemplo, en aplicaciones Web Dynpro o BSP, que se ejecutan desde un navegador web, solo podrían utilizarse este tipo de breakpoints. Estos suelen tener validez de 2 horas y se asocian a un usuario.
WATCHPOINTS

Son expresiones que detienen la ejecución de un programa cuando la variable o valor en cuestión cambia de valor o adquiere el valor de parada.

Al igual que breakpoints, un watchpoint es un indicador en un programa que indica al procesador ABAP en tiempo de ejecución que interrumpa el programa en un punto determinado. Sin embargo, a diferencia de los breakpoints, los watchpoints no se activan hasta que cambia el contenido de un campo especificado.

Los watchpoints, como los breakpoints dinámicos, son específicos del usuario y por lo tanto, no afectan a otros usuarios que ejecuten el mismo programa. Sólo puede definir watchpoints en el depurador.

5. Modificaciones al sistema estandar de SAP

SAP permite que los usuarios puedan adaptar el sistema a sus propias necesidades, deja huecos en el codigo, estos huecos se conocen como Ampliaciones, que puedes extender o ampliar funcionalidades del sistema.

Principales ampliaciones que existen en SAP:

  • Customer exists (Transacciones CMOD y SMOD): espacions que deja SAP para que los usuarios agreguen codigo para validaciones y mejoras.
  • Field Exits (Transacciones CMOD y escribir PRFB): Ampliaciones de campo, validaciones de los elementos de datos asociados a campos de pantallas SAP.
  • Badis(Business Adds-Ins, Transacciones SE18 y SE19): Basado en la utilizacion de objetos ABAP para la implementacion de validaciones y ampliaciones al codigo estandar, sin tener que modificar el codigo estandar.
OBJETOS

En programación Orientada a Objetos se usan para modelar objetos o entidades del mundo real (el objeto hijo, madre, o farmacéutica, por ejemplo).

Un objeto es, por tanto, la representación en un programa de un concepto y contiene toda la información necesaria para abstraerlo: datos que describen sus atributos y operaciones que pueden realizarse sobre los mismos.

Se trata de un ente abstracto usado en programación que permite separar los diferentes componentes de un programa, simplificando así su elaboración, depuración y posteriores mejoras.

Los objetos integran, a diferencia de los métodos procedurales, tanto los procedimientos como las variables y datos referentes al objeto.

A los objetos se les otorga ciertas características en la vida real. Cada parte del programa que se desea realizar es tratado como objeto, siendo así estas partes independientes las unas de las otras.Los objetos se componen de 3 partes fundamentales: metodos, eventos y atributos.

  • Enhancements (Desde la misma transaccion SE38): Ampliaciones al codigo mediante las cuales podremos agregar funcionalidades determinadas.
  • Estructuras Apend (Desde la misma transaccion SE11): Objetos de ABAP que se crean para agregar datos o configuraciones adicionales a las tablas bases de datos y estructuras estandar.

6. Consultores de SAP

Existen 3 tipos de consultores

  1. Consultor funcional: Se dedica a un modulo del sistema, y son los encargados de ayudar a las empresas a configurar el sistema de SAP, segun las necesidades de la empresa.
  2. Consultor SAP Basis: Administran el entorno SAP, mantenimiento, actualizaciones, backups etc, gestionan la plataforma operativa SAP Netweaver, para que funcione correctamente.
  3. Consultor tecnico: En general nos referimos a los progamadores de ABAP, tambien conocidos como ABAPER, desarrollador de ABAP, Consultor de ABAP. Tambien desarrollan documentacion, asesoran a los consultores funcionales en cuestiones tecnicas, realizan las pruebas tecnicas etc

7. El cliclo de trabajo de un consultor ABAP

  1. Requerimiento del cliente al consultor funcional, este parametriza o
  2. Elabora el diseño funcional para el consultor Tecnico, que va ser el informe de lo que necesita.
  3. El consultor tecnico elabora el diseño tecnico, como lo va hacer y la estimacion de tiempos.
  4. Se realiza la programacion, y las pruebas unitarias(el programador) y a el consultor funcional realiza las pruebas integrales


 

 

 


Sobre el autor

Publicación académica de Jesus Maria Martin Gonzalez, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior


Jesus Maria Martin Gonzalez

Profesión: Consultor de Sap - España - Legajo: GU62R

✒️Autor de: 14 Publicaciones Académicas

🎓Cursando Actualmente: Master en Programación ABAP Orientado a Objetos

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Consultor de sap en activo, con interes en conocer programacionde abap y poder mejo-rar laboralmente.

Certificación Académica de Jesus Martin