Sdílet prostřednictvím


Vytváření map pro transformaci dat v Azure Logic Apps pomocí editoru Visual Studio Code

Platí pro: Azure Logic Apps (Standard)

Pokud chcete vyměňovat zprávy s různými formáty XML nebo JSON v pracovním postupu Azure Logic Apps, musíte transformovat data z jednoho formátu do jiného, zejména pokud máte mezery mezi strukturami zdrojového a cílového schématu. Transformace dat vám pomůže tyto mezery překlenout. Pro tento úkol je potřeba vytvořit mapu, která definuje transformaci mezi datovými prvky ve zdrojovém a cílovém schématu.

K vizuálnímu vytvoření a úpravě mapy můžete použít Visual Studio Code s rozšířením Azure Logic Apps (Standard) v kontextu projektu standardní aplikace logiky. Nástroj Mapování dat poskytuje jednotné prostředí pro mapování a transformaci XSLT pomocí gest přetažení, předem vytvořené knihovny funkcí pro vytváření výrazů a způsob ručního testování map, které vytvoříte a používáte ve svých pracovních postupech.

Po vytvoření mapy můžete mapu přímo volat z pracovního postupu v projektu aplikace logiky nebo z pracovního postupu na webu Azure Portal. Pro tuto úlohu můžete ve svém pracovním postupu použít akci Operace mapovače dat s názvem Transformovat pomocí mapování dat XSLT .

Tento průvodce postupy ukazuje, jak vytvořit prázdnou mapu dat, zvolit zdrojové a cílové schémata, vybrat prvky schématu pro zahájení mapování, vytvořit různá mapování, uložit a otestovat mapu a pak volat mapu z pracovního postupu v projektu aplikace logiky.

Omezení a známé problémy

  • Mapovač dat v současné době funguje jenom v editoru Visual Studio Code spuštěném v operačních systémech Windows.

  • Mapovač dat je aktuálně k dispozici pouze v editoru Visual Studio Code, nikoli na webu Azure Portal, a pouze v projektech standardních aplikací logiky, nikoli v projektech aplikací logiky Consumption.

  • Mapovač dat v současné době nepodporuje soubory hodnot oddělených čárkami (.csv).

  • Podokno zobrazení kódu mappera dat je aktuálně jen pro čtení.

  • Rozložení mapy a pozice položky jsou aktuálně automatické a jen pro čtení.

  • Pokud chcete volat mapy vytvořené pomocí nástroje Mapování dat, můžete použít pouze akci Operace mapovače dat s názvem Transformace pomocí XSLT nástroje Mapování dat. Pro mapy vytvořené jakýmkoli jiným nástrojem použijte akci Operace XML s názvem TransformOVAT XML.

  • Pokud chcete použít mapy, které vytvoříte pomocí nástroje Mapování dat, ale na webu Azure Portal, musíte je přidat přímo do prostředku aplikace logiky Standard.

Předpoklady

  • Visual Studio Code a rozšíření Azure Logic Apps (Standard) pro vytváření pracovních postupů standardní aplikace logiky

    Poznámka:

    Dříve samostatné rozšíření Mapování dat se teď slučuje s rozšířením Azure Logic Apps (Standard). Aby nedocházelo ke konfliktům, odebere se při instalaci nebo aktualizaci rozšíření Azure Logic Apps (Standard) jakákoli existující verze rozšíření Mapování dat. Po instalaci nebo aktualizaci rozšíření restartujte Visual Studio Code.

  • Zdrojové a cílové soubory schématu, které popisují datové typy, které se mají transformovat. Tyto soubory můžou mít následující formáty:

    • Definiční soubor schématu XML s příponou souboru .xsd
    • Soubor JavaScript Object Notation s příponou souboru .json
  • Projekt standardní aplikace logiky, který zahrnuje stavový nebo bezstavový pracovní postup s alespoň triggerem. Pokud projekt nemáte, postupujte podle těchto kroků v editoru Visual Studio Code:

    1. Připojení ke svému účtu Azure, pokud jste to ještě neudělali.

    2. Vytvořte místní složku, místní projekt standardní aplikace logiky a stavový nebo bezstavový pracovní postup. Během vytváření pracovního postupu vyberte Otevřít v aktuálním okně.

  • Ukázková vstupní data, pokud chcete mapu otestovat, a zkontrolovat, jestli transformace funguje podle očekávání.

  • Chcete-li použít funkci Spustit XSLT, musí fragmenty kódu XSLT existovat v souborech, které používají příponu názvu souboru .xml nebo .xslt . Fragmenty kódu XSLT musíte umístit do složky InlineXslt do struktury složek místního projektu: Artifacts>DataMapper>Extensions>InlineXslt. Pokud tato struktura složek neexistuje, vytvořte chybějící složky.

