Exchange EDI-meddelanden som batchar eller grupper mellan handelspartner i Azure Logic Apps
Gäller för: Azure Logic Apps (förbrukning)
I scenarier för företag till företag (B2B) utbyter partner ofta meddelanden i grupper eller batchar. När du skapar en batchlösning med Azure Logic Apps kan du skicka meddelanden till handelspartner och bearbeta dessa meddelanden tillsammans i batchar. Den här artikeln visar hur du kan batcharbeta EDI-meddelanden med X12 som exempel genom att skapa en logikapp för "batch-avsändare" och en logikapp för "batchmottagare".
Batchbearbetning av X12-meddelanden fungerar som att batcha andra meddelanden. Du använder en batchutlösare som samlar in meddelanden i en batch och en batchåtgärd som skickar meddelanden till batchen. Dessutom innehåller X12-batchning ett X12-kodningssteg innan meddelandena går till handelspartnern eller något annat mål. Mer information om batchutlösaren och åtgärden finns i Batch-processmeddelanden.
I den här artikeln skapar du en batchlösning genom att skapa två logikappar i samma Azure-prenumeration, Azure-region, och följa den här specifika ordningen:
En "batchmottagare" -logikapp som accepterar och samlar in meddelanden i en batch tills dina angivna villkor uppfylls för att släppa och bearbeta dessa meddelanden. I det här scenariot kodar batchmottagaren också meddelandena i batchen med hjälp av det angivna X12-avtalet eller partneridentiteterna.
Se till att du först skapar batchmottagaren så att du senare kan välja batchmålet när du skapar batch-avsändaren.
Ett logikapparbetsflöde för "batch-avsändare", som skickar meddelandena till den tidigare skapade batchmottagaren.
Kontrollera att batchmottagaren och batchsändarlogikappens arbetsflöden använder samma Azure-prenumeration och Azure-region. Om de inte gör det kan du inte välja batchmottagaren när du skapar batch-avsändaren eftersom de inte är synliga för varandra.
Förutsättningar
En Azure-prenumeration. Om du inte har en prenumeration kan du starta med ett kostnadsfritt Azure-konto.
Grundläggande kunskaper om hur du skapar arbetsflöden för logikappar. Mer information finns i Skapa ett exempel på arbetsflöde för förbrukningslogikapp i Azure Logic Apps med flera klientorganisationer.
Ett befintligt integrationskonto som är associerat med din Azure-prenumeration och som är länkat till dina logikappar.
Minst två befintliga partner i ditt integrationskonto. Varje partner måste använda X12-kvalificeraren (Standard Carrier Alpha Code) som företagsidentitet i partnerns egenskaper.
Ett befintligt X12-avtal i ditt integrationskonto.
Installera eller använd ett verktyg som kan skicka HTTP-begäranden för att testa din lösning, till exempel:
- Visual Studio Code med ett tillägg från Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge – verktyg för nätverkskonsol
- Bruno
- hårlock
Varning
För scenarier där du har känsliga data, till exempel autentiseringsuppgifter, hemligheter, åtkomsttoken, API-nycklar och annan liknande information, bör du använda ett verktyg som skyddar dina data med nödvändiga säkerhetsfunktioner, fungerar offline eller lokalt, inte synkroniserar dina data till molnet och inte kräver att du loggar in på ett onlinekonto. På så sätt minskar du risken för att exponera känsliga data för allmänheten.
Skapa X12-batchmottagare
Innan du kan skicka meddelanden till en batch måste den batchen först finnas som mål där du skickar dessa meddelanden. Så först måste du skapa logikappen "batch receiver", som börjar med Batch-utlösaren . På så sätt kan du välja logikappen för batchmottagare när du skapar logikappen "batch sender". Batch-mottagaren fortsätter att samla in meddelanden tills dina angivna villkor uppfylls för att släppa och bearbeta dessa meddelanden. Batch-mottagare behöver inte veta något om batchavsändare, men batchavsändare måste känna till målet där de skickar meddelandena.
För den här batchmottagaren anger du batchläge, namn, versionskriterier, X12-avtal och andra inställningar.
I Azure Portal eller Visual Studio Code skapar du en logikapp med följande namn: BatchX12Messages
I arbetsflödesdesignern lägger du till Batch-utlösaren , som startar arbetsflödet för logikappen.
Följ de här allmänna stegen för att lägga till en Batch-utlösare med namnet Batch-meddelanden.
Ange egenskaperna för batchmottagaren:
Property Värde Kommentar Batchläge Infogad Batchnamn TestBatch Endast tillgängligt med infogat batchläge Versionskriterier Antal meddelanden baserat, schemabaserat Endast tillgängligt med infogat batchläge Antal meddelanden 10 Endast tillgängligt med villkor för meddelandeantalsbaserad version Intervall 10 Endast tillgängligt med schemabaserade lanseringsvillkor Frekvens minut Endast tillgängligt med schemabaserade lanseringsvillkor Kommentar
Det här exemplet konfigurerar inte en partition för batchen, så varje batch använder samma partitionsnyckel. Mer information om partitioner finns i Batch-processmeddelanden.
Lägg nu till en åtgärd som kodar varje batch:
Följ dessa allmänna steg för att lägga till en X12-åtgärd med namnet: Batchkoda <valfri version>
Om du inte tidigare har anslutit till ditt integrationskonto skapar du anslutningen nu. Ange ett namn för anslutningen, välj det integrationskonto du vill använda och välj sedan Skapa.
Ange följande egenskaper för batchkodarens åtgärd:
Property beskrivning Namn på X12-avtal Öppna listan och välj ditt befintliga avtal. Om listan är tom kontrollerar du att du länkar logikappen till det integrationskonto som har det avtal du vill ha.
BatchName Klicka i den här rutan och välj batchnamnstoken när listan med dynamiskt innehåll visas. PartitionName Klicka i den här rutan och välj token partitionsnamn när listan med dynamiskt innehåll visas. Artiklar Stäng rutan objektinformation och klicka sedan i den här rutan. När listan med dynamiskt innehåll visas väljer du token batchade objekt . För rutan Objekt :
Spara arbetsflödet för logikappen.
Om du använder Visual Studio Code kontrollerar du att du distribuerar logikappen för batchmottagare till Azure. Annars kan du inte välja batchmottagaren när du skapar batch-avsändaren.
Testa arbetsflödet
För att se till att batchmottagaren fungerar som förväntat kan du lägga till en HTTP-åtgärd i testsyfte och skicka ett batchmeddelande till tjänsten Förfrågningslager.
Följ de här allmänna stegen för att lägga till HTTP-åtgärden med namnet HTTP.
Ange egenskaperna för HTTP-åtgärden:
Property beskrivning Metod I den här listan väljer du POST. Uri Generera en URI för din begärandeplats och ange sedan den URI:n i den här rutan. Brödtext Klicka i den här rutan och när listan med dynamiskt innehåll öppnas väljer du brödtexttoken, som visas i avsnittet Batchkoda efter avtalsnamn. Om du inte ser brödtexttoken bredvid Batch-koda efter avtalsnamn väljer du Visa mer.
Spara arbetsflödet.
Logikappen för batchmottagaren ser ut som i följande exempel:
Skapa X12 batch-avsändare
Skapa nu en eller flera logikappar som skickar meddelanden till batchmottagarens logikapp. I varje batch-avsändare anger du logikappen för batchmottagare och batchnamn, meddelandeinnehåll och andra inställningar. Du kan också ange en unik partitionsnyckel för att dela upp batchen i underuppsättningar för att samla in meddelanden med den nyckeln.
Kontrollera att du redan har skapat batchmottagaren. På så sätt kan du välja den befintliga batchmottagaren som målbatch när du skapar batchsändaren. Batch-mottagare behöver inte veta något om batchavsändare, men batchavsändare måste veta var meddelanden ska skickas.
Kontrollera att batchmottagaren och batchsändarlogikappens arbetsflöden använder samma Azure-prenumeration och Azure-region. Om de inte gör det kan du inte välja batchmottagaren när du skapar batch-avsändaren eftersom de inte är synliga för varandra.
Skapa en annan logikapp med följande namn: SendX12MessagesToBatch
Om du vill lägga till en åtgärd för att skicka meddelanden till en batch följer du de här allmänna stegen för att lägga till en Skicka meddelanden till batchåtgärd med namnet Välj ett Logic Apps-arbetsflöde med batchutlösare.
Välj logikappen BatchX12Messages som du skapade tidigare.
Välj åtgärden BatchX12Messages med namnet Batch_messages –< your-batch-receiver>.
Ange batchavsändarens egenskaper.
Property beskrivning Batchnamn Batchnamnet som definieras av mottagarlogiken, som är "TestBatch" i det här exemplet Viktigt: Batchnamnet verifieras vid körning och måste matcha namnet som anges av mottagarlogikappen. Om batchnamnet ändras misslyckas batchsändaren.
Meddelandeinnehåll Innehållet för det meddelande som du vill skicka, vilket är brödtexttoken i det här exemplet Spara arbetsflödet.
Logikappen för batchsändarappen ser ut så här:
Testa dina arbetsflöden
Om du vill testa batchlösningen publicerar du X12-meddelanden till arbetsflödet för batchsändarlogikappen med hjälp av http-begärandeverktyget och dess instruktioner. Snart börjar du få X12-meddelanden i din begärandeplats, antingen var 10:e minut eller i batchar med 10, alla med samma partitionsnyckel.