Kaarten maken om gegevens te transformeren in Azure Logic Apps met Visual Studio Code

Van toepassing op: Azure Logic Apps (Standard)

Als u berichten wilt uitwisselen met verschillende XML- of JSON-indelingen in een Azure Logic Apps-werkstroom, moet u de gegevens van de ene indeling naar de andere transformeren, met name als u hiaten hebt tussen de bron- en doelschemastructuren. Met gegevenstransformatie kunt u deze hiaten overbruggen. Voor deze taak moet u een kaart maken waarmee de transformatie tussen gegevenselementen in de bron- en doelschema's wordt gedefinieerd.

Als u een kaart visueel wilt maken en bewerken, kunt u Visual Studio Code gebruiken met de Azure Logic Apps-extensie (Standard) in de context van een standaard-logische app-project. Het hulpprogramma Data Mapper biedt een uniforme ervaring voor XSLT-toewijzing en -transformatie met behulp van bewegingen voor slepen en neerzetten, een vooraf gemaakte functiebibliotheek voor het maken van expressies en een manier om de kaarten die u in uw werkstromen maakt en gebruikt, handmatig te testen.

Nadat u de kaart hebt gemaakt, kunt u die kaart rechtstreeks aanroepen vanuit een werkstroom in uw logische app-project of vanuit een werkstroom in Azure Portal. Voor deze taak kunt u de actie Gegevenstoewijzingsbewerkingen met de naam Transformeren gebruiken met behulp van Data Mapper XSLT in uw werkstroom.

Deze instructiegids laat zien hoe u een lege gegevenstoewijzing maakt, uw bron- en doelschema's kiest, schema-elementen selecteert om de toewijzing te starten, verschillende toewijzingen maakt, uw kaart opslaat en test en vervolgens de kaart aanroept vanuit een werkstroom in uw logische app-project.

Beperkingen en bekende problemen

  • Data Mapper werkt momenteel alleen in Visual Studio Code die wordt uitgevoerd op Windows-besturingssystemen.

  • Data Mapper is momenteel alleen beschikbaar in Visual Studio Code, niet in De Azure-portal, en alleen vanuit Standaard logische app-projecten, niet met behulp van logische app-projecten voor verbruik.

  • Data Mapper biedt momenteel geen ondersteuning voor bestanden met door komma's gescheiden waarden (.csv).

  • Het deelvenster Codeweergave van Data Mapper is momenteel alleen-lezen.

  • De kaartindeling en itempositie zijn momenteel automatisch en alleen-lezen.

  • Als u kaarten wilt aanroepen die zijn gemaakt met het hulpprogramma Data Mapper, kunt u alleen de actie Data Mapper Operations met de naam Transformeren gebruiken met data Mapper XSLT. Gebruik voor toewijzingen die zijn gemaakt door een ander hulpprogramma de actie XML-bewerkingen met de naam XML transformeren.

  • Als u de kaarten wilt gebruiken die u maakt met het hulpprogramma Data Mapper, maar in Azure Portal, moet u deze rechtstreeks toevoegen aan de resource van uw logische standaard-app.