Vytvoření mapy dat

  1. V nabídce editoru Visual Studio Code vlevo vyberte ikonu Azure .

  2. V podokně Azure v části Mapování dat vyberte Vytvořit novou mapu dat.

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

  3. Zadejte název mapování dat.

  4. Podle následujících kroků zadejte zdrojová a cílová schémata:

    1. Na ploše mapy vyberte Přidat zdrojové schéma.

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

    2. V podokně Konfigurovat, které se otevře, vyberte Přidat nové>procházení.

    3. Vyhledejte a vyberte zdrojový soubor schématu a pak vyberte Přidat.

      Pokud se ve zdrojovém schématu nezobrazí okno Otevřít, změňte ze seznamu typů souborů soubor XSD (*.xsd) na Všechny soubory (*.*).

      Na mapě se teď zobrazují datové typy ze zdrojového schématu. Příklady v tomto průvodci najdete tady:

    4. Na ploše mapy vyberte Přidat cílové schéma.

    5. V podokně Konfigurovat, které se otevře, vyberte Přidat nové>procházení.

    6. Vyhledejte a vyberte cílový soubor schématu a pak vyberte Přidat.

      Pokud se v okně Otevřít nezobrazí vaše cílové schéma, změňte ze seznamu typů souborů soubor XSD (*.xsd) na Všechny soubory (*.*).

      Na mapě se teď zobrazují datové typy z cílového schématu.

    Případně můžete do projektu aplikace logiky přidat soubory zdrojového a cílového schématu místně do složky Schémata artefaktů/, aby se zobrazily ve Visual Studio Code. V tomto případě můžete v nástroji Mapování dat v podokně Konfigurovat určit zdrojové a cílové schéma tak, že vyberete možnost Vybrat existující místo přidat nové.

    Po dokončení bude mapa vypadat podobně jako v následujícím příkladu:

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

Následující tabulka popisuje možné datové typy, které se mohou objevit ve schématu:

Symbol Typ Další informace
Icon representing an Array data type. Pole Obsahuje položky nebo opakující se uzly položek.
Icon representing a Binary data type. Binární
Icon representing a Bool data type. Bool Pouze pravda nebo nepravda
Icon representing a Complex data type. Složité Objekt XML s podřízenými vlastnostmi, podobně jako typ JSON objektu
Icon representing a DateTime data type. DateTime
Icon representing a Decimal data type. Desetinné
Icon representing an Integer data type. Integer pouze čísla Kdo
Icon representing the NULL symbol. Null Nejedná se o datový typ, ale zobrazí se, když existuje chyba nebo neplatný typ.
Icon representing a Number data type. Počet Celé číslo nebo desítkové číslo JSON
Icon representing an Object data type. Objekt Objekt JSON s podřízenými vlastnostmi, podobně jako komplexní typ XML
Icon representing a String data type. Řetězec

Pokud se chcete pohybovat po mapě, máte následující možnosti:

  • Pokud chcete posouvat, přetáhněte ukazatel myši kolem povrchu mapy. Nebo při pohybu myši nebo trackballu stiskněte a podržte kolečko myši.

  • Po přesunutí o jednu úroveň dolů do mapy se v levém dolním rohu mapy zobrazí navigační panel, kde můžete vybrat z následujících možností:

    Screenshot showing map navigation bar.

    Možnost Alternativní gesto
    Oddálit Na ploše mapy stiskněte shift + dvojitý výběr.
    -Nebo-
    Posuňte se dolů kolečkem myši.
    Přiblížení Na povrchu mapy poklikejte na výběr.
    -Nebo-
    Posuňte se nahoru kolečkem myši.
    Zvětšení podle velikosti Nic
    Zobrazit (skrýt) minimapu Nic
  • Pokud chcete na mapě přejít o jednu úroveň výš, vyberte v horní části mapy cestu s popisem cesty s popisem cesty.

