✒️ABAP Los módulos de funciones
ABAP Los módulos de funciones
Unidad 4: Subrutinas, funciones, batch.
Lección 2: Módulos de función.
1.- Que son los módulos de función?
Son funciones que han sido creadas y almacenadas en SAP y que pueden ser utilizadas por cualquier programa ABAP.
Para el mantenimiento de los módulos de función tenemos la transacción SE37 que permite las siguientes acciones sobre módulos de función:
- Visualizar.
- Modificar.
- Crear
Los llamadas a un módulo de función tienen la siguiente estructura:
CALL FUNCTION <nombre de función>
EXPORTING <parámetros_entrada>
IMPORTING <parámetros_salida>
TABLES <tablas>
EXCEPTIONS <excepciones>.
Si queremos utilizar cualquier función creada a través de SE37. No es necesario escribir la llamada completa a la misma.
El botón modelo o pattern en ingles del editor de ABAP nos permitirá generar un esqueleto de cualquier función creada mediante SE37.
2.- Creación de un módulo de función.
a) En la transacción SE37 introducimos el nombre del módulo de función a crear. Pulsamos el botón crear.
b) Completamos la pantalla de diálogo, con el nombre del grupo de funciones al que pertenecerá la función y una descripción breve sobre el propósito de la misma. Al grabar puede suceder que el el grupo de funciones al que queremos asociar la función no exista, por tanto habrá que crearlo también.
Un grupo de funciones es un repositorio de funciones que se utiliza con el propósito principal de compartir subrutinas y declaraciones de variables entre todas las funciones del grupo.
c) Para crear un grupo de funciones debemos seguir las siguientes opciones en el menú de la transacción SE37.
Pasar a --> Gestión gr. funciones --> Crear grupo.
Como siempre en la pantalla de diálogo pondremos el nombre del grupo de funciones y una descripción breve antes de pulsar el botón grabar. Lo que de no mediar ningún error nos responderá con el mensaje de confirmación de la creación del grupo.
Una vez creado el grupo podemos realizar las siguientes operaciones para darle contenido:
- Creación de variable globales del grupo. Son variables que se pueden utilizar en cualquier función asociada al mismo.
Para ello en el menú de la SE37 vamos a la siguiente ruta de opciones. Pasar a --> Datos Globales.
- Si queremos declarar subrutinas que podamos utilizar en todas las funciones de grupo debemos tomar la siguiente ruta de menú Pasar a --> Programa de control.
Para ello debemos descomentar el primero de los includes de usuarios. Le cambiamos el nombre para que empiece por Z. Lo creamos y colocamos las subrutinas que consideremos necesarias en él.
- Creado el grupo de funciones. Ya podemos crear la función.
Una vez creada la función veremos que hay varias pestañas cada una con su función específica:
- Atributos: Se especifica la descripción de la función y el tipo de función de que se trata:Normal, RFC o Update module.
- Import: Parámetros de entrada de la función.
- Export: Parámetros de salida de la función.
- Modificaciones: Parámetros de salida que cambian de valor al ejecutar la función.
- Tablas: Tablas que utiliza la función. Las tablas internas no se especifican aquí sino en la solapa modificaciones.
- Excepciones: Especificamos las excepciones que se generar en la función y que fueron especificadas al crear el módulo de función. Una excepción es un error generado al ejecutarse la función y que nos permite la identificación rápida del motivo del mismo.
- Código fuente: Código ABAP que implementa la función.
Como siempre recordar activar todos los objetos que lo requieran.
Una vez activada es posible probar la función ejecutándola en solitario. Par lo que demos informar los parámetros definidos como de entrada si los hubiera.
 
 
 
Sobre el autor
Publicación académica de Francisco Compte Sanchez, en su ámbito de estudios para la Carrera Consultor ABAP.
Francisco Compte Sanchez
Profesión: Sap Business&integration Architect - España - Legajo: QQ38S
✒️Autor de: 105 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Consultor sap mm y sd con algún conocimiento abap a nivel de debug. quiero consolidar conocimientos técnicos para reforzar mi perfil profesional.
Certificación Académica de Francisco Compte