Resolución de acuerdos, detección de esquemas y autorización para los mensajes EDI recibidos

Cuando BizTalk Server recibe un mensaje EDI, la canalización de recepción edi realiza procesos de búsqueda, detección de esquemas y autorización del acuerdo de socios comerciales para determinar cómo procesar el mensaje.

Resolución de contrato

La canalización de recepción EDI lleva a cabo la resolución de acuerdos de socios comerciales mediante la realización de una serie de pasos para determinar si hay una coincidencia entre los campos de encabezado del mensaje y las propiedades en la definición del acuerdo. Una vez que BizTalk Server ha determinado el contrato, determina el esquema de documento que se aplica al intercambio (véase a continuación). Usa las propiedades asociadas al acuerdo coincidente y el esquema correspondiente para validar y procesar el mensaje recibido.

Para realizar la resolución del contrato, BizTalk Server continúa de la siguiente manera:

  1. Resolver el acuerdo mediante la coincidencia del calificador e identificador del remitente y el calificador e identificador del receptor en el encabezado del intercambio con los de las propiedades de un acuerdo.

  2. Si el paso 1 no funciona, resuelve el acuerdo mediante la coincidencia solo con el calificador e identificador de remitente en el encabezado del intercambio con los de las propiedades de un acuerdo. Además, dado que el primer paso no se realizó correctamente, es seguro suponer que BizTalk Server recibirá el mensaje. Por lo tanto, BizTalk Server intenta coincidir con el calificador y el identificador del receptor con lo siguiente:

    • Valores “BT” y “HostX12Recvr” (para mensajes con codificación X12) y

    • Valores “BT” y “HostEdifactRecvr” (para mensajes con codificación EDIFACT)

    Importante

    • BizTalk Server 2013 R2, 2013 y 2010: Los campos ISA5, ISA6, ISA7, ISA8, UNB2.1, UNB2.2, UNB3.1 y UNB3.2 son obligatorios en la configuración del contrato.
      • BizTalk Server campos 2009 y 2006 R2: los campos ISA7, ISA8, UNB3.1 y UNB3.2 no son obligatorios en la configuración de entidad. Si los campos se dejan en blanco, el motor de EDI generará una resolución basada en los valores de ISA5, ISA6, UNB2.1 y UNB2.2.
      • Para que las resoluciones de BizTalk Server 2009 y 2006 R2 sean compatibles con las nuevas versiones de BizTalk Server, se introducen los identificadores codificados de forma rígida (HostX12Recvr y HostEdifactRecvr) y el calificador (BT).
      • Los mensajes EDIFACT deben seguir las directrices UNECE para la sintaxis y las reglas del mensaje.
  3. Si el paso 2 no funciona, use las propiedades del acuerdo de reserva.

    En el primer paso, para X12, BizTalk Server usará los siguientes valores para hacer coincidir:

  • ISA05 (calificador de remitente)

  • ISA06 (identificador de remitente)

  • ISA07 (calificador de receptor)

  • ISA08 (identificador de receptor)

    Para EDIFACT, BizTalk Server usará los siguientes valores para hacer coincidir:

  • UNB2.1 (identificador de remitente)

  • UNB2.2 (calificador de remitente)

  • UNB3.1 (identificador de receptor)

  • UNB3.2 (calificador de receptor)

    Las propiedades del contrato usadas para la coincidencia se definen en la página Identificadores de las pestañas de acuerdo específicas de la dirección del cuadro de diálogo Propiedades del contrato.

    Estas cuatro propiedades de envío y recepción identifican el acuerdo de socio comercial de forma exclusiva. El uso de las cuatro propiedades proporciona mayor flexibilidad al procesamiento de la recepción. Por ejemplo, es posible que este método de resolución de acuerdos permita el envío de confirmaciones a varias entidades sin crear varios puertos de envío.

    Si BizTalk Server no puede resolver el contrato con los cuatro calificadores y identificadores de remitente y receptor, intentará resolver el contrato con solo el calificador y el identificador del remitente. Para X12, estos campos son ISA05 e ISA06; para EDIFACT, estos campos son UNB2.1 y UNB2.2. Al igual que con una coincidencia de propiedades de remitente y receptor, BizTalk Server coincide con los valores del encabezado de intercambio con las propiedades del contrato definidas en la página Identificadores de las pestañas de acuerdo específicas de la dirección del cuadro de diálogo Propiedades del contrato. Si solo se usa el calificador y el identificador del remitente para resolver el contrato, el calificador del receptor y el identificador deben estar indefinidos en la pestaña acuerdo bidireccional del cuadro de diálogo Propiedades del contrato.

    Si no se encuentra ningún contrato, BizTalk Server usa el acuerdo de socios comerciales de reserva, a menos que la configuración del puerto requiera autenticación. Si la configuración del puerto requiere autenticación (si se produce un error en la autenticación si se produce un error en la autenticación o si se produce un error de autenticación en la página General de las propiedades del puerto de recepción), se requiere un contrato para cualquier intercambio recibido por el puerto de recepción. En este caso, si el acuerdo no se resuelve haciendo coincidir el encabezado de intercambio con las propiedades de intercambio, no se permite usar las propiedades del acuerdo de reserva para determinar el acuerdo. El intercambio se tratará como si se hubiese producido un error en la autenticación en caso de que no se encuentre ningún acuerdo, y se suspenderá.

