Koda och avkoda flata filer i Azure Logic Apps

Gäller för: Azure Logic Apps (Förbrukning + Standard)

Innan du skickar XML-innehåll till en affärspartner i ett B2B-scenario (business-to-business) kanske du vill koda innehållet först. Om du får kodat XML-innehåll måste du avkoda innehållet först. När du skapar ett logikapparbetsflöde i Azure Logic Apps kan du koda och avkoda flata filer med hjälp av de inbyggda anslutningsåtgärderna flatfil och ett platt filschema för kodning och avkodning. Du kan använda flata filåtgärder i logikapparbetsflöden för flera klientorganisationer och standardarbetsflöden för standardlogikappar med en klient.

Inga flatfilutlösare är tillgängliga, men du kan använda valfri utlösare eller åtgärd för att mata in XML-källinnehållet i arbetsflödet. Du kan till exempel använda en inbyggd anslutningsutlösare, en hanterad eller Azure-värdbaserad anslutningsutlösare som är tillgänglig för Azure Logic Apps eller till och med en annan app.

Den här artikeln visar hur du lägger till kodnings- och avkodningsåtgärder för flata filer i arbetsflödet.

  • Lägg till en flat filkodnings - eller avkodningsåtgärd i arbetsflödet.
  • Välj det schema som du vill använda.

Mer information finns i följande dokumentation:

Förutsättningar

  • Ett Azure-konto och prenumeration. Om du inte har någon prenumeration än registrerar du dig för ett kostnadsfritt Azure-konto.

  • Logikappens arbetsflöde, tomt eller befintligt, där du vill använda åtgärden FlatFil .

    Om du har ett tomt arbetsflöde använder du alla utlösare som du vill starta arbetsflödet. I det här exemplet används utlösaren Förfrågning.

  • Logikappens resurs och arbetsflöde. Flata filåtgärder har inga tillgängliga utlösare, så arbetsflödet måste innehålla en utlösare minimalt. Mer information finns i följande dokumentation:

  • Ett platt filschema för kodning och avkodning av XML-innehållet. Mer information finns i Lägga till scheman som ska användas med arbetsflöden i Azure Logic Apps.

  • Baserat på om du arbetar med ett arbetsflöde för förbrukning eller standardlogikapp behöver du en integrationskontoresurs. Vanligtvis behöver du den här resursen när du vill definiera och lagra artefakter för användning i företagsintegrering och B2B-arbetsflöden.

    Viktigt!

    För att fungera tillsammans måste både ditt integrationskonto och logikappresurs finnas i samma Azure-prenumeration och Azure-region.

    • Om du arbetar med ett arbetsflöde för förbrukningslogikappen kräver logikappresursen en länk till ditt integrationskonto.

    • Om du arbetar med ett standardarbetsflöde för logikappar kan du länka logikappresursen till ditt integrationskonto, ladda upp scheman direkt till logikappresursen eller båda, baserat på följande scenarier:

      • Om du redan har ett integrationskonto med artefakterna som du behöver eller vill använda kan du länka ditt integrationskonto till flera standardlogikappresurser där du vill använda artefakterna. På så sätt behöver du inte ladda upp scheman till varje enskild logikapp. Mer information finns i Länka logikappresursen till ditt integrationskonto.

      • Med den inbyggda anslutningsappen Flat File kan du välja ett schema som du tidigare laddade upp till din logikappresurs eller till ett länkat integrationskonto, men inte båda. Du kan sedan använda den här artefakten i alla underordnade arbetsflöden i samma logikappresurs.

      Så om du inte har eller behöver ett integrationskonto kan du använda uppladdningsalternativet. Annars kan du använda länkningsalternativet. Hur som helst kan du använda dessa artefakter i alla underordnade arbetsflöden i samma logikappresurs.

Begränsningar

  • XML-innehåll som du vill avkoda måste vara kodat i UTF-8-format.

  • I ditt flata filschema kontrollerar du att de inneslutna XML-grupperna inte har alltför många av max count egenskapen inställda på ett värde som är större än 1. Undvik att kapsla en XML-grupp med ett max count egenskapsvärde större än 1 i en annan XML-grupp med en max count egenskap större än 1.

  • När Azure Logic Apps parsar det platta filschemat, och när schemat tillåter valet av nästa fragment, genererar Azure Logic Apps en symbol och en förutsägelse för fragmentet. Om schemat tillåter för många sådana konstruktioner, till exempel mer än 100 000, blir schemaexpansionen för stor, vilket förbrukar för mycket resurser och tid.

Ladda upp schema

När du har skapat schemat måste du nu ladda upp schemat baserat på följande scenario:

Lägg till en kodningsåtgärd för flat fil

  1. Öppna arbetsflödet för logikappen i designern i Azure-portalen, om det inte redan är öppet.

  2. Om arbetsflödet inte har någon utlösare eller andra åtgärder som arbetsflödet behöver lägger du först till dessa åtgärder. Flat File-åtgärder har inga tillgängliga utlösare.

    Det här exemplet fortsätter med utlösaren Förfrågning med namnet När en HTTP-begäran tas emot.

  3. I arbetsflödesdesignern går du till steget där du vill lägga till åtgärden FlatFil och väljer Nytt steg.

  4. Under sökrutan Välj en åtgärd väljer du Inbyggd. I sökrutan anger du flat fil.

  5. I åtgärdslistan väljer du åtgärden flat filkodning.

    Screenshot showing Azure portal and Consumption workflow designer with

  6. I åtgärdens innehållsegenskap anger du utdata från utlösaren eller en tidigare åtgärd som du vill koda genom att följa dessa steg:

    1. Klicka i rutan Innehåll så att listan med dynamiskt innehåll visas.

    2. I listan med dynamiskt innehåll väljer du det flata filinnehåll som du vill koda.

      I det här exemplet går du till listan med dynamiskt innehåll under När en HTTP-begäran tas emot väljer du brödtexttoken, som representerar brödtextinnehållets utdata från utlösaren.

    Screenshot showing Consumption workflow designer and

    Kommentar

    Om egenskapen Brödtext inte visas i listan med dynamiskt innehåll väljer du Visa mer bredvid avsnittsetiketten När en HTTP-begäran tas emot. Du kan också ange innehållet som ska kodas direkt i rutan Innehåll .

  7. I listan Schemanamn väljer du ditt schema.

    Screenshot showing Consumption workflow designer and opened

    Kommentar

    Om schemalistan är tom är logikappresursen inte länkad till ditt integrationskonto eller så innehåller inte ditt integrationskonto några schemafiler.

    När du är klar ser åtgärden ut ungefär så här:

    Screenshot showing Consumption workflow with finished

  8. Om du vill lägga till andra valfria parametrar i åtgärden väljer du dessa parametrar i listan Lägg till ny parameter .

    Parameter Värde beskrivning
    Läge för tom nodgenerering ForcedDisabled eller HonorSchemaNodeProperty eller ForcedEnabled Läget som ska användas för tom nodgenerering med flat filkodning.

    För BizTalk har det platta filschemat en egenskap som styr den tomma nodgenereringen. Du kan antingen följa egenskapsbeteendet för tom nodgenerering för ditt flata filschema, eller så kan du använda den här inställningen för att låta Azure Logic Apps generera eller utelämna tomma noder. Mer information finns i Taggar för tomma element.
    XML-normalisering Ja eller Nej Inställningen för att aktivera eller inaktivera XML-normalisering i flat filkodning. Mer information finns i XmlTextReader.Normalization.
  9. Spara arbetsflödet. I verktygsfältet för designern väljer du Spara.

Lägg till en avkodningsåtgärd för flat fil

  1. Öppna arbetsflödet för logikappen i designern i Azure-portalen, om det inte redan är öppet.

  2. Om arbetsflödet inte har någon utlösare eller andra åtgärder som arbetsflödet behöver lägger du först till dessa åtgärder. Flat File-åtgärder har inga tillgängliga utlösare.

    Det här exemplet fortsätter med utlösaren Förfrågning med namnet När en HTTP-begäran tas emot.

  3. I arbetsflödesdesignern går du till steget där du vill lägga till åtgärden FlatFil och väljer Nytt steg.

  4. Under sökrutan Välj en åtgärd väljer du Inbyggd. I sökrutan anger du flat fil.

  5. Välj åtgärden Flat File Decoding i åtgärdslistan.

    Screenshot showing Azure portal and Consumption workflow designer with

  6. I åtgärdens innehållsegenskap anger du utdata från utlösaren eller en tidigare åtgärd som du vill avkoda genom att följa dessa steg:

    1. Klicka i rutan Innehåll så att listan med dynamiskt innehåll visas.

    2. I listan med dynamiskt innehåll väljer du det flata filinnehåll som du vill koda.

      I det här exemplet går du till listan med dynamiskt innehåll under När en HTTP-begäran tas emot väljer du brödtexttoken, som representerar brödtextinnehållets utdata från utlösaren.

    Screenshot showing the Consumption workflow designer and

    Kommentar

    Om egenskapen Brödtext inte visas i listan med dynamiskt innehåll väljer du Visa mer bredvid avsnittsetiketten När en HTTP-begäran tas emot. Du kan också ange innehållet som ska kodas direkt i rutan Innehåll .

  7. I listan Schemanamn väljer du ditt schema.

    Screenshot showing Consumption workflow designer and opened

    Kommentar

    Om schemalistan är tom är logikappresursen inte länkad till ditt integrationskonto eller så innehåller inte ditt integrationskonto några schemafiler.

    När du är klar ser åtgärden ut ungefär så här:

    Screenshot showing Consumption workflow with finished

  8. Spara arbetsflödet. I verktygsfältet för designern väljer du Spara.

Nu är du klar med att konfigurera avkodningsåtgärden för flata filer. I en verklig app kanske du vill lagra de avkodade data i en verksamhetsspecifik app (LOB), till exempel Salesforce. Eller så kan du skicka de avkodade data till en handelspartner. Om du vill skicka utdata från avkodningsåtgärden till Salesforce eller till din handelspartner använder du de andra anslutningsprogrammen som är tillgängliga i Azure Logic Apps:

Testa arbetsflödet

  1. Genom att använda Postman eller ett liknande verktyg och POST metoden skickar du ett anrop till url:en för begärandeutlösaren, som visas i url-egenskapen för begärandeutlösarens HTTP POST-URL , och inkluderar DET XML-innehåll som du vill koda eller avkoda i begärandetexten.

  2. När arbetsflödet är klart går du till arbetsflödets körningshistorik och undersöker flatfil-åtgärdens indata och utdata.

Nästa steg