Výběr cílových a zdrojových prvků pro mapování

  1. Na ploše mapy, počínaje pravou stranou, v oblasti cílového schématu vyberte cílový prvek, který chcete mapovat. Pokud je požadovaný prvek podřízený nadřazeným elementem, najděte a rozbalte nadřazený prvek.

  2. Teď na levé straně v oblasti zdrojového schématu vyberte vybrat prvek.

  3. V okně Zdrojové schéma , které se zobrazí, vyberte jeden nebo více zdrojových prvků, které se mají zobrazit na mapě.

    • Pokud chcete zahrnout nadřazené a přímé podřízené položky, otevřete místní nabídku nadřazeného objektu a vyberte Přidat podřízené položky.

    • Pokud chcete zahrnout nadřazený objekt a všechny podřízené položky pro daného nadřazeného objektu, včetně všech podřízených nadřazených položek, otevřete místní nabídku nadřazeného objektu nejvyšší úrovně a vyberte Přidat podřízené položky (rekurzivní).

  4. Až budete hotovi, můžete okno zdrojového schématu zavřít. Později můžete přidat další zdrojové prvky. Na mapě v levém horním rohu vyberte Zobrazit zdrojové schéma (Icon for Show source schema.).

Vytvoření přímého mapování mezi prvky

Pro jednoduchou transformaci mezi prvky se stejným typem ve zdrojovém a cílovém schématu postupujte takto:

  1. Pokud chcete zkontrolovat, co se stane v kódu při vytváření mapování, vyberte v pravém horním rohu mapy zobrazit kód.

  2. Pokud jste to ještě neudělali, vyberte na mapě cílové prvky a potom zdrojové prvky, které chcete mapovat.

  3. Přesuňte ukazatel myši na zdrojový prvek tak, aby se zobrazil kruh i znaménko plus (+).

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

  4. Přetáhněte čáru na cílový prvek tak, aby se čára spojila s kruhem, který se zobrazí.

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

    Právě jste vytvořili přímé mapování mezi oběma prvky.

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

    Okno zobrazení kódu odráží vztah mapování, který jste vytvořili:

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

Poznámka:

Pokud vytvoříte mapování mezi prvky, u kterých se jejich datové typy neshodují, zobrazí se v cílovém prvku upozornění, například:

Screenshot showing direct mapping between mismatching data types.

Vytvoření komplexního mapování mezi prvky

Pro složitější transformaci mezi prvky ve zdrojovém a cílovém schématu, jako jsou prvky, které chcete kombinovat nebo které mají různé datové typy, můžete k provedení těchto transformací použít jednu nebo více funkcí.

Následující tabulka uvádí dostupné skupiny funkcí a ukázkové funkce, které můžete použít:

Seskupit Ukázkové funkce
Kolekce Average, Count, Direct Access, Distinct values, Filter, Index, Join, Maximum, Minimum, Reverse, Sort, Subsequence, Sum
Převod To date, To integer, To number, To string
Datum a čas Přidat dny
Logické porovnání Equal, Exists, Greater, Greater, Greater nebo equal, If, If else, Is nil, Is null, Is number, Is string, Less, Less nebo equal, Logical AND, Logical NOT, Logical OR, Not equal
Matematické Absolutní, Add, Arctangent, Ceiling, Cosine, Divide, Exponential, Exponential (základ 10), Floor, Integer divide, Log, Log (základ 10), Module, Multipli, Power, Round, Sine, Square root, Subtract, Tangent
Řetězec Kód odkazuje na řetězec, Concat, Contains, Ends with, Length, Lowercase, Name, Regular expression matches, Regular expression replace, Replace, Starts with, String to code-points, Substring after, Substring after, Substring before, Trim, Trim left, Trim right, Uppercase
Nástroj Copy, Error, Execute XPath, Format date-time, Format number, Run XSLT

Popisek funkce na mapě vypadá jako v následujícím příkladu a je barevně kódovaný na základě skupiny funkcí. Na levé straně názvu funkce se zobrazí symbol funkce. Na pravé straně názvu funkce se zobrazí symbol datového typu výstupu funkce.

Screenshot showing example function label.

Přidání funkce bez relace mapování

