✒️ABAP Los módulos de funciones RFC
ABAP Los módulos de funciones RFC
Los módulo de funciones RFC:
cosiste en una llamada a un módurulo de funciones que existen en el sistema SAP, distinto al sistena del programa donde se realiza la llamada del módulu de funciones. Es desir en un programa ABAP llamamos a un módulo de funciones que no existe en el sistema donde nos encontramos sino que existes en otro sistema SAP o no SAP con el que nos comunicaremos .
El objetivo principal de los módulos de funciones RFC es acceder a otros ambientes de sistema para optener datos. Para llamar a un módulo de funciones RFC se debe agregar la clausula DESTINATION al momento de decrarar el módulo de funciones.
El módulo de funciones RFC llamados no existente en el sistema origen pero si debe existir en el sistema destino.
Si se produjera un error en la ejecución de un módulo de funciones RFC entonces los mensaje de error serán devueltos por el sistema romoto y alojamos en las siguientes variables del sistema:
- SY-MSGID
- SY-MSGTY
- SY-MSGNO
- SY-MSGV1
- SY-MSGV2
- SYMSGV3
- SY-MSGV4
COMO CREAMOS UN MÓDULO DE FUNCIONES RFC:
Debemos acceder a la bibloteca de funciones correspondiete a la transaccion estándar SE37 y se completan los mismos parámetros que completamos para crear un módulo de funciones normales, a excepción de que se debe seleccionar en la solapa Atributos la opción Módulo de acceso remoto.
Los parámetros que se crean con un módulo de fuciones RFC no se pueden pasar por referencia, sino que deben pasarse por valor. Esto se logra tildando el check Trasportar valores para cada parámetro en las solapas IMPORT, EXPOR y CHANGING.
A su vez, los modulos de funciones creamos como RFC pueden se utilizados como módulos de funciones normales. Esto se logro de dos maneras diferentes:
- Utilizando la declaración CALL FUNCTION DESTINATION 'NONE'
- Utilizando la declaración de un módulo de funciones normal, sin el agregado de la cláusula DESTINATION.
Exiaten tres tipos de módulo de funciones RFC:
- Sincronicos: en donde ambos sistemas deben estar disponibles al momento de la llamada del módulo de funciones. Estos módulo de funciones RFC esán basados en una comunicación sincronica.
- Transacciones: en los sistemas de origen y de destino no necesitan estar disponibles al momento de la llamada al módulos de funciones
Para crear un módulo de funciones RFC transaccional debemos utilizar el sufijo IN BACKGROUND TASK.
Tablas ARFCSSTATE y ARFCSDATA: son tablas bese de datosd del sistema SAP que almasenan informacion relacionada a la llamada de módulo de funciones en el sistema. Utilizamos la transacción stándar SM58.
Utilisamos el tipo de módulos de funciones RFC transaccion para ciertos casos especificos de actualizacionessino se realicen forma inmediata sino recien cuando el programa llamador ejecuta la sentencia COMMIT WORK
- Asincrónicos: en donde el programa llamador, llama al módulo de funciones RFC e inmediatamente después termina su procesamiento. Luego el módulo de funciones RFC ejecuta indepencientemente del programa llamador.
- Para crear un módulo de funciones RFC asincrónico debemos utilizar elsufijo STARTING NEW TASK
 
 
 
Sobre el autor
Publicación académica de Javier Miguel Angel Barcelo, en su ámbito de estudios para la Carrera Consultor ABAP.
Javier Miguel Angel Barcelo
Profesión: Militar - Argentina - Legajo: DQ34X
✒️Autor de: 107 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: PartTime
Certificación Académica de Javier Angel