Intercambio de mensajes de RosettaNet para la integración empresarial B2B con flujos de trabajo en Azure Logic Apps

Se aplica a: Azure Logic Apps (consumo)

Para enviar y recibir mensajes de RosettaNet en flujos de trabajo que cree mediante Azure Logic Apps, puede usar el conector de RosettaNet, que proporciona acciones que administran y admiten la comunicación de conformidad con las normas de RosettaNet. RosettaNet es un consorcio sin ánimo de lucro que ha establecido procesos estándar para compartir información comercial. Estos estándares se usan habitualmente en procesos de la cadena de suministro y están muy extendidos en el sector de los semiconductores, la electrónica y la logística. El consorcio RosettaNet crea y mantiene procesos de interfaz de asociado (PIP), que proporcionan definiciones de procesos comerciales comunes para toda la mensajería de RosettaNet. RosettaNet se basa en el lenguaje XML y define directrices de mensajería, interfaces para procesos comerciales y marcos de implementación para la comunicación entre compañías. Para más información, consulte el sitio de RosettaNet.

El conector se basa en la versión 2.0.01 de RosettaNet Implementation Framework (RNIF) y admite todos los PIP definidos en esta versión. RNIF es un marco de aplicación de red abierta que permite a los asociados de negocio ejecutar en colaboración los PIP de RosettaNet. Este marco de trabajo define la estructura del mensaje, la necesidad de confirmaciones, la codificación de extensiones multipropósito de correo Internet (MIME) y la firma digital. La comunicación con el asociado puede ser sincrónica o asincrónica. El conector ofrece las funcionalidades siguientes:

  • Recibir o descodificar mensajes de RosettaNet.
  • Enviar o codificar mensajes de RosettaNet.
  • Esperar la respuesta y la generación de una notificación de error.

En esta guía paso a paso se muestra cómo enviar y recibir mensajes de RosettaNet en los flujos de trabajo mediante Azure Logic Apps y el conector de RosettaNet mediante las siguientes tareas:

  • Agregue una configuración de proceso PIP, si aún no la tiene.
  • Cree un acuerdo de RosettaNet.
  • Agregue una acción que reciba o descodifique los mensajes de RosettaNet.
  • Agregue una acción que envíe o codifique los mensajes de RosettaNet.

Conceptos de RosettaNet

Los siguientes conceptos y términos son únicos de la especificación de RosettaNet y son importantes saber cuándo se crean flujos de trabajo de integración basados en RosettaNet:

  • PIP

    La organización RosettaNet crea y mantiene los PIP, que proporcionan definiciones de procesos de negocio comunes para toda la mensajería de RosettaNet. Cada especificación de PIP proporciona un archivo de definición de tipo de documento (DTD) y un documento de guía de mensajes. El archivo DTD define la estructura del mensaje de contenido del servicio. El documento de guía de mensajes, que es un archivo HTML en lenguaje natural, especifica las restricciones a nivel de elemento. Juntos, estos archivos proporcionan una definición completa del proceso empresarial.

    Los PIP se clasifican por una función empresarial de alto nivel, o clúster, y una subfunción, o segmento. Por ejemplo, "3A4" es el PIP para el pedido de compra, aunque "3" es la función de administración de pedidos, y "3A" es la subfunción de cotización y entrada de pedidos. Para más información, consulte el sitio de RosettaNet.

  • Acción

    Los mensajes de acción, que son parte de un PIP, son mensajes empresariales que intercambian los asociados.

  • Señal

    Los mensajes de señal, que son parte de un PIP, son confirmaciones que se envían en respuesta a los mensajes de acción.

  • Acción única y acción doble

    Para un PIP acción única, la única respuesta es un mensaje de señal de confirmación. Para un PIP de doble acción, el iniciador recibe un mensaje de respuesta y responde con una confirmación, además del flujo de mensajes de acción única.

Referencia técnica del conector

El conector de RosettaNet solo está disponible para los flujos de trabajo de aplicación lógica de consumo.

Aplicación lógica Entorno Versión del conector
Consumo Azure Logic Apps multiinquilino El conector administrado, que aparece en el diseñador en la etiqueta Standard. El conector de RosettaNet solo proporciona acciones, pero puede usar cualquier desencadenador que funcione para su escenario. Para más información, revise la siguiente documentación:

- Operaciones del conector de RosettaNet
- Límites del protocolo B2B para tamaños de mensaje
- Conectores administrados en Azure Logic Apps
Consumo Entorno del servicio de integración (ISE) El conector integrado, que aparece en el diseñador con la etiqueta CORE. El conector de RosettaNet solo proporciona acciones, pero puede usar cualquier desencadenador que funcione para su escenario. Para más información, revise la siguiente documentación:

