Share via


X12-berichten uitwisselen in B2B-werkstromen met behulp van Azure Logic Apps

Van toepassing op: Azure Logic Apps (Verbruik + Standard)

Als u X12-berichten wilt verzenden en ontvangen in werkstromen die u maakt met behulp van Azure Logic Apps, gebruikt u de X12-connector . Deze connector biedt bewerkingen die X12-communicatie ondersteunen en beheren.

In deze handleiding ziet u hoe u de coderings- en decoderingsacties voor X12 toevoegt aan een bestaande werkstroom voor logische apps. U kunt elke trigger gebruiken met de X12-acties. In de voorbeelden in deze handleiding wordt de aanvraagtrigger gebruikt.

Technische naslaginformatie over connectoren

De X12-connector heeft verschillende versies, op basis van het type logische app en de hostomgeving.

Logic-app Milieu Connector-versie
Verbruik Multitenant Azure Logic Apps De door X12 beheerde connector, die wordt weergegeven in de galerie met connectors onder Gedeeld. De X12-connector heeft één trigger en meerdere acties. U kunt elke trigger gebruiken die geschikt is voor uw scenario. Zie voor meer informatie:

- Naslaginformatie over beheerde X12-connectors
- X12 berichtlimieten
Standaard Azure Logic Apps met één tenant, App Service Environment v3 (alleen Windows-abonnementen) en hybride implementatie X12 ingebouwde connector, die wordt weergegeven in de galerie met connectors onder Ingebouwd en X12 beheerde connector, die wordt weergegeven in de galerie met connectors onder Gedeeld. De door X12 beheerde connector heeft één trigger en meerdere acties. De ingebouwde X12-connector biedt alleen acties. U kunt elke trigger gebruiken die geschikt is voor uw scenario.

De ingebouwde versie verschilt op de volgende manieren:

- De ingebouwde versie heeft rechtstreeks toegang tot virtuele Azure-netwerken. U hebt geen on-premises gegevensgateway nodig.

- De ingebouwde versie biedt een hogere doorvoer en lagere latentie.

Zie voor meer informatie:

- Naslaginformatie over beheerde X12-connectors
- Ingebouwde X12-connectorbewerkingen
- X12-berichtlimieten

Ingebouwde X12-bewerkingen

In de volgende secties worden de ingebouwde X12-connectorbewerkingen en de bijbehorende parameters beschreven:

X12 decoderen

Bewerkings-id: x12Decode

Decoderen van een X12-bericht door plat bestand te converteren naar XML-indeling.

Parameterwaarden
Weergavenaam JSON-naam Vereist Typologie Beschrijving
Bericht om te decoderen messageToDecode Ja Snaar / Touwtje Het X12-bericht om te decoderen.
B2B-tracerings-id b2bTrackingId Nee Snaar / Touwtje De B2B-tracerings-id.

X12 coderen

Bewerkings-id: x12Encode

Codeert een X12-bericht door XML te converteren naar platte bestandsindeling.

Parameterwaarden
Weergavenaam JSON-naam Vereist Typologie Beschrijving
Bericht om te coderen messageToEncode Ja Snaar / Touwtje Het X12-bericht dat moet worden gecodeerd.
Afzenderidentiteit Afzenderkwalificatie senderIdentity.qualifier Nee Snaar / Touwtje De kwalificatie van de afzender.
Afzenderidentiteit Afzender-identificatie senderIdentity.value Nee Snaar / Touwtje De afzender-id.
Ontvangeridentiteit Ontvangerkwalificatie receiverIdentity.qualifier Nee Snaar / Touwtje De ontvanger kwalificatie.
Ontvangeridentiteit Ontvanger-ID receiverIdentity.value Nee Snaar / Touwtje De ontvanger-id.
Naam van X12-overeenkomst agreementName Nee Snaar / Touwtje De naam van de X12-overeenkomst.
B2B-tracerings-id b2bTrackingId Nee Snaar / Touwtje De B2B-tracerings-id.

X12-batch coderen

Bewerkings-id: x12BatchEncode

Codeert een X12-berichtenbatch door XML te converteren naar platte bestandsindeling.