Vereisten

  • Visual Studio Code en de Azure Logic Apps-extensie (Standard) voor het maken van standaardwerkstromen voor logische apps.

    Notitie

    De eerder afzonderlijke Data Mapper-extensie wordt nu samengevoegd met de Azure Logic Apps-extensie (Standard). Om conflicten te voorkomen, wordt elke bestaande versie van de Data Mapper-extensie verwijderd wanneer u de Azure Logic Apps-extensie (Standard) installeert of bijwerkt. Start Visual Studio Code opnieuw nadat de extensie is geïnstalleerd of bijgewerkt.

  • De bron- en doelschemabestanden die de gegevenstypen beschrijven die moeten worden getransformeerd. Deze bestanden kunnen de volgende indelingen hebben:

    • Een XML-schemadefinitiebestand met de bestandsextensie .xsd
    • Een JavaScript Object Notation-bestand met de bestandsextensie .json
  • Een standaard logische app-project met een stateful of stateless werkstroom met ten minste een trigger. Als u geen project hebt, volgt u deze stappen in Visual Studio Code:

    1. Verbinding maken naar uw Azure-account als u dat nog niet hebt gedaan.

    2. Maak een lokale map, een lokaal standaard logische app-project en een stateful of stateless werkstroom. Selecteer Tijdens het maken van de werkstroom de optie Openen in het huidige venster.

  • Voorbeeldinvoergegevens als u de kaart wilt testen en controleert of de transformatie werkt zoals verwacht.

  • Als u de functie XSLT uitvoeren wilt gebruiken, moeten uw XSLT-fragmenten bestaan in bestanden die de bestandsextensie .xml of .xslt gebruiken. U moet uw XSLT-fragmenten in de map InlineXslt in de lokale projectmapstructuur plaatsen: Artifacts>DataMapper>Extensions>InlineXslt. Als deze mapstructuur niet bestaat, maakt u de ontbrekende mappen.

Een gegevenstoewijzing maken

  1. Selecteer in het linkermenu van Visual Studio Code het Azure-pictogram .

  2. Selecteer in het deelvenster Azure , onder de sectie Data Mapper , de optie Nieuwe gegevenstoewijzing maken.

    Screenshot showing Visual Studio Code with Data Mapper tool, Azure window open, and selected button for Create new data map.

  3. Geef een naam op voor uw gegevensoverzicht.

  4. Geef uw bron- en doelschema's op door de volgende stappen uit te voeren:

    1. Selecteer Een bronschema toevoegen op het kaartoppervlak.

      Screenshot showing Visual Studio Code with Data Mapper open, new data map, and selected option for Add a source schema.

    2. Selecteer Nieuwe>bladeren toevoegen in het deelvenster Configureren dat wordt geopend.

    3. Zoek en selecteer het bronschemabestand en selecteer vervolgens Toevoegen.

      Als uw bronschema niet wordt weergegeven in het venster Openen, wijzigt u in de lijst met bestandstypen XSD-bestand (*.xsd) in Alle bestanden (*.*).

      Op het kaartoppervlak worden nu de gegevenstypen uit het bronschema weergegeven. Voor de voorbeelden in deze handleiding,

    4. Selecteer Een doelschema toevoegen op het kaartoppervlak.

    5. Selecteer Nieuwe>bladeren toevoegen in het deelvenster Configureren dat wordt geopend.

    6. Zoek en selecteer het doelschemabestand en selecteer vervolgens Toevoegen.

      Als uw doelschema niet wordt weergegeven in het venster Openen, wijzigt u in de lijst met bestandstypen XSD-bestand (*.xsd) in Alle bestanden (*.*).

      Het kaartoppervlak toont nu gegevenstypen uit het doelschema.

    U kunt ook uw bron- en doelschemabestanden lokaal toevoegen aan uw logische app-project in de map Artifacts Schema's/, zodat ze worden weergegeven in Visual Studio Code. In dit geval kunt u uw bron- en doelschema opgeven in het hulpprogramma Data Mapper in het deelvenster Configureren door Bestaande selecteren te selecteren in plaats van Nieuwe toe te voegen.

    Wanneer u klaar bent, ziet uw kaart er ongeveer als volgt uit:

    Screenshot showing the Data Mapper open and data map with sample source and target schemas.

In de volgende tabel worden de mogelijke gegevenstypen beschreven die in een schema kunnen worden weergegeven:

Symbool Type Meer info
Icon representing an Array data type. Matrix Bevat items of herhalende itemknooppunten
Icon representing a Binary data type. Binary
Icon representing a Bool data type. Bool Alleen waar of onwaar
Icon representing a Complex data type. Complex Een XML-object met onderliggende eigenschappen, vergelijkbaar met het JSON-type Object
Icon representing a DateTime data type. Datum/tijd
Icon representing a Decimal data type. Decimal
Icon representing an Integer data type. Geheel getal alleen getallen Wie
Icon representing the NULL symbol. Null Geen gegevenstype, maar wordt weergegeven wanneer er een fout of een ongeldig type bestaat
Icon representing a Number data type. Getal Een JSON-geheel getal of een decimaal getal
Icon representing an Object data type. Object Een JSON-object met onderliggende eigenschappen, vergelijkbaar met het complexe XML-type
Icon representing a String data type. String

Als u door de kaart wilt navigeren, hebt u de volgende opties:

  • Als u wilt pannen, sleept u de aanwijzer rond het kaartoppervlak. Of houd het muiswiel ingedrukt terwijl u de muis of trackball beweegt.

  • Nadat u één niveau omlaag naar de kaart hebt verplaatst, wordt in de linkerbenedenhoek van de kaart een navigatiebalk weergegeven waarin u een keuze kunt maken uit de volgende opties:

    Screenshot showing map navigation bar.

    Optie Alternatieve beweging
    Uitzoomen Druk op Shift+ dubbel geselecteerd op het kaartoppervlak.
    -Of-
    Schuif omlaag met het muiswiel.
    Inzoomen Dubbelklik op het kaartoppervlak.
    -Of-
    Schuif omhoog met het muiswiel.
    In- en uitzoomen Geen
    Minikaart weergeven (verbergen) Geen
  • Als u één niveau op de kaart wilt verplaatsen, selecteert u een vorig niveau op het breadcrumb-pad boven aan de kaart.

Doel- en bronelementen selecteren om toe te wijzen

  1. Selecteer op het kaartoppervlak, beginnend aan de rechterkant, in het doelschemagebied het doelelement dat u wilt toewijzen. Als het gewenste element een onderliggend element van een bovenliggend element is, zoekt en vouwt u het bovenliggende element eerst uit.

  2. Selecteer nu aan de linkerkant, in het bronschemagebied, het element Selecteren.

  3. Selecteer in het venster Bronschema dat wordt weergegeven een of meer bronelementen om weer te geven op de kaart.

    • Als u een bovenliggende en directe onderliggende items wilt opnemen, opent u het snelmenu van het bovenliggende item en selecteert u Onderliggende items toevoegen.

    • Als u een bovenliggend item en alle onderliggende items voor die bovenliggende wilt opnemen, inclusief eventuele sub-ouders, opent u het snelmenu op het hoogste niveau en selecteert u Onderliggende items toevoegen (recursief).

  4. Wanneer u klaar bent, kunt u het bronschemavenster sluiten. U kunt later altijd meer bronelementen toevoegen. Selecteer op de kaart in de linkerbovenhoek de optie Bronschema weergeven (Icon for Show source schema.).

Een directe toewijzing tussen elementen maken

Voer de volgende stappen uit voor een eenvoudige transformatie tussen elementen met hetzelfde type in de bron- en doelschema's:

  1. Als u wilt controleren wat er in code gebeurt terwijl u de toewijzing maakt, selecteert u code weergeven in de rechterbovenhoek van de kaart.

  2. Als u dat nog niet hebt gedaan, selecteert u op de kaart de doelelementen en vervolgens de bronelementen die u wilt toewijzen.

  3. Verplaats de aanwijzer over het bronelement, zodat zowel een cirkel als een plusteken (+) worden weergegeven.

    Screenshot showing the data map and starting a mapping between EmployeeID and ID in the source and target schema, respectively.

  4. Sleep een lijn naar het doelelement, zodat de lijn verbinding maakt met de cirkel die wordt weergegeven.

    Screenshot showing the data map and ending a mapping between EmployeeID and ID in the source and target schema, respectively.

    U hebt nu een directe toewijzing tussen beide elementen gemaakt.

    Screenshot showing the data map and a finished mapping between EmployeeID and ID in the source and target schema, respectively.

    Het codeweergavevenster weerspiegelt de toewijzingsrelatie die u hebt gemaakt:

    Screenshot showing code view with direct mapping between EmployeeID and ID in the source and target schema, respectively.