Nota

Un mensaje en la canalización EDI va al paso siguiente en la resolución del acuerdo hasta que el mensaje se resuelva con el paso que tiene el acuerdo en estado habilitado. Por ejemplo, si el mensaje se resuelve en el primer paso de resolución del acuerdo, pero el acuerdo se encuentra en estado deshabilitado, el mensaje va al paso siguiente para su resolución.

Detección de esquemas

Después de BizTalk Server ha determinado el contrato que se resuelve en el mensaje, debe determinar el esquema que debe usar para validar y procesar el mensaje. Para ello, usa las propiedades identificadas en la página Configuración de host local de la pestaña de acuerdo unidireccional (lado de envío) del cuadro de diálogo Propiedades del contrato.

Para determinar el esquema, BizTalk Server debe determinar, en primer lugar, el espacio de nombres del esquema. El desensamblador EDI usará un espacio de nombres predeterminado para los esquemas estándar enviados con BizTalk Server, o determinará el espacio de nombres que se usará para un esquema personalizado.

La página Configuración de host local de la pestaña acuerdo unidireccional del cuadro de diálogo Propiedades del contrato permite configurar una cuadrícula de valores para determinar un espacio de nombres personalizado. Si no se encuentra ninguna coincidencia en esa cuadrícula, el desensamblador EDI usa el espacio de nombres predeterminado en el campo Espacio de nombres de destino marcado para la fila predeterminada.

Detección de esquemas X12

Para los mensajes con codificación X12, BizTalk Server determina un espacio de nombres personalizado mediante el identificador de remitente de la aplicación (GS02) y el Id. de conjunto de transacciones (ST01) del encabezado del intercambio entrante. Intenta encontrar una coincidencia entre estos valores y los valores de las propiedades GS02 y ST01 en la cuadrícula Personalizar espacio de nombres de destino en la página Configuración del host local (en Configuración del conjunto de transacciones) de la pestaña acuerdo bidireccional del cuadro de diálogo Propiedades del contrato. Si encuentra una coincidencia, usará el espacio de nombres de destino identificado en la misma fila de la cuadrícula para determinar qué esquema nos va a validar y procesar el mensaje. En caso de que no se determine el espacio de nombres de destino, se usará el espacio de nombres de destino predeterminado. Si no se identifica ningún espacio de nombres en el campo Espacio de nombres de destino marcado para la fila predeterminada, BizTalk Server usará el espacio de nombres de destino identificado en las propiedades del contrato de reserva para los mensajes codificados con X12, que de forma predeterminada es http://schemas.microsoft.com/BizTalk/Edi/X12/2006.

Para los intercambios X12, una vez detectado el espacio de nombres de destino, BizTalk Server determina el esquema con la siguiente información:

  • El espacio de nombres de destino que acaba de detectar.

  • La versión o el lanzamiento de los primeros cinco caracteres de ST03 (si GS07 == X - Accredited Standards Committee X12). Si ST03 no está presente, no es válido o no origina la resolución del esquema, la versión viene determinada por los cinco primeros caracteres de GS08 o de ISA12 (si GS07 != X).

  • El tipo de documento en ST01.

    El desensamblador EDI concatena el tipo de codificación, la versión, el lanzamiento y el tipo de documento para determinar el nombre del esquema, por ejemplo, "X12_00401_864". A continuación, concatena el espacio de nombres de destino con el nombre del esquema, por ejemplo, http://schemas.microsoft.com/BizTalk/Edi/X12/2006/X12#X12_00401_864.

    Para un intercambio HIPAA 837 entrante, BizTalk Server admite tres esquemas HIPAA 837:

Esquema 837 Valor de GS08 en la versión 4010 Valor de GS08/ST03 en la versión 5010
Claim-Dental_837D 004010X097A1 005010X224A1
Claim-Institutional_837I 004010X096A1 005010X223A1
Claim-Professional_837P 004010X098A1 005010X222

Nota

En las versiones HIPAA, para el conjunto de transacciones 278 (Revisión de servicios de asistencia sanitaria), tanto los pares de solicitud como los de respuesta comparten el mismo valor para GS08 y ST01. En función de los valores del desencadenador en el campo BHT02, puede diferenciar entre una Solicitud / Respuesta 278 en la versión 5010:

  1. Cualquiera de los valores 01, 13 y 36 en BHT02 indica una Solicitud de revisión de servicios de asistencia sanitaria
    2. 11 en BHT02 indica la respuesta de revisión de servicios de atención médica

Detección de esquemas EDIFACT

Para mensajes con codificación EDIFACT, BizTalk Server determina un espacio de nombres personalizado mediante el tipo de mensaje (UNH2.1), el número de versión del mensaje (UNH2.2), el número de lanzamiento del mensaje (UNH2.3), el código asignado (UNH2.5), el Id. de grupo funcional (UNG2.1) y el calificador de código de envío de la aplicación (UNG2.2) del encabezado del intercambio entrante. A continuación, intenta buscar una coincidencia entre estos valores y los valores de las propiedades UNH2.1, UNH2.2, UNH2.3, UNH2.5, UNG2.1 y UNG2.2 en la cuadrícula Personalizar espacio de nombres de destino (en Configuración del conjunto de transacciones) de la pestaña acuerdo bidireccional del cuadro de diálogo Propiedades del contrato . Si encuentra una coincidencia, usará el espacio de nombres de destino identificado en la misma fila de la cuadrícula para determinar qué esquema usar para validar y procesar el mensaje. En caso de que no se determine el espacio de nombres de destino, se usará el espacio de nombres de destino predeterminado. Si no se identifica ningún espacio de nombres en el campo Espacio de nombres de destino marcado para la fila predeterminada, BizTalk Server usará el espacio de nombres de destino identificado en las propiedades del contrato de reserva para los mensajes codificados con EDIFACT, que de forma predeterminada es http://schemas.microsoft.com/BizTalk/Edi/EDIFACT/2006.

Para los intercambios EDIFACT, una vez detectado el espacio de nombres de destino, BizTalk Server determina el esquema mediante la siguiente información:

  • El espacio de nombres de destino acaba de detectarse.

  • El número de versión del mensaje en UNH2.2.

  • El número de versión del mensaje en UNH2.3.

  • El tipo de mensaje en UNH2.1.

  • El código asignado en UNH2.5.

    El desensamblador EDI concatena el tipo de codificación, la versión, el lanzamiento y el tipo de mensaje para determinar el nombre del esquema, por ejemplo, " EFACT_D94A_CONTEN". A continuación, concatena el espacio de nombres de destino con el nombre del esquema, por ejemplo, http://schemas.microsoft.com/BizTalk/Edi/Edifact/2006/EFACT#EFACT_D94A_CONTEN.

    Si UNH2.5 está presente en el mensaje, el desensamblador EDI tratará primero de encontrar un esquema coincidente usando el valor UNH2.5 como parte del nombre del esquema, por ejemplo “EFACT_D94A_CONTEN_TEST”. Si no se encuentra ningún esquema coincidente, el desensamblador EDI regresará para buscar el esquema sin el valor UNH2.5.

Authorization

BizTalk Server comprueba los valores de los campos de autorización y seguridad definidos para el acuerdo con los campos del mensaje. En caso de que haya una falta de coincidencia, BizTalk Server suspenderá el intercambio. Para los mensajes codificados con EDIFACT, estos campos son la contraseña de referencia del destinatario (UNB6.1 y UNB6.2). Para los mensajes codificados con X12, estos campos son el calificador y la información de autorización (ISA1-2), y el calificador y la información de seguridad (ISA3-4).

Consulte también

Cómo recibe BizTalk Server los mensajes EDI