Parameterwaarden
Weergavenaam JSON-naam Vereist Typologie Beschrijving
Batchberichten batchMessage.items Ja Array Het X12-bericht voor codering.
Bericht-ID batchMessage.items.messageId Ja Snaar / Touwtje De unieke id van het batch-item.
Content batchMessage.items.content Ja Snaar / Touwtje De inhoud van het batch-item.
Batchnaam batchMessage.batchName Nee Snaar / Touwtje De batchnaam.
Partitienaam batchMessage.partitionName Nee Snaar / Touwtje De partitienaam.
Afzenderidentiteit Afzenderkwalificatie senderIdentity.qualifier Nee Snaar / Touwtje De kwalificatie van de afzender.
Afzenderidentiteit Afzender-identificatie senderIdentity.value Nee Snaar / Touwtje De afzender-id.
Ontvangeridentiteit Ontvangerkwalificatie receiverIdentity.qualifier Nee Snaar / Touwtje De ontvanger kwalificatie.
Ontvangeridentiteit Ontvanger-ID receiverIdentity.value Nee Snaar / Touwtje De ontvanger-id.
Naam van X12-overeenkomst agreementName Nee Snaar / Touwtje De naam van de X12-overeenkomst.
B2B-tracerings-id b2bTrackingId Nee Snaar / Touwtje De B2B-tracerings-id.

Vereisten

  • Een Azure-account en -abonnement. Als u nog geen Azure-abonnement hebt, meldt u zich aan voor een gratis Azure-account.

  • De resource en werkstroom van de logische app waar u de X12-bewerkingen wilt gebruiken.

    Voor meer informatie, zie:

  • Een integratieaccountresource voor het definiëren en opslaan van artefacten voor gebruik in bedrijfsintegratie en B2B-werkstromen.

    • Zowel uw integratieaccount als de resource van de logische app moeten zich in hetzelfde Azure-abonnement en dezelfde Azure-regio bevinden.

    • Definieert ten minste twee handelspartners die deelnemen aan de X12-bewerking die in uw werkstroom wordt gebruikt. De definities voor beide partners moeten dezelfde X12-bedrijfsidentiteitskwalificatie gebruiken.

    • Definieert een X12-overeenkomst tussen de handelspartners die deelnemen aan uw werkstroom. Voor elke overeenkomst zijn een hostpartner en een gastpartner vereist. De inhoud in de berichten tussen u en de andere partner moet overeenkomen met het overeenkomsttype. Zie X12-berichtinstellingen voor informatie over overeenkomstinstellingen die u kunt gebruiken bij het ontvangen en verzenden van berichten.

      Belangrijk

      Als u werkt met HIPAA-schema's (Health Insurance Portability and Accountability Act), moet u een schemaReferences sectie toevoegen aan uw overeenkomst. Zie HIPAA-schema's en berichttypen voor meer informatie.

    • Definieert de schema's die moeten worden gebruikt voor XML-validatie.

      Belangrijk

      Als u werkt met HIPAA-schema's (Health Insurance Portability and Accountability Act), moet u HIPAA-schema's en berichttypen controleren.

  • Voordat u met X12-bewerkingen aan de slag gaat, moet u uw logische app Verbruik koppelen of uw standaard logische app koppelen aan een integratieaccount.

    Wanneer u een X12-bewerking toevoegt, moet u ook een verbinding maken met het integratieaccount. U kunt de verbinding maken wanneer u de X12-bewerking aan uw werkstroom toevoegt.

X12-berichten coderen