Notitie

Als u een toewijzing maakt tussen elementen waar de gegevenstypen niet overeenkomen, wordt er een waarschuwing weergegeven op het doelelement, bijvoorbeeld:

Screenshot showing direct mapping between mismatching data types.

Een complexe toewijzing tussen elementen maken

Voor een complexere transformatie tussen elementen in de bron- en doelschema's, zoals elementen die u wilt combineren of die verschillende gegevenstypen hebben, kunt u een of meer functies gebruiken om taken voor die transformatie uit te voeren.

De volgende tabel bevat de beschikbare functiegroepen en voorbeeldfuncties die u kunt gebruiken:

Groep Voorbeeldfuncties
Verzameling Average, Count, Direct Access, Distinct values, Filter, Index, Join, Maximum, Minimum, Reverse, Sort, Subsequence, Sum
Conversie To date, To integer, To number, To string
Datum en tijd Dagen toevoegen
Logische vergelijking Gelijk aan, bestaat, groter, groter of gelijk, als, als, als, is nul, is null, is getal, is tekenreeks, kleiner, kleiner of gelijk, logisch EN, logisch NIET, logisch OF, niet gelijk aan
Math Absoluut, Toevoegen, Boogtangens, Plafond, Cosinus, Delen, Exponentiële, Exponentiële waarde (grondtal 10), Vloer, Geheel getal delen, Logboek, Logboek (grondtal 10), Module, Vermenigvuldigen, Macht, Rond, Sinus, Vierkantswortel, Aftrekken, Tangens
String Code verwijst naar tekenreeks, Concat, Contains, Ends with, Length, Lowercase, Name, Regular expression matches, Regular expression replace, Replace, Starts with, String to code-points, Substring, Substring after, Substring before, Trim, Trim left, Trim right, Uppercase
Hulpprogramma Kopiëren, Fout, XPath uitvoeren, Datum/tijd opmaken, Nummer opmaken, XSLT uitvoeren

Op de kaart ziet het label van de functie eruit als in het volgende voorbeeld en wordt de kleur gecodeerd op basis van de functiegroep. Aan de linkerkant van de functienaam wordt een symbool voor de functie weergegeven. Rechts van de functienaam wordt een symbool voor het gegevenstype van de functie-uitvoer weergegeven.

Screenshot showing example function label.

Een functie zonder toewijzingsrelatie toevoegen

