Recepción de IDOC de SAP en un contexto transaccional mediante BizTalk Server
Recibir IDOC en un contexto transaccional es similar a recibir TRFC en un contexto transaccional. En tal caso, el IDOC recibido del sistema SAP contiene un TID como parte del <elemento TransactionalRfcOperationIdentifier> . El adaptador conserva este TID en una base de datos SQL. Si el código ABAP del sistema SAP que envía el IDOC tiene una instrucción "COMMIT WORK", el TID se elimina de la base de datos SQL después de que se devuelva una respuesta al sistema SAP.
La orquestación necesaria para recibir un IDOC es similar independientemente de si el IDOC se recibe en un contexto transaccional o no. Consulte Recepción de IDOC de SAP mediante BizTalk Server. Sin embargo, debe realizar ciertas tareas adicionales para asegurarse de que las IDOC se reciben en un contexto transaccional.
En tiempo de diseño, genere el esquema de un IDOC que desee recibir.
En tiempo de ejecución, asegúrese de establecer la propiedad de enlace TidDatabaseConnectionString. Esta propiedad toma el cadena de conexión para conectarse a una base de datos SQL para almacenar el TID. Un ejemplo cadena de conexión tendría el siguiente aspecto:
Data Source=<myServerAddress>;Initial Catalog=<myDataBase>;User Id=<myUsername>;Password=<myPassword>;
Para obtener más información sobre la propiedad de enlace y cómo establecerla, vea Leer sobre el adaptador de BizTalk para propiedades de enlace de mySAP Business Suite.
Importante
El Asistente para la instalación del paquete de adaptadores de BizTalk instala un script SQL, SapAdapter-DbScript-Install.sql, que el administrador de SQL Server debe ejecutar para crear una base de datos y los objetos de base de datos en SQL Server. El script se instala normalmente en la <unidad> de instalación:P rogram FilesMicrosoft BizTalk Adapter Pack.
El adaptador de SAP usa estos objetos para conservar los TID. Por lo tanto, el administrador de SQL Server debe asegurarse de que el nombre de usuario proporcione como parte del cadena de conexión tenga privilegios suficientes para ejecutar los procedimientos almacenados. También puede optar por autenticación de Windows siempre que el usuario de Windows tenga permisos suficientes para ejecutar procedimientos almacenados en la base de datos.
Asegúrese de que MSDTC está habilitado en el equipo donde está instalado el adaptador. Realice los pasos siguientes para habilitar MSDTC.
Inicie el complemento MMC de Servicios de componentes.
En el complemento MMC servicios de componentes, en el panel izquierdo, expanda Servicios de componentes, expanda Equipos, haga clic con el botón derecho en Mi equipo y haga clic en Propiedades.
En el cuadro de diálogo Propiedades de Mi equipo , haga clic en la pestaña MSDTC .
En la sección Configuración de transacciones , haga clic en el botón Configuración de seguridad .
En el cuadro de diálogo Configuración de seguridad , active la casilla Acceso de DTC de red y, dentro de ella, active la casilla Permitir clientes remotos .
En la sección Comunicación del Administrador de transacciones , active las casillas Permitir entrada y Permitir salida .
En el cuadro de diálogo Configuración de seguridad , haga clic en Aceptar.
Haga clic en Sí en el cuadro de diálogo que informa de que se reiniciará el servicio MSDTC. Una vez reiniciado el servicio MSDTC, haga clic en Aceptar en el cuadro de diálogo.
En el cuadro de diálogo Propiedades de Mi equipo , haga clic en Aceptar.
Agregue MSDTC a la lista de excepciones del Firewall de Windows, si aún no se ha agregado. Ejecute el comando siguiente.
netsh firewall set allowedprogram %windir%\system32\msdtc.exe MSDTC enable