De bewerking Coderen naar X12-bericht voert de volgende taken uit:

  • Lost de overeenkomst op door overeenkomende eigenschappen van de afzender- en ontvangercontext op te lossen.

  • Serialiseert de Electronic Data Interchange (EDI) en converteert XML-gecodeerde berichten naar EDI-transactiesets in de uitwisseling.

  • Past header- en trailersegmenten van transactiesets toe.

  • Genereert een uitwisselingsbeheernummer, een groepsbeheernummer en een transactiesetbeheernummer voor elke uitgaande uitwisseling.

  • Vervangt scheidingstekens in de nettoladinggegevens.

  • Valideert EDI- en partnerspecifieke eigenschappen.

    • Schemavalidatie van transactiesetgegevenselementen op basis van het berichtschema.
    • EDI-validatie voor transactiesetgegevenselementen.
    • Uitgebreide validatie voor transactiesetgegevenselementen.
  • Vraagt een technische en functionele bevestiging aan, indien geconfigureerd.

    • Hiermee wordt een technische bevestiging gegenereerd als gevolg van headervalidatie. De technische bevestiging rapporteert de status van de verwerking van een uitwisselingskop en trailer door de adresontvanger.
    • Genereert een functionele bevestiging als gevolg van de validatie van de hoofdtekst. De functionele bevestiging rapporteert elke fout die is opgetreden tijdens het verwerken van het ontvangen document.

Volg deze stappen om berichten te coderen met de X12-connector:

  1. Open in Azure Portal de resource en werkstroom van uw logische app in de ontwerpfunctie.

  2. Volg deze algemene stappen in de ontwerper om de X12-actie genaamd Coderen naar X12-bericht bij overeenkomstnaam aan uw werkstroom toe te voegen.

    Notitie

    Als u in plaats daarvan de actie Coderen naar X12-bericht per identiteit wilt gebruiken, moet u later verschillende parameterwaarden opgeven, zoals de afzender-id en ontvanger-id die is opgegeven door uw X12-overeenkomst. U moet ook de waarde van het XML-bericht dat moet worden gecodeerd opgeven, dat u kunt selecteren als de uitvoer van de trigger of een voorgaande actie.

  3. Wanneer u wordt gevraagd om een verbinding met uw integratieaccount te maken, geeft u de volgende informatie op:

    Kenmerk Vereist Beschrijving
    Naam verbinding Ja Een naam voor de verbinding.
    Id van integratieaccount Ja De resource-id voor uw integratieaccount, die de volgende indeling heeft:

    /subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Logic/integrationAccounts/<integration-account-name>

    Bijvoorbeeld:
    /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/integrationAccount-RG/providers/Microsoft.Logic/integrationAccounts/myIntegrationAccount

    Volg deze stappen om deze resource-id te vinden:

    1. Open uw integratieaccount in Azure Portal.
    2. Selecteer Overzicht op de zijbalk van het integratieaccount.
    3. Selecteer JSON-weergave op de pagina Overzicht.
    4. Kopieer de waarde uit de eigenschap Resource-id .
    SAS-URL van integratieaccount Ja De eindpunt-URL van de aanvraag die gebruikmaakt van SAS-verificatie (Shared Access Signature) om toegang te bieden tot uw integratieaccount. Deze callback-URL heeft de volgende indeling:

    https://<request-endpoint-URI>sp=<permissions>sv=<SAS-version>sig=<signature>

    Bijvoorbeeld:
    https://prod-04.west-us.logic-azure.com:443/integrationAccounts/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb?api-version=2015-08-1-preview&sp=XXXXXXXXX&sv=1.0&sig=aB1cD2eF-3gH4iJ5kL6-mN7oP8qR

    Volg deze stappen om deze URL te vinden:

    1. Open uw integratieaccount in Azure Portal.
    2. Selecteer in de zijbalk van het integratieaccount onder Instellingen de callback-URL.
    3. Kopieer de waarde uit de eigenschap Gegenereerde callback-URL .
    Grootte van besturingselementnummerblok Nee De blokgrootte van controlenummers die moeten worden gereserveerd vanuit een overeenkomst voor scenario's met hoge doorvoer.

    Voorbeeld:

    De schermopname toont het Azure Portal, een werkstroom met de actie genaamd Coderen naar X12-bericht op basis van overeenkomstnaam, en actieverbindingsinformatie.

  4. Wanneer u klaar bent, selecteert u Nieuwe maken.

  5. Geef in het deelvenster actie-informatie X12 de volgende waarden op:

    Kenmerk Vereist Beschrijving
    Naam van X12-overeenkomst Ja De X12-overeenkomst die moet worden gebruikt.
    XML-bericht om te coderen Ja Het XML-bericht dat moet worden gecodeerd.
    Geavanceerde parameters Nee Meer parameters die u kunt selecteren:

    - Scheidingsteken voor gegevenselementen
    - Onderdeelscheidingsteken
    - Vervangend teken
    - Segmenteindteken
    - Achtervoegsel segmenteindteken
    - Versienummer van besturingselement (ISA12)
    - Id/code van toepassingszender GS02
    - Toepassingsontvanger-/code GS03

    Zie X12-berichtinstellingen voor meer informatie.

    U kunt bijvoorbeeld de Body uitvoer van de aanvraagtrigger gebruiken als de payload van het XML-bericht.

    Voer de volgende stappen uit om deze uitvoer te zoeken en te selecteren:

    1. Selecteer in het vak XML-bericht om te coderen en selecteer vervolgens het bliksemicoon om de lijst met dynamische inhoud te openen.

    2. Selecteer in de lijst onder Wanneer een HTTP-bericht wordt ontvangen, Hoofdtekst.

    Schermopname toont een actie genaamd 'Coderen naar X12-bericht op basis van overeenkomstnaam met gespecificeerde parameters'.