In het voorbeeld in deze sectie wordt het type bronelement getransformeerd van het type Tekenreeks naar het type Datum/tijd, dat overeenkomt met het doelelementtype. In het voorbeeld wordt de functie Tot-datum gebruikt, waarbij één invoer wordt gebruikt.

  1. Als u wilt controleren wat er in code gebeurt terwijl u de toewijzing maakt, selecteert u code weergeven in de rechterbovenhoek van de kaart.

  2. Als u dat nog niet hebt gedaan, selecteert u op de kaart de doelelementen en vervolgens de bronelementen die u wilt toewijzen.

  3. Selecteer in de linkerbovenhoek van de kaart functies weergeven (Icon for Show functions.).

    Screenshot showing source and target schema elements plus the selected function, Show functions.

  4. Zoek en selecteer in de lijst met functies die wordt geopend de functie die u wilt gebruiken, waarmee de functie aan de kaart wordt toegevoegd. Als de functie niet zichtbaar wordt weergegeven op de kaart, kunt u uitzoomen op het kaartoppervlak.

    In dit voorbeeld wordt de functie Tot datum geselecteerd. U kunt ook aangepaste functies op dezelfde manier vinden en selecteren. Zie Een aangepaste functie maken voor meer informatie.

    Screenshot showing the selected function named To date.

    Notitie

    Als er geen toewijzingslijn bestaat of is geselecteerd wanneer u een functie aan de kaart toevoegt, wordt de functie weergegeven op de kaart, maar wordt de verbinding met alle elementen of andere functies verbroken, bijvoorbeeld:

    Screenshot showing the disconnected function, To date.

  5. Vouw de functieshape uit om de details en verbindingspunten van de functie weer te geven. Als u de functieshape wilt uitvouwen, selecteert u deze in de shape.

  6. Verbinding maken de functie aan de bron- en doelelementen.

    1. Sleep en teken een lijn tussen de bronelementen en de linkerrand van de functie. U kunt beginnen met de bronelementen of vanuit de functie.

      Screenshot showing start mapping between source element and function.

    2. Sleep en teken een lijn tussen de rechterrand van de functie en het doelelement. U kunt beginnen vanaf het doelelement of vanuit de functie.

      Screenshot showing finish mapping between function and target element.

  7. Bevestig of bewerk de invoer die u wilt gebruiken op het tabblad Eigenschappen van de functie.

    Screenshot showing Properties tab for the function, To date.

    Voor sommige gegevenstypen, zoals matrices, kan het bereik voor de transformatie ook beschikbaar zijn. Dit bereik is meestal het directe element, zoals een matrix, maar in sommige scenario's bestaat het bereik mogelijk buiten het directe element.

    Het codeweergavevenster weerspiegelt de toewijzingsrelatie die u hebt gemaakt:

    Screenshot showing code view with direct mapping relationship between source and target elements.

Als u bijvoorbeeld matrixitems wilt herhalen, raadpleegt u Een lus tussen matrices maken. Zie Een voorwaarde toevoegen tussen elementen om een taak uit te voeren wanneer de waarde van een element aan een voorwaarde voldoet.

Een functie toevoegen aan een bestaande toewijzingsrelatie

Wanneer er al een toewijzingsrelatie bestaat tussen bron- en doelelementen, kunt u de functie toevoegen door de volgende stappen uit te voeren:

  1. Selecteer op de kaart de lijn voor de toewijzing die u hebt gemaakt.

  2. Verplaats de aanwijzer over de geselecteerde regel en selecteer het plusteken invoegen (+) dat wordt weergegeven, bijvoorbeeld:

    Screenshot shows Visual Studio Code with elements from source and target schemas with mapping relationship and option to Insert function.

  3. Zoek en selecteer in de lijst met functies die wordt geopend de functie die u wilt gebruiken.

    De functie wordt weergegeven op de kaart en wordt automatisch verbonden tussen de bron- en doelelementen.

Een functie met meerdere invoer toevoegen

In het voorbeeld in deze sectie worden meerdere bronelementtypen samengevoegd, zodat u de resultaten kunt toewijzen aan het doelelementtype. In het voorbeeld wordt de functie Concat gebruikt. Hierbij worden meerdere invoerwaarden gebruikt.

  1. Als u wilt controleren wat er in code gebeurt terwijl u de toewijzing maakt, selecteert u code weergeven in de rechterbovenhoek van de kaart.

  2. Als u dat nog niet hebt gedaan, selecteert u op de kaart de doelelementen en vervolgens de bronelementen die u wilt toewijzen.

  3. Selecteer in de linkerbovenhoek van de kaart functies weergeven (Icon for Show functions.).

    Screenshot showing source and target schema elements and the selected function named Show functions.

  4. Zoek en selecteer in de lijst met functies die wordt geopend de functie die u wilt gebruiken, waarmee de functie aan de kaart wordt toegevoegd. Als de functie niet zichtbaar wordt weergegeven op de kaart, kunt u uitzoomen op het kaartoppervlak.

    In dit voorbeeld wordt de functie Concat geselecteerd:

    Screenshot showing the selected function named Concat.

    Notitie

    Als er geen toewijzingslijn bestaat of is geselecteerd wanneer u een functie aan de kaart toevoegt, wordt de functie weergegeven op de kaart, maar wordt de verbinding met alle elementen of andere functies verbroken. Als de functie configuratie vereist, wordt er een rode stip weergegeven in de rechterbovenhoek van de functie, bijvoorbeeld:

    Screenshot showing the disconnected function, Concat.

  5. Vouw de functieshape uit om de details en verbindingspunten van de functie weer te geven. Als u de functieshape wilt uitvouwen, selecteert u deze in de shape.

  6. Selecteer in het deelvenster functiegegevens op het tabblad Eigenschappen onder Invoer de brongegevenselementen die u als invoer wilt gebruiken.

    In dit voorbeeld worden de bronelementen FirstName en LastName geselecteerd als de functie-invoer, waarmee automatisch de respectieve verbindingen op de kaart worden toegevoegd.

    Screenshot showing multiple source data elements selected as function inputs.

  7. Als u de toewijzing wilt voltooien, sleept u een lijn tussen de rechterrand van de functie en het doelelement. U kunt beginnen vanaf het doelelement of vanuit de functie.

    Screenshot showing finished mapping from function with multiple inputs to target element.

    Het codeweergavevenster weerspiegelt de toewijzingsrelatie die u hebt gemaakt:

    Screenshot showing code view with complex mapping relationship between source and target elements.