- Operaciones del conector de RosettaNet
- Límites de mensajes ISE
- Conectores administrados en Azure Logic Apps

Operaciones de RosettaNet

El conector de RosettaNet no tiene desencadenadores. En la tabla siguiente se describen las acciones que proporciona el conector de RosettaNet para establecer la seguridad y confiabilidad al transmitir mensajes:

Acción Descripción
Acción RosettaNet Encode Envíe mensajes de RosettaNet mediante codificación conforme con las normas de RosettaNet.
Acción RosettaNet Decode Reciba mensajes de RosettaNet mediante descodificación conforme con las normas de RosettaNet.
Acción RosettaNet wait for response Haga que el host espere una respuesta de RosettaNet o un mensaje de señal del receptor.

Prerrequisitos

  • Una cuenta y una suscripción de Azure. Si no tiene una suscripción, cree una cuenta gratuita.

  • El recurso de aplicación lógica de consumo y el flujo de trabajo en los que quiere usar las operaciones de RosettaNet.

  • Una cuenta de integración para almacenar el acuerdo y otros artefactos de negocio a negocio (B2B).

    Importante

    Para trabajar conjuntamente, tanto la cuenta de integración como el recurso de aplicación lógica deben existir en la misma suscripción y región de Azure. Para usar artefactos de la cuenta de integración en el flujo de trabajo, asegúrese de vincular el recurso de la aplicación lógica a la cuenta de integración.

  • Al menos dos asociados definidos en su cuenta de integración y usan el calificador DUNS en Identidades de negocio en Azure Portal.

    Nota:

    Asegúrese de seleccionar DUNS como calificador, que puede encontrar cerca de la parte inferior de la lista Calificador, y no 1 - D-U-N-S (Dun & Bradstreet).

  • Certificados opcionales para cifrar, descifrar o firmar los mensajes que carga en la cuenta de integración. Los certificados son necesarios solo si usa firmas o cifrado.

Agregar una configuración de procesos PIP

Para enviar o recibir mensajes de RosettaNet, la cuenta de integración requiere una configuración de proceso PIP, si aún no la tiene. La configuración de procesos almacena todas las características de configuración de PIP. Entonces podrá hacer referencia a esta configuración al crear un acuerdo con un asociado.

  1. En Azure Portal, vaya a la cuenta de integración.

  2. En el menú de navegación de la cuenta de integración, en Configuración, seleccione RosettaNet PIP.

    Captura de pantalla de Azure Portal y la página de la cuenta de integración. En el menú de navegación, RosettaNet PIP está seleccionado.

  3. En la página RosettaNet PIP, seleccione Agregar. En el panel Agregar proceso de interfaz de asociado, escriba los detalles de PIP.

    Captura de pantalla de la página RosettaNet PIP, con Agregar seleccionado. El panel Agregar proceso de interfaz de asociado contiene cuadros para el nombre, el código y la versión.

    Propiedad Obligatorio Descripción
    Nombre Su nombre de PIP.
    Código de PIP Código PIP de tres dígitos. Para más información, consulte PIP de RosettaNet.
    Versión de PIP El número de versión de PIP, que depende del código de PIP seleccionado.

    Para más información sobre estas propiedades de PIP, visite el sitio web de RosettaNet.

  4. Cuando haya terminado, seleccione Aceptar para crear la configuración de PIP.

  5. Para ver o editar la configuración del proceso, seleccione el PIP y Editar como JSON.

    Todos los valores de configuración de procesos provienen de las especificaciones de PIP. Azure Logic Apps rellena la mayoría de los campos con los valores predeterminados, que son los que se suelen usar con estas propiedades.

    Captura de pantalla de la página RosettaNet PIP, con Editar como JSON y un PIP seleccionado. En Editar como JSON se ven las propiedades PIP codificadas.

  6. Confirme que la configuración se corresponda con los valores de la especificación de PIP adecuada y satisfaga sus necesidades empresariales. Si es necesario, actualice los valores de JSON y guarde esos cambios.