Příklad v této části transformuje typ zdrojového prvku z typu String na typ DateTime, který odpovídá cílovému typu elementu. Příklad používá funkci To date , která přebírá jeden vstup.

  1. Pokud chcete zkontrolovat, co se stane v kódu při vytváření mapování, vyberte v pravém horním rohu mapy zobrazit kód.

  2. Pokud jste to ještě neudělali, vyberte na mapě cílové prvky a potom zdrojové prvky, které chcete mapovat.

  3. V levém horním rohu mapy vyberte Zobrazit funkce (Icon for Show functions.).

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

  4. V seznamu funkcí, který se otevře, vyhledejte a vyberte funkci, kterou chcete použít, která přidá funkci do mapy. Pokud se funkce na mapě nezobrazuje, zkuste ji oddálit na povrchu mapy.

    V tomto příkladu vyberete funkci Datum do . Můžete také najít a vybrat všechny vlastní funkce stejným způsobem. Další informace najdete v tématu Vytvoření vlastní funkce.

    Screenshot showing the selected function named To date.

    Poznámka:

    Pokud neexistuje žádná čára mapování nebo je vybrána při přidání funkce do mapy, zobrazí se na mapě funkce, ale odpojená od jakýchkoli prvků nebo jiných funkcí, například:

    Screenshot showing the disconnected function, To date.

  5. Rozbalte obrazec funkce, aby se zobrazily podrobnosti a spojovací body funkce. Pokud chcete obrazec funkce rozbalit, vyberte uvnitř obrazce.

  6. Připojení funkci ke zdrojovým a cílovým prvkům.

    1. Přetáhněte a nakreslete čáru mezi zdrojovými prvky a levým okrajem funkce. Můžete začít buď ze zdrojových prvků, nebo z funkce.

      Screenshot showing start mapping between source element and function.

    2. Přetáhněte a nakreslete čáru mezi pravým okrajem funkce a cílovým prvkem. Můžete začít buď z cílového prvku, nebo z funkce.

      Screenshot showing finish mapping between function and target element.

  7. Na kartě Vlastnosti funkce potvrďte nebo upravte vstup, který chcete použít.

    Screenshot showing Properties tab for the function, To date.

    U některých datových typů, jako jsou pole, se může zobrazit také rozsah transformace. Tento obor je obvykle okamžitý prvek, například pole, ale v některých scénářích může rozsah existovat nad rámec okamžitého prvku.

    Okno zobrazení kódu odráží vztah mapování, který jste vytvořili:

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

Pokud chcete například iterovat položky pole, přečtěte si téma Vytvoření smyčky mezi poli. Pokud chcete provést úlohu, když hodnota elementu splňuje podmínku, přečtěte si téma Přidání podmínky mezi prvky.

Přidání funkce do existující relace mapování

Pokud už vztah mapování mezi zdrojovými a cílovými prvky existuje, můžete funkci přidat pomocí následujícího postupu:

  1. Na mapě vyberte čáru pro mapování, které jste vytvořili.

  2. Přesuňte ukazatel myši na vybranou čáru a vyberte ikonu+ plus (), která se zobrazí, například:

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

  3. V seznamu funkcí, který se otevře, vyhledejte a vyberte funkci, kterou chcete použít.

    Funkce se zobrazí na mapě a automaticky se spojí mezi zdrojovými a cílovými prvky.

Přidání funkce s více vstupy

Příklad v této části zřetězí více typů zdrojových prvků, abyste mohli výsledky mapovat na typ cílového prvku. Příklad používá funkci Concat , která přebírá více vstupů.

  1. Pokud chcete zkontrolovat, co se stane v kódu při vytváření mapování, vyberte v pravém horním rohu mapy zobrazit kód.

  2. Pokud jste to ještě neudělali, vyberte na mapě cílové prvky a potom zdrojové prvky, které chcete mapovat.

  3. V levém horním rohu mapy vyberte Zobrazit funkce (Icon for Show functions.).

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

  4. V seznamu funkcí, který se otevře, vyhledejte a vyberte funkci, kterou chcete použít, která přidá funkci do mapy. Pokud se funkce na mapě nezobrazuje, zkuste ji oddálit na povrchu mapy.

    Tento příklad vybere funkci Concat :

    Screenshot showing the selected function named Concat.

    Poznámka:

    Pokud neexistuje žádná čára mapování nebo je vybrána při přidání funkce do mapy, zobrazí se funkce na mapě, ale odpojená od jakýchkoli prvků nebo jiných funkcí. Pokud funkce vyžaduje konfiguraci, zobrazí se v pravém horním rohu funkce červená tečka, například:

    Screenshot showing the disconnected function, Concat.

  5. Rozbalte obrazec funkce, aby se zobrazily podrobnosti a spojovací body funkce. Pokud chcete obrazec funkce rozbalit, vyberte uvnitř obrazce.

  6. V podokně informací o funkci vyberte na kartě Vlastnosti v části Vstupy prvky zdrojových dat, které chcete použít jako vstupy.

    Tento příklad vybere elementy FirstName a LastName source jako vstupy funkce, které automaticky přidají příslušná připojení na mapě.

    Screenshot showing multiple source data elements selected as function inputs.

  7. Chcete-li dokončit mapování, přetáhněte a nakreslete čáru mezi pravým okrajem funkce a cílovým prvkem. Můžete začít buď z cílového prvku, nebo z funkce.

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

    Okno zobrazení kódu odráží vztah mapování, který jste vytvořili:

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

Vytvoření smyčky mezi poli

Pokud zdrojová a cílová schémata obsahují pole, můžete vytvořit relaci mapování smyčky, která prochází položkami v těchto polích. Příklad v této části prochází zdrojovým polem Zaměstnanec a cílovým polem Osoba.

  1. Pokud chcete zkontrolovat, co se stane v kódu při vytváření mapování, vyberte v pravém horním rohu mapy zobrazit kód.

  2. Na mapě v oblasti cílového schématu vyberte prvek cílového pole a prvky cílové položky pole, které chcete mapovat.

  3. Na mapě v oblasti cílového schématu rozbalte cílový prvek pole a položky pole.

  4. V oblasti zdrojového schématu přidejte do mapy element zdrojové pole a elementy položky pole.

  5. Vytvořte přímé mapování mezi zdrojovými a cílovými prvky.

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

    Při prvním vytvoření relace mapování mezi odpovídající dvojicí položek pole se relace mapování automaticky vytvoří na úrovni nadřazeného pole.

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

    Okno zobrazení kódu odráží vztah mapování, který jste vytvořili:

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

  6. Pokračujte v mapování ostatních prvků pole.

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

Nastavení podmínky a úkolu pro provádění mezi prvky

Pokud chcete přidat vztah mapování, který vyhodnotí podmínku a provede úlohu při splnění podmínky, můžete použít více funkcí, jako je funkce If , porovnávací funkce, například Větší, a úkol, který se má provést, například Násobit.

Příklad v této části vypočítá slevu, která se použije, když množství nákupu překročí 20 položek pomocí následujících funkcí:

  • Větší: Zkontrolujte, jestli je množství položek větší než 20.
  • If: Zkontrolujte, zda funkce Greater vrátí hodnotu true.
  • Násobení: Výpočet slevy vynásobením ceny položky o 10 % a množstvím položek.
  1. Pokud chcete zkontrolovat, co se stane v kódu při vytváření mapování, vyberte v pravém horním rohu mapy zobrazit kód.

  2. Pokud jste to ještě neudělali, vyberte na mapě cílové prvky a potom zdrojové prvky, které chcete mapovat.

    Tento příklad vybere následující prvky:

    Screenshot showing the data map and elements to map.

  3. V levém horním rohu mapy vyberte Zobrazit funkce (Icon for Show functions.).

  4. Přidejte do mapy následující funkce: Greater, If a Multipli

  5. Rozbalte všechny obrazce funkce, aby se zobrazily podrobnosti o funkci a spojovací body.

  6. Připojení zdrojových prvků, funkcí a cílových elementů následujícím způsobem:

    • Element ItemPrice zdrojového schématu do elementu ItemPrice cílového schématu
    • Element ItemQuantity zdrojového schématu do pole Value funkce Greater
    • Výstup funkce Greater do pole Podmínka funkce If
    • Element ItemPrice zdrojového schématu do pole Multiplicand 0* funkce Multiplicand
    • Výstup funkce Násobit do pole Hodnota funkce If
    • Výstup funkce If do elementu ItemDiscount cílového schématu

    Poznámka:

    Ve funkci If se vpravo od názvu funkce zobrazí slovo ANY, které označuje, že můžete přiřadit výstupní hodnotu k ničemu.

  7. V následujících funkcích na kartě Vlastnosti zadejte následující hodnoty:

    Function Vstupní parametr a hodnota
    Větší - Hodnota č. 1: Zdrojový prvek s názvem ItemQuantity
    - Hodnota č. 2: 20
    Násobit - Multiplicand #1: Zdrojový prvek s názvem ItemPrice
    - Multiplicand č. 2: .10
    Pokud - Podmínka: is-greater-than(ItemQuantity;20)
    - Hodnota: multipli(ItemPrice; .10)

    Následující mapa ukazuje dokončený příklad:

    Screenshot showing finished condition example.

    Okno zobrazení kódu odráží vztah mapování, který jste vytvořili:

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

Uložení mapy

Až budete hotovi, na panelu nástrojů mapy vyberte Uložit.

Visual Studio Code uloží mapu jako následující artefakty:

  • Soubor <your-map-name.yml> ve složce projektu Artifacts>MapDefinitions
  • Soubor <your-map-name.xslt> ve složce projektu Artifacts Mapy>

Kdykoliv vygenerovat soubor XSLT

Pokud chcete kdykoli vygenerovat soubor your-map-name.xslt>, vyberte na panelu nástrojů mapy možnost Generovat XSLT.<

Otestování mapy

Abyste si ověřili, že transformace funguje podle očekávání, budete potřebovat ukázková vstupní data.

  1. Než mapu otestujete, nezapomeňte vygenerovat nejnovější <soubor your-map-name.xslt.>

  2. Na panelu nástrojů mapy vyberte Test.

  3. V podokně Mapy testů vložte v okně Vstup ukázková vstupní data a pak vyberte Test.

    Podokno testu se přepne na kartu Výstup a zobrazí stavový kód testu a text odpovědi.

Volání mapy z pracovního postupu v projektu

  1. V nabídce editoru Visual Studio Code vlevo vyberte Průzkumník (ikona souborů) a zobrazte strukturu projektu aplikace logiky.

  2. Rozbalte složku s názvem pracovního postupu. V místní nabídce souboru workflow.json vyberte Otevřít Návrhář.

  3. V návrháři pracovního postupu přidejte pomocí těchto obecných kroků integrovanou akci Operace mapování dat s názvem Transformace pomocí XSLT nástroje Data Mapper.

  4. V návrháři vyberte akci Transformovat pomocí mapování dat XSLT .

  5. V podokně informací o akci, které se zobrazí, zadejte hodnotu Obsahu a ponechte zdroj mapy nastavený na Aplikaci logiky. V seznamu Název mapy vyberte soubor mapy (.xslt), který chcete použít.

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

    Pokud chcete použít stejnou transformaci pomocí akce XSLT mapovače dat na webu Azure Portal, musíte mapu přidat do prostředku aplikace logiky Standard.

Vytvoření vlastní funkce

Pokud chcete vytvořit vlastní funkci, kterou můžete použít s nástrojem Mapování dat, postupujte takto:

  1. Vytvořte soubor XML (.xml), který má smysluplný název, který popisuje účel vaší funkce.

    Pokud máte více souvisejících funkcí, můžete pro tyto funkce použít jeden soubor. I když můžete použít libovolný název souboru, smysluplný název souboru nebo kategorie usnadňují identifikaci, hledání a zjišťování funkcí.

  2. V souboru XML musíte pro definici funkce použít následující schéma:

    <?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>
    

    Každý element XML s názvem "function" implementuje funkci stylu XSLT3.0 s několika dalšími atributy. Seznam funkcí mapovače dat obsahuje název funkce, popis, názvy parametrů a typy parametrů.

    Následující příklad ukazuje implementaci souboru SampleFunctions.xml :

    <?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. Na místním počítači otevřete složku pro projekt standardní aplikace logiky.

  4. Otevřete složku Artifacts a vytvořte následující strukturu složek, pokud žádná neexistuje: Funkce rozšíření>DataMapper.>

  5. Do složky Functions uložte soubor XML vaší funkce.

  6. Pokud chcete najít vlastní funkci v seznamu funkcí nástroje Mapování dat, vyhledejte funkci nebo rozbalte kolekci vlastních funkcí .

Další kroky