Een lus tussen matrices maken

Als uw bron- en doelschema's matrices bevatten, kunt u een lustoewijzingsrelatie maken die de items in die matrices doorloopt. In het voorbeeld in deze sectie wordt een bronmatrix voor werknemers en een doelmatrix voor personen doorlopen.

  1. Als u wilt controleren wat er in code gebeurt terwijl u de toewijzing maakt, selecteert u code weergeven in de rechterbovenhoek van de kaart.

  2. Selecteer op de kaart in het doelschemagebied het doelmatrixelement en de doelmatrixitemelementen die u wilt toewijzen.

  3. Vouw op de kaart in het doelschemagebied het doelmatrixelement en de matrixitems uit.

  4. Voeg in het bronschemagebied het bronmatrixelement en de elementen van het matrixitem toe aan de kaart.

  5. Maak een directe toewijzing tussen de bron- en doelelementen.

    Screenshot showing the data map and drawing a connection between Name array items in the source and target arrays, Employee and Person, respectively.

    Wanneer u voor het eerst een toewijzingsrelatie maakt tussen een overeenkomend paar matrixitems, wordt er automatisch een toewijzingsrelatie gemaakt op het bovenliggende matrixniveau.

    Screenshot showing loop mapping between the Name array items plus the source and target arrays, Employee and Person, respectively.

    Het codeweergavevenster weerspiegelt de toewijzingsrelatie die u hebt gemaakt:

    Screenshot showing code view with looping relationship between source and target arrays, Employee and Person, respectively.

  6. Ga door met het toewijzen van de andere matrixelementen.

    Screenshot showing continue looping mapping between other array items in source and target arrays.

Een voorwaarde en taak instellen die moet worden uitgevoerd tussen elementen

Als u een toewijzingsrelatie wilt toevoegen die een voorwaarde evalueert en een taak uitvoert wanneer aan de voorwaarde wordt voldaan, kunt u meerdere functies gebruiken, zoals de functie If , een vergelijkingsfunctie zoals Groter en de taak die moet worden uitgevoerd, zoals Vermenigvuldigen.

