Lägga till kartor för omvandlingar i arbetsflöden med Azure Logic Apps

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

Arbetsflödesåtgärder som Transformera XML och Liquid kräver en karta för att utföra sina uppgifter. Till exempel kräver xml-åtgärden Transformera en mappning för att konvertera XML mellan format. En karta är ett XML-dokument som använder XSLT-språk (Extensible Stylesheet Language Transformation) för att beskriva hur du konverterar data från XML till ett annat format och har filnamnstillägget .xslt. Kartan består av ett XML-källschema som indata och ett XML-målschema som utdata. Du kan definiera en grundläggande transformering, till exempel att kopiera ett namn och en adress från ett dokument till ett annat. Eller så kan du skapa mer komplexa transformeringar med hjälp av de färdiga kartåtgärderna. Du kan manipulera eller styra data med hjälp av olika inbyggda funktioner, till exempel strängmanipuleringar, villkorliga tilldelningar, aritmetiska uttryck, datumtidsformaterare och till och med loopkonstruktioner.

Anta till exempel att du regelbundet får B2B-beställningar eller fakturor från en kund som använder datumformatet YearMonthDay (ÅÅÅÅÅMMDD). Din organisation använder dock datumformatet MonthDayYear (MMDDYYYYY). Du kan definiera och använda en karta som omvandlar YYYYMMDD-formatet till FORMATET MMDDYYYY innan du lagrar beställnings- eller fakturainformationen i kundaktivitetsdatabasen.

Den här guiden visar hur du lägger till en karta som arbetsflödet ska använda. Du kan lägga till kartor antingen till ditt länkade integrationskonto eller om du har en standardlogikapp kan du lägga till kartor direkt till logikappresursen.

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.

  • Den karta som du vill lägga till. Om du vill skapa kartor kan du använda något av följande verktyg:

  • 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 behöver du ett integrationskonto som är länkat till logikappresursen.

    • Om du arbetar med ett standardarbetsflöde för logikappar kan du länka ditt integrationskonto till din logikappresurs, ladda upp kartor 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 kartor till varje enskild logikapp. Mer information finns i Länka logikappresursen till ditt integrationskonto.

      • Med den inbyggda liquid-anslutningsappen kan du välja en karta som du tidigare laddade upp till din logikappresurs eller till ett länkat integrationskonto, men inte båda.

      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.

  • Förbruknings- och standardarbetsflöden stöder XSLT-kartor som refererar till externa sammansättningar, vilket gör det möjligt att direkt anropa anpassad .NET-kod från XSLT-kartor. För att stödja den här funktionen har förbrukningsarbetsflöden också följande krav:

    • Du behöver en 64-bitars sammansättning. Transformeringstjänsten kör en 64-bitarsprocess, så 32-bitars sammansättningar stöds inte. Om du har källkoden för en 32-bitars sammansättning kan du kompilera om koden till en 64-bitars sammansättning. Om du inte har källkoden, men du fick binärfilen från en tredjepartsleverantör, hämtar du 64-bitarsversionen från providern. Vissa leverantörer tillhandahåller till exempel sammansättningar i paket som har både 32- och 64-bitarsversioner. Om du har alternativet använder du 64-bitarsversionen i stället.

    • Du måste ladda upp både sammansättningen och kartan i en specifik ordning till ditt integrationskonto. Se till att du laddar upp sammansättningen först och ladda sedan upp kartan som refererar till sammansättningen.

    • Om din sammansättning eller karta är 2 MB eller mindre kan du lägga till din sammansättning och mappa till ditt integrationskonto direkt från Azure-portalen.

    • Om din sammansättning är större än 2 MB men inte större än storleksgränsen för sammansättningar behöver du ett Azure Storage-konto och en blobcontainer där du kan ladda upp sammansättningen. Senare kan du ange containerns plats när du lägger till sammansättningen i ditt integrationskonto. För den här uppgiften beskriver följande tabell de objekt du behöver:

      Objekt beskrivning
      Azure Storage-konto I det här kontot skapar du en Azure-blobcontainer för din sammansättning. Lär dig hur du skapar ett lagringskonto.
      Blobcontainer I den här containern kan du ladda upp sammansättningen. Du behöver också containerns innehålls-URI-plats när du lägger till sammansättningen i ditt integrationskonto. Lär dig hur du skapar en blobcontainer.
      Azure Lagringsutforskaren Det här verktyget hjälper dig att enklare hantera lagringskonton och blobcontainrar. Om du vill använda Storage Explorer laddar du antingen ned och installerar Azure Storage Explorer. Anslut sedan Storage Explorer till ditt lagringskonto genom att följa stegen i Kom igång med Storage Explorer. Mer information finns i Snabbstart: Skapa en blob i objektlagring med Azure Storage Explorer.

      Eller välj ditt lagringskonto i Azure-portalen. På menyn för lagringskontot väljer du Storage Explorer.

      Om du vill lägga till större kartor kan du använda REST-API:et för Azure Logic Apps – Kartor. För Standard-arbetsflöden är REST-API:et för Azure Logic Apps för närvarande inte tillgängligt.

Begränsningar

  • Begränsningar gäller för antalet artefakter, till exempel kartor, per integrationskonto. Mer information finns i Begränsningar och konfigurationsinformation för Azure Logic Apps.

  • Beroende på om du arbetar med ett arbetsflöde för förbrukning eller standardlogikapp gäller följande begränsningar:

    • Standardarbetsflöden

      • Stöd för XSLT 1.0, 2.0 och 3.0.

      • Inga gränser gäller för mappning av filstorlekar.

    • Förbrukningsarbetsflöden

      • Azure Logic Apps allokerar begränsat minne för bearbetning av XML-transformeringar. Om du skapar arbetsflöden för förbrukning och dina kart- eller nyttolasttransformeringar har hög minnesförbrukning kan sådana transformeringar misslyckas, vilket resulterar i minnesfel. Tänk på följande alternativ för att undvika det här scenariot:

        • Redigera dina kartor eller nyttolaster för att minska minnesförbrukningen.

        • Skapa standardarbetsflöden för logikappar som körs i Azure Logic Apps med en enda klientorganisation och erbjuder dedikerade och flexibla alternativ för beräknings- och minnesresurser.

Skapa kartor

Du kan skapa kartor med antingen Visual Studio Code med datamappningstillägget eller Visual Studio med tillägget Microsoft Azure Logic Apps Enterprise Integration Tools.

Visual Studio Code

När du skapar kartor med Visual Studio Code och datamappningstillägget kan du anropa dessa kartor från arbetsflödet, men bara med åtgärden Data Mapper Operations med namnet Transformera med hjälp av Data Mapper XSLT, inte XML-åtgärdsåtgärden Transform XML. Mer information finns i Skapa kartor för datatransformering med Visual Studio Code.

Visual Studio

När du skapar kartor med Visual Studio måste du skapa ett integrationsprojekt med något av följande verktyg:

I integrationsprojektet kan du skapa en integrationsmappningsfil som gör att du visuellt kan mappa objekt mellan två XML-schemafiler. Dessa verktyg erbjuder följande kartfunktioner:

  • Du arbetar med en grafisk representation av kartan, som visar alla relationer och länkar som du skapar.

  • Du kan skapa en direkt datakopia mellan de XML-scheman som du använder för att skapa kartan. Enterprise Integration SDK för Visual Studio innehåller en mappare som gör den här uppgiften så enkel som att rita en linje som ansluter elementen i XML-källschemat till deras motsvarigheter i XML-målschemat.

  • Åtgärder eller funktioner för flera kartor är tillgängliga, inklusive strängfunktioner, datumtidsfunktioner och så vidare.

  • Om du vill lägga till ett XML-exempelmeddelande kan du använda karttestningsfunktionen. Med bara en gest kan du testa kartan som du skapade och granska de genererade utdata.

  • När du har skapat projektet får du ett XSLT-dokument.

Kartan måste ha följande attribut och ett CDATA avsnitt som innehåller anropet till sammansättningskoden:

  • name är det anpassade sammansättningsnamnet.

  • namespace är namnområdet i sammansättningen som innehåller den anpassade koden.

I följande exempel visas en karta som refererar till en sammansättning med namnet XslUtilitiesLib och anropar circumference metoden från sammansättningen.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="urn:my-scripts">
<msxsl:script language="C#" implements-prefix="user">
    <msxsl:assembly name="XsltHelperLib"/>
    <msxsl:using namespace="XsltHelpers"/>
    <![CDATA[public double circumference(int radius){ XsltHelper helper = new XsltHelper(); return helper.circumference(radius); }]]>
</msxsl:script>
<xsl:template match="data">
<circles>
    <xsl:for-each select="circle">
        <circle>
            <xsl:copy-of select="node()"/>
                <circumference>
                    <xsl:value-of select="user:circumference(radius)"/>
                </circumference>
        </circle>
    </xsl:for-each>
</circles>
</xsl:template>
</xsl:stylesheet>

Lägga till refererade sammansättningar

En förbrukningslogikappresurs har stöd för att referera till externa sammansättningar från kartor, vilket gör det möjligt att direkt anropa anpassad .NET-kod från XSLT-kartor.

  1. I sökrutan i Azure-portalen anger du integrationskonton och väljer Integreringskonton.

  2. Välj det integrationskonto där du vill lägga till sammansättningen.

  3. På integrationskontots meny väljer du Översikt. Under Inställningar väljer du Sammansättningar.

  4. I verktygsfältet Sammansättningar väljer du Lägg till.

Baserat på sammansättningsfilens storlek följer du stegen för att ladda upp en sammansättning som antingen är upp till 2 MB eller mer än 2 MB men bara upp till 8 MB. Begränsningar för sammansättningskvantiteter i integrationskonton finns i Begränsningar och konfiguration för Azure Logic Apps.

Kommentar

Om du ändrar sammansättningen måste du också uppdatera kartan oavsett om kartan har ändringar eller inte.

Lägg till sammansättningar upp till 2 MB

  1. Under Lägg till sammansättning anger du ett namn för sammansättningen. Behåll Liten fil markerad. Bredvid rutan Sammansättning väljer du mappikonen. Leta upp och välj den sammansättning som du laddar upp.

    När du har valt sammansättningen visar egenskapen Sammansättningsnamn automatiskt sammansättningens filnamn.

  2. När du är klar väljer du OK.

    När sammansättningsfilen har laddats upp visas sammansättningen i listan Sammansättningar . I fönstret Översikt för integrationskontot visas även den uppladdade sammansättningen under Artefakter.

Lägga till sammansättningar mer än 2 MB

Om du vill lägga till större sammansättningar kan du ladda upp sammansättningen till en Azure-blobcontainer i ditt Azure Storage-konto. Stegen för att lägga till sammansättningar skiljer sig åt beroende på om blobcontainern har offentlig läsbehörighet. Kontrollera först om blobcontainern har offentlig läsbehörighet genom att följa dessa steg: Ange offentlig åtkomstnivå för blobcontainer

Kontrollera åtkomstnivån för containrar

  1. Öppna Azure Storage Explorer. I Utforskaren expanderar du din Azure-prenumeration om den inte redan har expanderats.

  2. Expandera Lagringskonton> {your-storage-account} >BlobContainrar. Välj din blobcontainer.

  3. På snabbmenyn för blobcontainern väljer du Ange offentlig åtkomstnivå.

Ladda upp till containrar med offentlig åtkomst
  1. Ladda upp sammansättningen till ditt lagringskonto. I det högra fönstret väljer du Ladda upp.

  2. När du har laddat upp väljer du den uppladdade sammansättningen. I verktygsfältet väljer du Kopiera URL så att du kopierar sammansättningens URL.

  3. Gå tillbaka till Azure-portalen där fönstret Lägg till sammansättning är öppen. Ange ett namn för sammansättningen. Välj Stor fil (större än 2 MB).

    Nu visas rutan Innehålls-URI i stället för rutan Sammansättning .

  4. I rutan Innehålls-URI klistrar du in sammansättningens URL. Slutför sammansättningen.

    När sammansättningen har laddats upp visas sammansättningen i listan Sammansättningar . I fönstret Översikt för integrationskontot visas även den uppladdade sammansättningen under Artefakter.

Ladda upp till containrar utan offentlig åtkomst
  1. Ladda upp sammansättningen till ditt lagringskonto. I det högra fönstret väljer du Ladda upp.

  2. När du är klar med uppladdningen genererar du en signatur för delad åtkomst (SAS) för din sammansättning. I sammansättningens snabbmeny väljer du Hämta signatur för delad åtkomst.

  3. I fönstret Signatur för delad åtkomst väljer du Generera signatur för delad åtkomst på containernivå URI>Skapa. När SAS-URL:en har genererats väljer du Kopiera bredvid RUTAN URL.

  4. Gå tillbaka till Azure-portalen där fönstret Lägg till sammansättning är öppen. Ange ett namn för sammansättningen. Välj Stor fil (större än 2 MB).

    Nu visas rutan Innehålls-URI i stället för rutan Sammansättning .

  5. I rutan Innehålls-URI klistrar du in den SAS-URI som du skapade tidigare. Slutför sammansättningen.

När sammansättningen har laddats upp visas sammansättningen i listan Sammansättningar . På integrationskontots översiktssida, under Artefakter, visas även den uppladdade sammansättningen.

Lägg till kartor

  • Om du arbetar med ett förbrukningsarbetsflöde måste du lägga till kartan i ett länkat integrationskonto.

  • Om du arbetar med ett Standard-arbetsflöde har du följande alternativ:

    • Lägg till din karta i ett länkat integrationskonto. Du kan dela kart- och integrationskontot över flera standardlogikappresurser och deras underordnade arbetsflöden.

    • Lägg till kartan direkt i logikappresursen. Du kan dock bara dela kartan över underordnade arbetsflöden i samma logikappresurs.

Lägga till karta i integrationskontot

  1. Logga in med dina autentiseringsuppgifter för Azure-kontot i Azure-portalen.

  2. I sökrutan i Azure-portalen anger du integrationskonton och väljer Integreringskonton.

  3. Leta upp och välj ditt integrationskonto.

  4. Välj Kartor under Inställningar på integrationskontots navigeringsmeny.

  5. I verktygsfältet Kartor fönster väljer du Lägg till.

För förbrukningsarbetsflöden, baserat på kartans filstorlek, följer du nu stegen för att ladda upp en karta som antingen är upp till 2 MB eller mer än 2 MB.

Lägga till kartor upp till 2 MB

  1. I fönstret Lägg till karta anger du ett unikt namn för kartan.

  2. Under Karttyp väljer du typen, till exempel: Liquid, XSLT, XSLT 2.0 eller XSLT 3.0.

  3. Bredvid rutan Karta väljer du mappikonen. Välj den karta som ska laddas upp.

    Om du lämnade egenskapen Namn tom visas kartans filnamn automatiskt i den egenskapen när du har valt mappningsfilen.

  4. När du är klar väljer du OK.

    När kartfilen har laddats upp visas kartan i listan Kartor. På integrationskontots översiktssida, under Artefakter, visas även den uppladdade kartan.

Lägga till kartor mer än 2 MB

Om du vill lägga till större kartor för arbetsflöden för förbrukning använder du REST-API:et för Azure Logic Apps – Kartor.


Lägga till mappning i standardlogikappresursen

Följande steg gäller endast om du vill lägga till en karta direkt till standardlogikappresursen. Annars lägger du till kartan i ditt integrationskonto.

Azure Portal

  1. På logikappresursens meny går du till Artefakter och väljer Kartor.

  2. I verktygsfältet Kartor fönster väljer du Lägg till.

  3. I fönstret Lägg till karta anger du ett unikt namn för kartan och inkluderar .xslt-tilläggets namn.

  4. Bredvid rutan Karta väljer du mappikonen. Välj den karta som ska laddas upp.

  5. När du är klar väljer du OK.

    När kartfilen har laddats upp visas kartan i listan Kartor. På integrationskontots översiktssida, under Artefakter, visas även den uppladdade kartan.

Visual Studio Code

  1. I logikappprojektets struktur öppnar du mappen Artifacts och sedan mappen Kartor.

  2. Lägg till kartan i mappen Kartor.


Redigera en karta

Om du vill uppdatera en befintlig karta måste du ladda upp en ny mappningsfil som innehåller de ändringar du vill ha. Du kan dock först ladda ned den befintliga kartan för redigering.

  1. Öppna ditt integrationskonto i Azure-portalen, om det inte redan är öppet.

  2. Välj Kartor under Inställningar på integrationskontots meny.

  3. När fönstret Kartor öppnas väljer du din karta. Om du vill ladda ned och redigera kartan först går du till verktygsfältet Kartor fönster, väljer Ladda ned och sparar kartan.

  4. När du är redo att ladda upp den uppdaterade kartan i fönstret Kartor väljer du den karta som du vill uppdatera. I verktygsfältet Kartor fönster väljer du Uppdatera.

  5. Leta upp och välj den uppdaterade karta som du vill ladda upp.

    När kartfilen har laddats upp visas den uppdaterade kartan i listan Kartor.

Ta bort en karta

  1. Öppna ditt integrationskonto i Azure-portalen, om det inte redan är öppet.

  2. Välj Kartor under Inställningar på integrationskontots meny.

  3. När fönstret Kartor öppnas väljer du kartan och väljer sedan Ta bort.

  4. Bekräfta att du vill ta bort kartan genom att välja Ja.

Nästa steg