X12-berichten decoderen

De berichtbewerking X12 decoderen voert de volgende taken uit:

  • Valideert de envelop tegen handelspartnerovereenkomst.

  • Valideert EDI- en partnerspecifieke eigenschappen.

    • EDI structurele validatie en uitgebreide schemavalidatie
    • Structurele validatie van envelop door uitwisseling
    • Schemavalidatie van de envelop op basis van het besturingsschema
    • Schemavalidatie van de gegevenselementen van de transactieset op basis van het berichtschema
    • EDI-validatie voor gegevenselementen van transactieset
  • Controleert of de controlenummers voor de uitwisseling, groep en transactieset geen duplicaten zijn.

    • Controleert het uitwisselingsbeheernummer tegen eerder ontvangen uitwisselingen.
    • Hiermee wordt het groepsbeheernummer gecontroleerd op andere groepsbeheernummers in de uitwisseling.
    • Hiermee wordt het controlenummer van de transactieset gecontroleerd op andere transactiesetbeheernummers in die groep.
  • Splitst een uitwisseling in transactiesets of behoudt de gehele uitwisseling:

    • Splits de uitwisseling in transactiesets of onderbreekt transactiesets bij fout: Elke transactieset parseren. De X12-decodeeractie voert alleen de transactiesets uit waarop de validatie badMessagesmislukt en voert de resterende transactiesets uit op goodMessages.

    • Splits de uitwisseling in transactiesets of onderbreekt de uitwisseling op fout: Elke transactieset parseren. Als een of meer transactiesets in de uitwisselingsvalidatie mislukken, voert de X12-decoderen alle transactiesets in die uitwisseling uit naar badMessages.

    • Behoud de uitwisselings- of onderbrekingstransactiesets bij fout: behoud de uitwisseling en het verwerken van de gehele batch-uitwisseling. De X12-decodeeractie voert alleen de transactiesets uit waarop de validatie badMessagesmislukt en voert de resterende transactiesets uit op goodMessages.

    • Behoud de uitwisseling of onderbreking van de uitwisseling op fout: behoud de uitwisseling en het verwerken van de gehele batch-uitwisseling. Als een of meer transactiesets in de uitwisselingsvalidatie mislukken, voert de X12-decoderen alle transactiesets in die uitwisseling uit naar badMessages.

  • Hiermee wordt een technische en functionele bevestiging gegenereerd, indien geconfigureerd.

    • Hiermee wordt een technische bevestiging gegenereerd als gevolg van headervalidatie. De technische bevestiging rapporteert de status van de verwerking van een uitwisselingskop en trailer door de adresontvanger.
    • Genereert een functionele bevestiging als gevolg van de validatie van de hoofdtekst. De functionele bevestiging rapporteert elke fout die is opgetreden tijdens het verwerken van het ontvangen document.