In het voorbeeld in deze sectie wordt een korting berekend die moet worden toegepast wanneer de aankoophoeveelheid groter is dan 20 artikelen met behulp van de volgende functies:

  • Groter: Controleer of artikelhoeveelheid groter is dan 20.
  • Als: Controleer of de functie Groter waar retourneert.
  • Vermenigvuldigen: Bereken de korting door de artikelprijs te vermenigvuldigen met 10% en de artikelhoeveelheid.
  1. Als u wilt controleren wat er in code gebeurt terwijl u de toewijzing maakt, selecteert u code weergeven in de rechterbovenhoek van de kaart.

  2. Als u dat nog niet hebt gedaan, selecteert u op de kaart de doelelementen en vervolgens de bronelementen die u wilt toewijzen.

    In dit voorbeeld worden de volgende elementen geselecteerd:

    Screenshot showing the data map and elements to map.

  3. Selecteer in de linkerbovenhoek van de kaart functies weergeven (Icon for Show functions.).

  4. Voeg de volgende functies toe aan de kaart: Groter, If en Vermenigvuldigen

  5. Vouw alle functieshapes uit om de functiedetails en verbindingspunten weer te geven.

  6. Verbinding maken de bronelementen, functies en doelelementen als volgt:

    • Het element ItemPrice van het bronschema in het element ItemPrice van het doelschema
    • Het element ItemQuantity van het bronschema in het veld Waarde van de functie Groter
    • De uitvoer van de functie Groter naar het veld Voorwaarde van de functie If
    • Het element ItemPrice van het bronschema naar het veld Multiplicand 0* van de functie vermenigvuldigen
    • De uitvoer van de functie Vermenigvuldigen naar het veld Waarde van de functie If
    • De uitvoer van de functie If naar het element ItemDiscount van het doelschema

    Notitie

    In de functie If wordt het woord ANY rechts van de functienaam weergegeven, waarmee wordt aangegeven dat u de uitvoerwaarde aan alles kunt toewijzen.

  7. Geef in de volgende functies op het tabblad Eigenschappen de volgende waarden op:

    Function Invoerparameter en -waarde
    Groter - Waarde 1: Het bronelement ItemQuantity
    - Waarde 2: 20
    Vermenigvuldigen - Multiplicand #1: Het bronelement ItemPrice
    - Vermenigvuldiging #2: .10
    If - Voorwaarde: is groter dan(ItemQuantity,20)
    - Waarde: multiply(ItemPrice, .10)

    Op de volgende kaart ziet u het voltooide voorbeeld:

    Screenshot showing finished condition example.

    Het codeweergavevenster weerspiegelt de toewijzingsrelatie die u hebt gemaakt:

    Screenshot showing code view with conditional mapping between source and target elements using the functions, Greater, If, and Multiply.

Uw kaart opslaan

Wanneer u klaar bent, selecteert u Opslaan op de werkbalk Van de kaart.

Visual Studio Code slaat uw kaart op als de volgende artefacten:

  • Een <map-name.yml-bestand> in de projectmap Artifacts>MapDefinitions
  • Een <bestand your-map-name.xslt> in de map Artifacts> Kaarten projectmap

XSLT-bestand op elk gewenst moment genereren

Als u het <bestand your-map-name.xslt> op elk gewenst moment wilt genereren, selecteert u XSLT genereren op de werkbalk van de kaart.

Uw kaart testen

Om te bevestigen dat de transformatie werkt zoals verwacht, hebt u voorbeeldinvoergegevens nodig.

  1. Voordat u de kaart test, moet u het meest recente <bestand your-map-name.xslt> genereren.

  2. Selecteer Testen op de werkbalk van de kaart.

  3. Plak uw voorbeeldinvoergegevens in het deelvenster Testtoewijzing in het invoervenster en selecteer vervolgens Testen.

    Het testvenster schakelt over naar het tabblad Uitvoer en toont de statuscode en antwoordtekst van de test.

Uw kaart aanroepen vanuit een werkstroom in uw project

  1. Selecteer Verkenner (pictogram bestanden) in het linkermenu van Visual Studio Code om de structuur van uw logische app-project weer te geven.

  2. Vouw de map met de naam van uw werkstroom uit. Selecteer Open Designer in het snelmenu van het bestand workflow.json.

  3. Volg deze algemene stappen in de werkstroomontwerper om de ingebouwde actie Data Mapper Operations met de naam Transformeren toe te voegen met behulp van Data Mapper XSLT.

  4. Selecteer in de ontwerpfunctie de actie Transformeren met data mapper XSLT .

  5. Geef in het deelvenster met actiegegevens dat wordt weergegeven de inhoudswaarde op en laat de kaartbron ingesteld op logische app. Selecteer in de lijst Mapnaam het kaartbestand (.xslt) dat u wilt gebruiken.

    Screenshot shows Visual Studio Code, Standard workflow designer, with selected action named Transform using Data Mapper XSLT and action properties.

    Als u dezelfde transformatie wilt gebruiken met de XSLT-actie Data Mapper in Azure Portal, moet u de kaart toevoegen aan de resource van de standaard logische app.

