✒️ABAP Los módulos de funciones RFC
ABAP Los módulos de funciones RFC
Lección 4: Módulos de función RFC
Módulo de función RFC: Es una llamada a una función que existe en un sistema distinto al del programa que llama. Normalmente para obtener datos.
Las RFC acceden a otros ambientes para obtener datos ya bien sea un sistema SAP o no.
DESTINATION: Mediante está clásula llamamos a una función RFC.
La RFC no existe en origen pero si en destino
SI se produce un error en la ejecución de una RFC los mensajes de error están en las variables SY-MSGID, SY-MSGNO, SY-MSGV1, SY-MSGV1, SY-MSGV1 y SY-MSGV.
Una función RFC se crea desde la SE37 con los mismos parámetros que una función pero seleccionado en la solapa Atributos la opción Módulo de acceso remoto (remote Enabled Module).
Los parámetros que se crean en una función RFC no se pueden pasar por Referencia, deben ser de valor. Esto se hace poniendo el check "transportar valores" (pass value), para cada parámetros de las solapas IMPORT, EXPORT y CHANING.
Las funciones que son RFC pueden ser utilizadas como funciones normales de dos formas diferentes.
- Utilizando la declaración CALL FUNCTION DESINATION 'NONE'
- Utiliznado la declaración de un módulo de función normal, sin la clausula DESTINATION.
Tipos de RFC:
- Sincrónicas: ambos ambientes tienen que estar disponibles para la llamada, se utiliza en los ambientes de desarrollo.
- Transaccionales: los sistemas no tienen que estar disponibles. Un único ID de transacción es generado y los programas llamados son almacenos en el sistema junto con los datos. Se crea utilizando el sufijo IN BACKGROUND TASK. En las tablas ARCSSTATE y ARFCSDATA se almacena información relaciona con estas llamadas. Con la transacción SM58 vemos los errores en las RFC transaccionales. Con el COMMIT WORK se envía la llamada al sistema remoto
- Asincrónicas: el programa llama a la función RFC e inmediatamente después termina su procesamiento. La función RFC se ejecuta independientemente del programa llamador. Con el sufijo SATRTING NEW TASK creamos la RFC asincrónica.
No se puede debuggar una llamada a una función remota de otro sistema. Pero cuando se prueba una llamada RFC de un sistema a otro se puede utilizar el debug para monitorizar la ejecución de la función RFC en el sistema remoto. Con las llamada remotas el dubug de ABAP se ejecuta en el sistema local, los valores de los datos y otra información de ejecución de la función remota son pasados al sistema remoto.
 
 
 
Sobre el autor
Publicación académica de Felipe Roca Molina, en su ámbito de estudios para la Carrera Consultor ABAP.
Felipe Roca Molina
Profesión: Informático - España - Legajo: LD31G
✒️Autor de: 120 Publicaciones Académicas
🎓Egresado de los módulos: