📘DLL
Definición de DLL
Una DLL (Dynamic Link Library) es un archivo en Windows que contiene código y datos que pueden ser usados por múltiples programas al mismo tiempo. Piensa en una DLL como una caja de herramientas compartida: en lugar de que cada programa tenga su propia copia de las herramientas, todos pueden acceder a la misma caja, lo que ahorra espacio y facilita las actualizaciones.
En el contexto de SAP, las DLL son cruciales para la comunicación de sistemas externos con el servidor SAP a través de Remote Function Calls (RFC).
Uso de DLL en los RFC de SAP
Para que una aplicación que no es de SAP (por ejemplo, un programa en C++, Java, .NET o Python) pueda llamar a una función ABAP en el servidor SAP, necesita un "conector" o "librería de cliente". Estos conectores, proporcionados por SAP, se basan en un conjunto de DLLs.
La más conocida es la SAP NetWeaver RFC SDK. Cuando un desarrollador instala este SDK en un servidor o una computadora, está instalando una serie de DLLs (como sapnwrfc.dll y otras) que actúan como la interfaz de comunicación.
Proceso de comunicación (en alto nivel)
-
Instalación: El administrador de sistemas o desarrollador instala el SAP NetWeaver RFC SDK, que incluye las DLLs necesarias.
-
Configuración: La aplicación externa se configura para saber a qué servidor SAP y con qué credenciales se va a conectar.
-
Llamada RFC: El código de la aplicación externa realiza una llamada a una función expuesta por el conector (por ejemplo,
Connect(),CallFunctionModule()). -
Uso de DLL: Internamente, el conector utiliza las funciones de las DLLs para:
-
Establecer una conexión de red con el servidor de aplicaciones SAP.
-
Manejar la autenticación.
-
Serializar los datos (convertir datos del lenguaje de la aplicación externa a un formato que SAP entiende).
-
Enviar la llamada de función al servidor SAP.
-
Recibir la respuesta y deserializar los datos para que la aplicación los pueda procesar.
-
El uso de DLLs para los RFC de SAP es fundamental para la interoperabilidad. Permite que sistemas heterogéneos se integren de forma eficiente y segura con la lógica de negocio de SAP, sin necesidad de que el desarrollador conozca los detalles de bajo nivel del protocolo de comunicación.