Maak een aangepaste functie

Als u uw eigen functie wilt maken die u kunt gebruiken met het hulpprogramma Data Mapper, voert u de volgende stappen uit:

  1. Maak een XML-bestand (.xml) met een betekenisvolle naam die het doel van uw functie beschrijft.

    Als u meerdere gerelateerde functies hebt, kunt u één bestand voor deze functies gebruiken. Hoewel u elke bestandsnaam kunt gebruiken, maakt een betekenisvolle bestandsnaam of categorie uw functies gemakkelijker te identificeren, te vinden en te ontdekken.

  2. In het XML-bestand moet u het volgende schema gebruiken voor de functiedefinitie:

    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:element name="customfunctions">
          <xs:complexType>
             <xs:sequence>
                <xs:element maxOccurs="unbounded" name="function">
                   <xs:complexType>
                      <xs:sequence>
                         <xs:element maxOccurs="unbounded" name="param">
                            <xs:complexType>
                                <xs:attribute name="name" type="xs:string" use="required" />
                                <xs:attribute name="as" type="xs:string" use="required" />
                            </xs:complexType>
                         </xs:element>
                         <xs:any minOccurs="0" />
                      </xs:sequence>
                      <xs:attribute name="name" type="xs:string" use="required" />
                      <xs:attribute name="as" type="xs:string" use="required" />
                      <xs:attribute name="description" type="xs:string" use="required" />
                   </xs:complexType>
                </xs:element>
             </xs:sequence>
          </xs:complexType>
       </xs:element>
    </xs:schema>
    

    Elk XML-element met de naam functie implementeert een XSLT3.0-stijlfunctie met nog enkele kenmerken. De lijst met functies van Data Mapper bevat de functienaam, beschrijving, parameternamen en parametertypen.

    In het volgende voorbeeld ziet u de implementatie voor een SampleFunctions.xml-bestand :

    <?xml version="1.0" encoding="utf-8" ?>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <customfunctions>
       <function name="age" as="xs:float" description="Returns the current age.">
          <param name="inputDate" as="xs:date"/> 
          <value-of select="round(days-from-duration(current-date() - xs:date($inputDate)) div 365.25, 1)"/>
       </function> 
       <function name="custom-if-then-else" as="xs:string" description="Evaluates the condition and returns corresponding value.">
          <param name="condition" as="xs:boolean"/>
          <param name="thenResult" as="xs:anyAtomicType"/>
          <param name="elseResult" as="xs:anyAtomicType"/>
          <choose>
             <when test="$condition">
                <value-of select="$thenResult"></value-of>
             </when>
             <otherwise>
                <value-of select="$elseResult"></value-of>
             </otherwise>
          </choose>
       </function>
    </customfunctions>
    
  3. Open op uw lokale computer de map voor uw standaard-logische app-project.

  4. Open de map Artifacts en maak de volgende mapstructuur, als er geen bestaat: DataMapper>Extensions>Functions.

  5. Sla het XML-bestand van uw functie op in de map Functions .

  6. Als u de aangepaste functie wilt vinden in de lijst met functies van het Data Mapper-hulpprogramma, zoekt u de functie of vouwt u de verzameling Aangepaste functies uit.

Volgende stappen

  • Zie Kaarten toevoegen voor transformaties in werkstromen met Azure Logic Apps voor gegevenstransformaties met B2B-bewerkingen in Azure Logic Apps