✒️ABAP / Los módulos de funciones RFC Por Mara Romero Hernandez
ABAP Los módulos de funciones RFC

Concepto: RFC (Remote Function Call) es un mecanismo que permite ejecutar un módulo de funciones en otro sistema SAP o servidor remoto. Se utiliza para integrar distintos sistemas y compartir lógica sin duplicar código. Funciona a través de un RFC Destination configurado en la transacción SM59.
Tipos de RFC:
1. Síncrono (RFC normal): el programa espera la respuesta antes de continuar. Se utiliza la sintaxis CALL FUNCTION ‘Z_FUNC’ DESTINATION ‘SAP_QAS’.
2. Asíncrono (aRFC): no espera respuesta inmediata, útil para procesos independientes.
3. Transaccional (tRFC): garantiza ejecución exactamente una vez aunque haya fallos de red.
4. En segundo plano (bgRFC): optimizado para gran volumen de datos y control de ejecución.
Creación de un módulo de funciones RFC (Transacción SE37):
1. Crear módulo: en SE37 ingresar nombre Z_… y presionar Create. Asignar un Function Group (existente o nuevo) y guardar.
2. Habilitar para RFC: en la pestaña Attributes marcar la opción Remote-Enabled Module.
3. Definir interfaz: agregar parámetros en Import, Export, Changing o Tables. Usar siempre tipos definidos en el Diccionario ABAP (SE11) para asegurar compatibilidad remota.
4. Escribir código:
FUNCTION z_suma_numeros.
*”–––––––––––––––––––––––––––––––––––
*” IMPORTING
*” VALUE(NUMERO1) TYPE I
*” VALUE(NUMERO2) TYPE I
*” EXPORTING
*” VALUE(RESULTADO) TYPE I
*” EXCEPTIONS
*” invalid_input
*”–––––––––––––––––––––––––––––––––––
IF numero1 IS INITIAL OR numero2 IS INITIAL.
RAISE invalid_input.
ENDIF.
resultado = numero1 + numero2.
ENDFUNCTION.
5. Guardar y activar: activar tanto el módulo como el function group.
6. Probar: de forma local en SE37 ejecutando el módulo. De forma remota con CALL FUNCTION … DESTINATION ‘RFC_DEST’. Configurar el destino en SM59 como tipo 3 - ABAP Connections.
Ejemplo de llamada RFC:
DATA: lv_res TYPE i.
CALL FUNCTION ‘Z_SUMA_NUMEROS’
DESTINATION ‘SAP_QAS’
EXPORTING
numero1 = 5
numero2 = 7
IMPORTING
resultado = lv_res
EXCEPTIONS
system_failure = 1
communication_failure = 2
OTHERS = 3.
IF sy-subrc <> 0.
WRITE: ‘Error RFC’, sy-subrc.
ELSE.
WRITE: ‘Resultado:’, lv_res.
ENDIF.
Errores comunes:
• system_failure: error interno del sistema destino.
• communication_failure: problemas de conexión.
Siempre manejar excepciones con la cláusula EXCEPTIONS.
Buenas prácticas:
• Usar nombres Z/Y para evitar conflictos con funciones estándar.
• Definir parámetros con tipos globales en SE11.
• Documentar excepciones y parámetros.
• Probar la conexión en SM59 antes de ejecutar.
SM58 – Monitor de llamadas RFC transaccionales (tRFC)
• Objetivo: mostrar y administrar las llamadas tRFC (Transactional Remote Function Calls) que están pendientes, fallidas o en cola para enviarse al sistema destino.
• Cuándo se usa: cuando un RFC transaccional falla por problemas de red, permisos o indisponibilidad del sistema destino.
• Qué se ve en SM58:
• Lista de entradas tRFC con:
• Usuario
• Fecha y hora
• Destino RFC
• Función llamada
• Estado
• Mensaje de error (si existe)
• Funciones principales:
1. Ejecutar (F8): mostrar la lista de llamadas pendientes.
2. Reprocesar (Menú → Edit → Execute LUW): intenta reenviar manualmente una llamada fallida.
3. Borrar entradas (Delete): elimina llamadas no deseadas de la cola.
4. Ver detalles (Display): muestra información técnica de la llamada RFC.
• Escenarios típicos:
• Conexión caída entre sistemas.
• Usuario RFC sin permisos suficientes.
• Sistema destino detenido o saturado.
• Buenas prácticas:
• Revisar SM58 regularmente en entornos productivos.
• Atender errores con prioridad, ya que pueden bloquear procesos dependientes.
• No borrar entradas sin entender el impacto.
 
 
 
Sobre el autor
Publicación académica de Mara Fadua Romero Hernandez, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.
Mara Fadua Romero Hernandez
Profesión: Psicóloga - Mexico - Legajo: EE18E
✒️Autor de: 67 Publicaciones Académicas
🎓Cursando Actualmente: Carrera Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Certificación Académica de Mara Romero






Disponibilidad Laboral: FullTime


















