✒️SAP BASIS Los fundamentos de las conexiones RFC
SAP BASIS Los fundamentos de las conexiones RFC
Fundamentos RFC
Las llamadas de funciones remotas han sido utilizadas por muchos años como la interfaz tecnica con la que los sistemas SAP y no SAP usualmente se conectan. No tiene relevancia si el intercambio de informacion se realiza de manera sincronica o asincronica, periodica o aperiodica o transaccional.
Una RFC es la llamada a un modulo de funcion que esta corriendo en un sistema diferente al programa que realiza la llamada. Podemos llamar a un modulo de funcion en el mismo sistema mediante una RFC tambien, de tomas maneras las RFCs normalmente son utilizadas cuando los modulos de funciones, el que llama y el que recibe el llamado, se encuentran en sistemas diferentes.
En el sistema SAP, el sistema de interfaz RFC provee esta funcion. El sistema de interfaz RFC permite llamadas a funciones entre 2 sistemas SAP o entre 1 sistema sap y 1 no sap.
RFC es un protocolo de interfaz de SAP basado en al interfaz de programacion comun para comunicaciones. por sus siglas en ingles CPI-C (Common Programming Interface for Communication) y permite comunicacion entre programas de diferentes hosts. Esto permite que las apluicaciones externas puedan llamar funciones ABAP y los sistemas SAP contactar aplicaciones externas que sean compatibles mediante RFC.
RFC significa que los progrmadores ABAP no tienen que escribir sus propias rutinas de comunicacion.
Para una llamada RFC, la interfaz RFC:
- Convierte todos los parametros al formato requerido en el sistema remoto.
- Invoca a las rutinas de comuncacion que se requieren para la comunicacion con el sistema remoto.
- Maneja los errores que pueden ocurrir durante la comunicacion.
La interfaz RFC es de facil utilizacion para los programadores ABAP. los pasos de procesamiento para el llamado a los programas externos estan integrados dentro de la sentencia CALL FUNCTION.
Para poder llamar a una funciona remota, debemos definir el sistema remoto como un destino en el sistema donde realizamos la llamada, tambien se requiere autorizacion de acceso.
Accion acceso a administracion de conexiones remotas:
- Item del menu principal- primer subitem-segundo subitem-tercer subitem.
Se pueden manejar estas conexiones remotas en el sistema que llama, para hacerlo utilizamos la funcion Display and Maintain RFC Destinations ya sea seleccionando desde el arbol del menu.
Administration-Network-RFC Destinations
O directamente llamando a la TX SM59
Para copiar una conexion RFC existente, primero tenemos que ingresar a la conexion RFX que queremos copiar. Luego seleccionar Connection-Copy
Variantes de Utilizacion de RFC
RFC Sincronica sRFC:
Para comunicacion entre diferentes sistemas y entre SAP Netweaver AS y SAP GUI. entre comunicaciones el llamado a la funcion remota se basa en una comunicacion sincronica por lo que el sistema remoto debe estar disponible en el momento de la llamada.
RFC asincronica aRFC
para comuncacion entre sistemas y para procesamiento paralelo de tareas. Con este tipo de comunicacion, aunque no es realmente asincrona ya que el sistema remoto debe estar disponible al momento de la comunicacion, el sistema origen (desde donde se realiza la llamada a la funcion remota) no necesita esperar una respuesta del sistema remoto para continuar su procesamiento y en este sentido es por el cual se denomina asincronica.
RFC transaccional tRFC
Este metodo si ultiliza una forma de comunicacion realmente asincronica. El sistema remoto no necesariamente debe estar disponible al momento de la llamada por el programa en el sistema origen. Si una llamada es ejecutada y el sistema destino no esta disponible, la llamada se mantiene en una cola local del sistema origen. El programa que ejecuto la llamada puede proceder sin esperar si el resultado de la llamada fue exitoso o no.
RFC encolada qRFC
Para garantizar que se procesen en el mismo orden en que se realizaron las llamadas en el sistema origen, qRFC garantiza esto, es una extension de tRFC, se utiliza cuando necesitamos que el procesamiento se realice con un orden predefinido.
RFX es un termino general para diferentes variantes de implementacion. sRFC es la llamada de modulo de funciones sincronica. esto significa que el cliente espera hasta que el servidor ha completado el procesamiento de la funcion remota.
Dento de un sistema SAP, una RFC puede tambien ser ejecutada de forma asincronica mediante el uso de otro work process. la variante se conoce como aRFC.
Tambien esta tRFC que es la llamada de funcion remota transaccional, el cuale s asincrona ya que se asegura que la informacion puede ser envaida mas de una vez al sistema destino sin problemas. si problemas de comunicacion en la red suceden y son reconocidos del lado del servidor. Para esto un identificador de transaccion TID se asigna al llamado. Esto es util para prevenir que la informacion se procese mas de una vez en el sistema lo que podria ocasionar informacion erronea en la aplicacion debido al procesamiento asincronico.
qRFC con cola de envio es uan extension de tRFC. crea una capa entre la aplicacion y tRFC y permite enviar los parametros de la funcion remota si no existen ejecuciones anteriores pendientes en la cola. Lyego de uan unidad logica de trabajo LUW es ejecutada, el coordinador de qRFC automaticamente procesa el siguiente llamado en concordancia con la secuencia de cola.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Yoberly Zambrano
Sobre el autor
Publicación académica de Guillermo Andres Reyes Navarro, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Guillermo Andres Reyes Navarro
Profesión: Ingeniero de Sistemas - Colombia - Legajo: LU47E
✒️Autor de: 51 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Certificación Académica de Guillermo Reyes