top of page

Introducción a las Funciones de ABAP


Los módulos de funciones se crean con el fin de realizar operaciones que se usan en más de un programa y de esta forma se evita duplicar código, ya que en vez de que cada programa tenga su código repetido, se necesitara la llamada al módulo de funciones el cual tendrá la operativa que necesitan, y de esta forma se ahorra tiempo y dinero en codificación ya que no es lo mismo crear todo el código para una operativa en varios programas, que realizar la llamada al módulo que ya contiene todo el código.


También nos ahorramos tiempo en el mantenimiento ya que si en el futuro necesitamos hacer alguna modificación sobre una operativa, ya no tendremos que buscar todos los programas que tengan esa misma operativa y modificarlos, que hacer una sola modificación al módulo de funciones y de esta forma los programas que llamen a un módulo de funciones ni sabrán de que ha habido modificaciones.


SAP dispone de una gran cantidad de módulos de funciones


Si vamos a trabajar con los módulos de funciones hay que ir a la transacción SE37 biblioteca de funciones, la cual se ubica en la ruta:

  • MENU SAP -> HERRAMIENTAS -> WORKBENCH ABAP -> DESARROLLO -> SE37 - BIBLIOTECA DE FUNCIONES.


La pantalla de “Módulo de funciones”, se encuentra conformada por las pestañas:

  • Pestaña “Atributos”, la cual nos muestra los atributos de este módulo que son:

    • El campo “Grupo de funciones”, que nos indicara a que grupo de funciones pertenece este módulos de funciones

    • El campo de “Descripción”, donde está la descripción del módulo,

    • El campo de “Texto breve”, donde también hay una descripción del módulo.

    • Recuadro con el título “Forma de ejecución” , donde se muestra las posible formas de ejecutar el módulo de funciones y las cuales son,


  • Módulo de funciones normal, esta opción indica que este módulo se puede llamar desde el propio servidor SAP, pero no desde otro servidor remoto.


  • Módulo de acceso remoto, que permite hacer una llamada a un módulo desde un servidor externo.


  • Módulo de actualización, la cual tiene las opciones


  • Inicio inmediato de actualización, donde el módulo de funciones se procesa inmediatamente en la tarea de actualización.

  • Inicio inmediato de actualización y no actualizable posteriormente, con esta opciones también se procesa inmediatamente en la tarea de actualización pero no se puede realizar una actualización posterior.

  • Inicio retardado de la actualización, es cuando no hay una prioridad alta para realizar el proceso de actualización. Esta opción es la que se suele utilizar para modificar bases de datos no críticas para el sistema

  • Ejecución colectiva, que se utiliza para agrupar el módulo de funciones iguales, que están actualizándose de forma independiente entre ellas.


  • Check box de “Basado en XLM soportado” que se activa cuando se hace llamadas de acceso remoto.


  • En la parte izquierda se puede ver los campos de “Datos generales” , donde está:

    • El campo de “Responsable”.

    • El campo de “Modificado por”.

    • El campo de “Fecha de modificación”.

    • Los datos del paquete donde está el módulo de funciones

    • El campo de “Idioma maestro”.


  • Pestaña “Import”, donde se nos mostrara los parámetros de importación que son los parámetros que envían datos al módulo de funciones y está formada por las columnas:


  • Nombre de parámetro.

  • Tipificación del parámetro.

  • Tipo de referencia, es decir de qué tipo del diccionario de dato es.

  • La siguiente columna es la de valor propuesto, que es el valor por defecto cuando el parámetro es opcional.

  • Opcional, ya que no todos los parámetros de entrada tienen que ser obligatorios informarlos y en caso de no estar informado usaran el valor que está en la columna “valor por defecto”.

  • Traspaso por valor, que se usa para indicar si el traspaso del valor del parámetro se va a realizar por referencia o por valor, esta opción es la que se utiliza cuando se llama desde un sistema externo, ya que no dispone de las referencias del parámetro y tiene que realizar el traspaso por valor.

  • Texto breve.


  • Pestaña “Export”, donde podemos ver los parámetros de salida, con los cuales el módulo de funciones devuelve los datos. Y está compuesto por los campos

    • Nombre del parámetro

    • La tipificación

    • El tipo

    • Traspaso por valor

    • Texto breve.


  • Pestaña “Changing” que son los parámetros que se puede modificar durante la ejecución, y tiene las mismas columnas que la pestaña de export.


  • Pestaña “Tablas”, que da la posibilidad de tener tablas como de entrada o salida.


  • Pestaña de excepciones, las excepciones se usan para informar al llamador de módulo de funciones si se ha producido algún error o excepción, como por ejemplo que la base de datos no esté disponible.


  • En la columna “Excepción” se pondría el nombre de la excepción”.

  • En la columna “texto breve” se indicaría el texto a informar.


  • Pestaña de “código fuente”, donde se ubica el código que se va a ejecutar cuando se llame a este módulo de funciones. Y con el cual podemos ver que lo primero es una cabecera donde se informa y se describe los parámetros que utiliza este módulo, esta cabecera se realiza de forma automática al ir rellenando las pestañas que hemos visto. Cada vez que se modifique una de las pestañas anteriores, y se genere el módulo de funciones, la cabecera se actualizará.


Hay que saber que la nomenclatura que SAP utiliza para los parámetros inporting es la I, para los parámetros exporting es la “E”, para las tablas la “T” y para los de tipo changing la “C”. y de esta forma solo viendo el nombre del parámetro se puede identificar de que tipo es.


Y debajo de la cabecera esta todo el código de este módulo de funciones el cual se ejecuta cuando es llamado.


También debemos saber que un módulo de funciones no tiene obligación de tener algún tipo de parámetros ya que puede existir módulos que solo realicen una operativa y no tengan que ser informados con valores e incluso tampoco tienen que devolverlos.

oferta en cursos online
bottom of page