Crear un acuerdo de RosettaNet

  1. En Azure Portal, vaya a la cuenta de integración.

  2. En el menú de navegación de la cuenta de integración, en Configuración, seleccione Acuerdos.

    Captura de pantalla que muestra Azure Portal con la página de la cuenta de integración abierta. En el menú de navegación, se selecciona la opción Contratos.

  3. En la página Acuerdos, seleccione Agregar. En Agregar, escriba los detalles del acuerdo.

    Captura de pantalla que muestra la página Contratos con la opción Agregar seleccionada. En el panel denominado Agregar, aparecen cuadros para el nombre y el tipo del contrato y para la información del asociado.

    Propiedad Obligatorio Descripción
    Nombre Nombre del acuerdo.
    Tipo de contrato Tipo de acuerdo. Seleccione RosettaNet.
    Asociado host Organización que configura el acuerdo. Un contrato requiere un asociado anfitrión y uno invitado.
    Identidad del host Un identificador del partner anfitrión.
    Asociado invitado Organización que está haciendo negocios con el asociado de host. Un contrato requiere un asociado anfitrión y uno invitado.
    Identidad del invitado Un identificador de la identidad invitada.
    Configuración de recepción Varía Propiedades que se aplican a todos los mensajes que recibe un asociado de host.
    Configuración de envío Varía Propiedades que se aplican a todos los mensajes que envía un asociado de host.
    Referencias de PIP de RosettaNet Las referencias de PIP para el acuerdo. Todos los mensajes de RosettaNet requieren configuraciones de PIP.
  4. Para configurar el acuerdo para recibir mensajes entrantes del asociado invitado, seleccione Configuración de recepción.

    1. Para habilitar la firma o el cifrado para los mensajes entrantes, en Mensajes, seleccione Debe firmarse el mensaje o Debe cifrarse el mensaje, respectivamente.

      Propiedad Obligatorio Descripción
      Debe firmarse el mensaje No Opción de firma de los mensajes entrantes con el certificado seleccionado
      Certificate Sí, si la firma está habilitada El certificado que se va a usar para firmar
      Habilitar el cifrado de mensajes No Opción de cifrado de los mensajes entrantes con el certificado seleccionado
      Certificate Sí, si el cifrado está habilitado El certificado que se usará para el cifrado
    2. En cada caso, seleccione el certificado de la cuenta de integración que desee usar para la firma o el cifrado.

    Captura de pantalla de la página Configuración de recepción, con opciones para firmar y cifrar los mensajes e introducir certificados.

  5. Para configurar el acuerdo para enviar mensajes al asociado invitado, seleccione Configuración de envío.

    1. Para habilitar la firma o el cifrado para los mensajes salientes, en Mensajes, seleccione Habilitar la firma de mensajes o Habilitar el cifrado de mensajes, respectivamente. En cada caso, seleccione el algoritmo y el certificado de la cuenta de integración que desee usar para la firma o el cifrado.

      Propiedad Obligatorio Descripción
      Habilitar la firma de mensajes No Opción de firma de los mensajes salientes con el algoritmo y el certificado de firma seleccionados
      Algoritmo de firma Sí, si la firma está habilitada El algoritmo de firma para usar, según el certificado seleccionado
      Certificate Sí, si la firma está habilitada El certificado que se va a usar para firmar
      Habilitar el cifrado de mensajes No Opción de cifrado de los mensajes salientes con el algoritmo y el certificado de cifrado seleccionados
      Algoritmo de cifrado Sí, si el cifrado está habilitado El algoritmo de cifrado para usar, según el certificado seleccionado
      Certificate Sí, si el cifrado está habilitado El certificado que se usará para el cifrado
    2. En Puntos de conexión, especifique las direcciones URL necesarias para enviar mensajes de acción y confirmaciones.

      Propiedad Obligatorio Descripción
      Dirección URL de acción La dirección URL que se usará para enviar mensajes de acción. La dirección URL es un campo obligatorio tanto para los mensajes sincrónicos como asincrónicos.
      Acknowledgment URL (Dirección URL de confirmación) La dirección URL que se usará para enviar mensajes de confirmación. La dirección URL es un campo obligatorio para los mensajes asincrónicos.

    Captura de pantalla que muestra la página Configuración de envío, con opciones para firmar y cifrar mensajes y para escribir algoritmos, certificados y puntos de conexión.

  6. Para configurar el acuerdo con las referencias de PIP de RosettaNet para los asociados, seleccione Referencias de PIP de RosettaNet. En Nombre de PIP, seleccione el nombre del PIP que creó anteriormente.

    Captura de pantalla en la que se muestra una tabla de información de PIP con una fila. Esta última contiene valores predeterminados excepto el nombre, MyPIPConfig, que está seleccionado.

    La selección rellena las propiedades restantes, que se basan en el PIP que configuró en la cuenta de integración. Si es necesario, puede cambiar el Rol de PIP.

    Captura de pantalla que muestra una tabla con información de PIP. La fila del PIP denominado MyPIPConfig muestra información precisa.

Después de completar estos pasos, estará listo para enviar o recibir mensajes de RosettaNet.