Volg deze stappen om X12-berichten in uw werkstroom te decoderen met de X12-connector:

  1. Open in Azure Portal de resource en werkstroom van uw logische app in de ontwerpfunctie.

  2. Volg deze algemene stappen in de ontwerpfunctie om de X12-actie genaamd Decode X12 message aan uw werkstroom toe te voegen.

  3. Wanneer u wordt gevraagd om een verbinding met uw integratieaccount te maken, geeft u de volgende informatie op:

    Kenmerk Vereist Beschrijving
    Naam verbinding Ja Een naam voor de verbinding.
    Id van integratieaccount Ja De resource-id voor uw integratieaccount, die de volgende indeling heeft:

    /subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Logic/integrationAccounts/<integration-account-name>

    Bijvoorbeeld:
    /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/integrationAccount-RG/providers/Microsoft.Logic/integrationAccounts/myIntegrationAccount

    Volg deze stappen om deze resource-id te vinden:

    1. Open uw integratieaccount in Azure Portal.
    2. Selecteer Overzicht op de zijbalk van het integratieaccount.
    3. Selecteer JSON-weergave op de pagina Overzicht.
    4. Kopieer de waarde uit de eigenschap Resource-id .
    SAS-URL van integratieaccount Ja De eindpunt-URL van de aanvraag die gebruikmaakt van SAS-verificatie (Shared Access Signature) om toegang te bieden tot uw integratieaccount. Deze callback-URL heeft de volgende indeling:

    https://<request-endpoint-URI>sp=<permissions>sv=<SAS-version>sig=<signature>

    Bijvoorbeeld:
    https://prod-04.west-us.logic-azure.com:443/integrationAccounts/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb?api-version=2015-08-1-preview&sp=XXXXXXXXX&sv=1.0&sig=aB1cD2eF-3gH4iJ5kL6-mN7oP8qR

    Volg deze stappen om deze URL te vinden:

    1. Open uw integratieaccount in Azure Portal.
    2. Selecteer in de zijbalk van het integratieaccount onder Instellingen de callback-URL.
    3. Kopieer de waarde uit de eigenschap Gegenereerde callback-URL .
    Grootte van besturingselementnummerblok Nee De blokgrootte van controlenummers die moeten worden gereserveerd vanuit een overeenkomst voor scenario's met hoge doorvoer.

    Voorbeeld:

    Schermopname van Azure Portal, werkstroom met actie X12-bericht decoderen en actieverbindingsgegevens.

  4. Wanneer u klaar bent, selecteert u Nieuwe maken.

  5. Geef in het vak X12-actiegegevens de volgende waarden op:

    Kenmerk Vereist Beschrijving
    X12-bericht met plat bestand om te decoderen Ja Het X12-bericht in platte bestandsindeling om te decoderen

    Opmerking: de nettolading van het XML-bericht of de inhoud in een berichtmatrix is base64 gecodeerd. U moet een expressie gebruiken waarmee deze inhoud wordt verwerkt. De volgende expressie verwerkt bijvoorbeeld de inhoud in een berichtmatrix als XML met behulp van de xml()base64ToBinary(), en item() functies:

    xml(base64ToBinary(item()?['Body']))
    Geavanceerde parameters Nee Deze bewerking bevat de volgende andere parameters:

    - Interchange behouden
    - Interchange on Error onderbreken

    Zie X12-berichtinstellingen voor meer informatie.

    U kunt bijvoorbeeld de uitvoer van de hoofdtekst van de aanvraagtrigger gebruiken als de nettolading van het XML-bericht, maar u moet deze inhoud eerst verwerken zoals wordt weergegeven in de volgende expressie:

    xml(base64ToBinary(item()?['Body']))

    Ga als volgt te werk om deze taak te voltooien:

    1. Selecteer in het X12 flat file bericht om te decoderen het vak, en selecteer vervolgens het functiepictogram om de expressie-editor te openen.

    2. Voer in het vak voor de expressie-editor de volgende expressie in, die verwijst naar de uitvoer van Body van de Request-trigger.

      xml(base64ToBinary(string(triggerBody())))

    3. Wanneer u klaar bent, selecteert u Toevoegen.

    Schermopname van een actie met de naam X12-bericht decoderen met opgegeven parameters.