
Los sistemas SAP pueden comunicarse entre sí utilizando llamadas de funciones remotas, que por sus siglas en inglés se conocen como RFCs (Remote Function Calls). Un prerrequisito para esto es que el administrador haya configurado el sistema de interfaces.
1. Los fundamentos de RFC
Las llamadas de funciones remotas han sido utilizadas por muchos años como la interfaz técnica con la que los sistemas SAP y o-SAP usualmente se conectan. No tiene relevancia si el intercambio de información se realiza de manera sincrónica o asincrónica, periódica o aperiódica, o transaccional.
Una RFC es la llamada a un módulo de función que está corriendo en un sistema diferente al programa que realiza la llamada. Podemos llamar a un módulo de función en el mismo sistema mediante una RFC también. De todas maneras, las RFCs normalmente son utilizadas cuando los módulos 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 función. El sistema de interfaz RFC permite llamadas a funciones entre dos sistemas SAP o entre un sistema SAP y un sistema no-SAP externo.
La interfaz RFC es de fácil utilización para los programadores ABAP. Los pasos de procesamiento para el llamado a los programas externos están integrados dentro de la sentencia CALL FUNCTION.
Para copiar una conexión RFC existente, primero tenemos que ingresar a la conexión RFC que queremos copiar. Luego seleccionar Connection ---> Copy.
2. Las variantes de utilización de RFC
Para comunicación entre diferentes sistemas y entre SAP Netweaver AS y SAP GUI. En estas comunicaciones el llamado a la función remota se basa en una comunicación sincrónica por lo que el sistema remoto debe estar disponible en el momento de la llamada.
Para comunicación entre sistemas y para procesamiento paralelo de tareas. Con este tipo de comunicación, aunque no es realmente asincrónica ya que el sistema debe estar disponible al momento de la comunicación, el sistema origen (desde donde se realiza la llamada a la función remota) no necesita esperar una respuesta del sistema remoto para continuar su procesamiento y en este sentido es por el cual se denomina asincrónica.
Para garantizar que se procesen en el mismo orden en el que se realizaron las llamadas en el sistema origen, qRFC garantiza eso. Es una extensión de tRFC. Se utiliza cuando necesitamos que el procesamiento se realice con un orden predefinido (establecido por el orden de los llamados desde el programa en el sistema origen).