Recibir o descodificar mensajes de RosettaNet

  1. En Azure Portal, abra el flujo de trabajo de la aplicación lógica de consumo en el diseñador.

    El flujo de trabajo ya debería tener un desencadenador y cualquier otra acción que quiera ejecutar antes de agregar la acción de RosettaNet. Este ejemplo continúa con el desencadenador Request.

  2. En el desencadenador o la acción, seleccione Nuevo paso.

    Captura de pantalla del diseñador. En el desencadenador Request, Nuevo paso está seleccionado.

  3. En el cuadro de búsqueda Choose an operation (Elegir una operación), escriba Todo. En el cuadro de búsqueda, escriba rosettanet. De la lista de acciones, seleccione la acción denominada RosettaNet Decode.

    Captura de pantalla del diseñador. El cuadro de búsqueda Elija una operación contiene rosettanet y la acción RosettaNet Decode está seleccionada.

  4. Proporcione la información para las propiedades de la acción:

    Captura de pantalla de la acción RosettaNet Decode donde los cuadros están disponibles para el mensaje, los encabezados y el rol.

    Propiedad Obligatorio Descripción
    Mensaje El mensaje de RosettaNet para descodificar.
    Encabezados Los encabezados HTTP que proporcionan los valores de la versión, que es la versión de RNIF, y el tipo de respuesta, que indica el tipo de comunicación entre los asociados y que puede ser sincrónico o asincrónico.
    Rol El rol de asociado del host en el PIP.

    La salida de la acción RosettaNet Decode incluye Señal de salida. Puede codificar esta salida y devolverla al asociado o realizar cualquier otra acción con ella.

Enviar o codificar mensajes de RosettaNet

  1. En Azure Portal, abra el flujo de trabajo de la aplicación lógica de consumo en el diseñador.

    El flujo de trabajo ya debería tener un desencadenador y cualquier otra acción que quiera ejecutar antes de agregar la acción de RosettaNet. Este ejemplo continúa con el desencadenador Request.

  2. En el desencadenador o la acción, seleccione Nuevo paso.

    Captura de pantalla del diseñador. En el desencadenador Request, Nuevo paso está seleccionado.

  3. En el cuadro de búsqueda Choose an operation (Elegir una operación), escriba Todo. En el cuadro de búsqueda, escriba rosettanet. De la lista de acciones, seleccione la acción denominada RosettaNet Encode.

    Captura de pantalla del diseñador. El cuadro de búsqueda Elija una operación contiene rosettanet y la acción RosettaNet Encode está seleccionada.

  4. Proporcione la información para las propiedades de la acción:

    Captura de pantalla de la acción RosettaNet Encode donde aparecen cuadros para el mensaje, los asociados, la información de PIP, el tipo de mensaje y el rol.

    Propiedad Obligatorio Descripción
    Mensaje El mensaje de RosettaNet para codificar.
    Asociado host El nombre del asociado host.
    Asociado invitado El nombre del asociado invitado.
    Código de PIP El código de PIP.
    Versión de PIP La versión de PIP.
    Identidad de instancia de PIP El identificador único de este mensaje de PIP.
    Tipo de mensaje El tipo de mensaje en para codificar.
    Rol El rol del asociado host.

    El mensaje codificado ahora está listo para enviarse al asociado.

  5. Para enviar el mensaje codificado, en el ejemplo siguiente se usa la acción HTTP, que se cambió de nombre a HTTP - Send encoded message to partner.

    Captura de pantalla del diseñador con una acción HTTP cuyo nombre se ha cambiado a HTTP: Send encoded message to partner, y donde se han introducido los valores de URI, encabezado y cuerpo.

    Según las normas de RosettaNet, las transacciones comerciales se consideran completas únicamente cuando se han completado todos los pasos definidos por el PIP.

  6. Una vez que el host envía el mensaje codificado al asociado, el host espera la señal y la confirmación. Para lograr esta tarea, agregue la acción denominada RosettaNet wait for response.

    Captura de pantalla de una acción RosettaNet wait for response en la que los cuadros están disponibles para el cuerpo, la identidad de la instancia de PIP, el recuento de reintentos y el rol.

    La duración que se usará para la espera y el número de reintentos se basan en la configuración de PIP en su cuenta de integración. Si no se recibe la respuesta, se genera una notificación de error. Para controlar los reintentos, coloque siempre las acciones Codificación y Espera de respuesta en un bucle Hasta.

    Captura de pantalla del diseñador. Un bucle Until contiene acciones de codificación y envío de mensajes y de espera de respuestas.

Plantillas de RosettaNet

Para acelerar el desarrollo y recomendar patrones de integración, puede usar plantillas de aplicación lógica de consumo para la descodificación y codificación de mensajes de RosettaNet. Al crear un flujo de trabajo de aplicación lógica de consumo, puede realizar selecciones de la galería de plantillas del diseñador. También puede encontrar estas plantillas en el repositorio de GitHub para Azure Logic Apps.

Captura de pantalla del diseñador. La categoría y las plantillas de Integración empresarial para descodificar y codificar los mensajes de RosettaNet están seleccionadas.

Pasos siguientes