Přidání map pro transformace v pracovních postupech pomocí Azure Logic Apps
Platí pro: Azure Logic Apps (Consumption + Standard)
Akce pracovního postupu, jako je transformace XML a Liquid , vyžadují k provádění svých úkolů mapování. Například akce Transformovat XML vyžaduje mapování pro převod XML mezi formáty. Mapa je dokument XML, který používá jazyk XSLT (Extensible Stylesheet Language Transformation), který popisuje, jak převést data z XML do jiného formátu a má příponu názvu souboru .xslt. Mapa se skládá ze zdrojového schématu XML jako vstupu a cílového schématu XML jako výstupu. Můžete definovat základní transformaci, například zkopírování jména a adresy z jednoho dokumentu do jiného. Nebo můžete vytvořit složitější transformace pomocí předefinovaných operací mapování. Data můžete manipulovat nebo řídit pomocí různých předdefinovaných funkcí, jako jsou manipulace s řetězci, podmíněné přiřazení, aritmetické výrazy, formátovací moduly data a dokonce i konstrukce smyček.
Předpokládejme například, že pravidelně dostáváte objednávky B2B nebo faktury od zákazníka, který používá formát data YearMonthDay (RRRRMMDD). Vaše organizace ale používá formát data MonthDayYear (MMDDYYYYYYY). Před uložením podrobností objednávky nebo faktury do databáze aktivit zákazníka můžete definovat a použít mapu, která transformuje formát RRRRMMDD na formát MMDDRRRR.
Tento průvodce ukazuje, jak přidat mapu pro pracovní postup, který se má použít. Mapy můžete přidat buď do propojeného účtu integrace, nebo pokud máte standardní aplikaci logiky, můžete mapy přidat přímo do prostředku aplikace logiky.
Požadavky
Účet a předplatné Azure. Pokud ještě nemáte předplatné, zaregistrujte si bezplatný účet Azure.
Mapa, kterou chcete přidat. K vytváření map můžete použít některý z následujících nástrojů:
Visual Studio Code a rozšíření Mapper dat Chcete-li volat mapy vytvořené pomocí mapovače dat z pracovního postupu, je nutné použít akci Operace mapování dat s názvem Transformace pomocí mapování dat XSLT, nikoli akci operace XML operace XML s názvem Transformovat. Další informace najdete v tématu Vytváření map pro transformaci dat pomocí editoru Visual Studio Code.
Visual Studio 2019 a rozšíření Microsoft Azure Logic Apps Enterprise Integration Tools
Poznámka:
Nenainstalujte rozšíření Microsoft Azure Logic Apps Enterprise Integration Tools spolu s rozšířením BizTalk Server. Při použití obou rozšíření může dojít k neočekávanému chování. Ujistěte se, že máte nainstalovaná jenom jedno z těchto rozšíření.
Na monitorech s vysokým rozlišením můžete zaznamenat problém se zobrazením návrháře map v sadě Visual Studio. Chcete-li tento problém se zobrazením vyřešit, restartujte sadu Visual Studio v režimu bez rozlišení DPI nebo přidejte hodnotu registru DPIUNAWARE.
Další informace najdete v části Vytvoření map v tomto článku.
Na základě toho, jestli pracujete na pracovním postupu aplikace logiky Consumption nebo Standard, budete potřebovat prostředek účtu integrace. Tento prostředek obvykle potřebujete, když chcete definovat a ukládat artefakty pro použití v podnikových integracích a pracovních postupech B2B.
Důležité
Abyste mohli spolupracovat, musí váš účet integrace i prostředek aplikace logiky existovat ve stejném předplatném Azure a v oblasti Azure.
Pokud pracujete na pracovním postupu aplikace logiky Consumption, budete potřebovat účet integrace, který je propojený s prostředkem aplikace logiky.
Pokud pracujete na pracovním postupu standardní aplikace logiky, můžete svůj účet integrace propojit s prostředkem aplikace logiky, nahrát mapy přímo do prostředku aplikace logiky nebo obojí na základě následujících scénářů:
Pokud už máte účet integrace s artefakty, které potřebujete nebo chcete použít, můžete svůj účet integrace propojit s několika prostředky standardní aplikace logiky, ve kterých chcete artefakty používat. Díky tomu nemusíte nahrávat mapy do každé jednotlivé aplikace logiky. Další informace najdete v tématu Propojení prostředku aplikace logiky s účtem integrace.
Integrovaný konektor Liquid umožňuje vybrat mapu, kterou jste předtím nahráli do prostředku aplikace logiky nebo do propojeného účtu integrace, ale ne do obou.
Pokud tedy účet integrace nemáte nebo potřebujete, můžete použít možnost nahrávání. V opačném případě můžete použít možnost propojení. V obou směrech můžete tyto artefakty použít napříč všemi podřízenými pracovními postupy v rámci stejného prostředku aplikace logiky.
Pracovní postupy Consumption a Standard podporují mapy XSLT, které odkazují na externí sestavení, což umožňuje přímé volání vlastního kódu .NET z map XSLT. Pro podporu této funkce mají pracovní postupy Consumption také následující požadavky:
Potřebujete 64bitové sestavení. Transformační služba spouští 64bitový proces, takže nejsou podporována 32bitová sestavení. Pokud máte zdrojový kód pro 32bitové sestavení, překompilujte kód do 64bitového sestavení. Pokud zdrojový kód nemáte, ale získali jste binární soubor od jiného poskytovatele, získejte od daného zprostředkovatele 64bitovou verzi. Někteří dodavatelé například poskytují sestavení v balíčcích, které mají 32bitovou i 64bitovou verzi. Pokud máte možnost, použijte místo toho 64bitovou verzi.
Do svého účtu integrace musíte nahrát sestavení i mapu v určitém pořadí. Nejprve nahrajte sestavení a pak nahrajte mapu, která odkazuje na sestavení.
Pokud je sestavení nebo mapa 2 MB nebo menší, můžete sestavení přidat a mapovat do svého účtu integrace přímo z webu Azure Portal.
Pokud je sestavení větší než 2 MB, ale není větší než limit velikosti sestavení, budete potřebovat účet úložiště Azure a kontejner objektů blob, kde můžete nahrát sestavení. Později můžete umístění kontejneru zadat při přidání sestavení do účtu integrace. Pro tento úkol popisuje následující tabulka položky, které potřebujete:
Položka Popis Účet služby Azure Storage V tomto účtu vytvořte kontejner objektů blob Azure pro vaše sestavení. Zjistěte , jak vytvořit účet úložiště. Kontejner objektů blob V tomto kontejneru můžete nahrát sestavení. Při přidání sestavení do účtu integrace potřebujete také umístění identifikátoru URI obsahu tohoto kontejneru. Zjistěte, jak vytvořit kontejner objektů blob. Azure Storage Explorer Tento nástroj vám pomůže snadněji spravovat účty úložiště a kontejnery objektů blob. Pokud chcete použít Průzkumník služby Storage, stáhněte a nainstalujte Průzkumník služby Azure Storage. Pak se pomocí postupu v části Začínáme s Průzkumník služby Storage připojte Průzkumník služby Storage k účtu úložiště. Další informace najdete v tématu Rychlý start: Vytvoření objektu blob v úložišti objektů pomocí Průzkumník služby Azure Storage.
Nebo na webu Azure Portal vyberte svůj účet úložiště. V nabídce účtu úložiště vyberte Průzkumník služby Storage.Pokud chcete přidat větší mapy, můžete použít rozhraní REST API služby Azure Logic Apps – Mapy. U standardních pracovních postupů není rozhraní REST API služby Azure Logic Apps momentálně k dispozici.
Omezení
Omezení se vztahují na počet artefaktů, jako jsou mapy, na účet integrace. Další informace najdete v tématu Omezení a informace o konfiguraci pro Azure Logic Apps.
Na základě toho, jestli pracujete na pracovním postupu aplikace logiky Consumption nebo Standard, platí následující omezení:
Standardní pracovní postupy
Podpora XSLT 1.0, 2.0 a 3.0
Na velikosti souborů mapování se nevztahují žádné limity.
Pracovní postupy consumption
Azure Logic Apps přiděluje omezenou paměť pro zpracování transformací XML. Pokud vytváříte pracovní postupy Consumption a transformace map nebo datové části mají vysokou spotřebu paměti, tyto transformace můžou selhat, což vede k chybám způsobeným nedostatkem paměti. Pokud se chcete tomuto scénáři vyhnout, zvažte tyto možnosti:
Upravte mapy nebo datové části, abyste snížili spotřebu paměti.
Vytvořte pracovní postupy standardní aplikace logiky, které běží v Azure Logic Apps s jedním tenantem a nabízejí vyhrazené a flexibilní možnosti pro výpočetní a paměťové prostředky.
Vytváření map
Mapy můžete vytvářet pomocí editoru Visual Studio Code s rozšířením Mapper dat nebo pomocí sady Visual Studio s rozšířením Microsoft Azure Logic Apps Enterprise Integration Tools.
Visual Studio Code
Když vytváříte mapy pomocí editoru Visual Studio Code a rozšíření mapování dat, můžete tyto mapy volat z pracovního postupu, ale pouze s akcí Operace mapování dat s názvem Transformovat pomocí mapování dat XSLT, nikoli akcí operací XML s názvem Transform XML. Další informace najdete v tématu Vytváření map pro transformaci dat pomocí editoru Visual Studio Code.
Visual Studio
Pokud vytváříte mapy pomocí sady Visual Studio, budete muset vytvořit projekt integrace se sadou Visual Studio 2019 a rozšířením Microsoft Azure Logic Apps Enterprise Integration Tools.
V projektu integrace můžete vytvořit soubor mapy integrace, který umožňuje vizuálně mapovat položky mezi dvěma soubory schématu XML. Tyto nástroje nabízejí následující možnosti mapování:
Pracujete s grafickým znázorněním mapy, která zobrazuje všechny relace a odkazy, které vytvoříte.
Můžete vytvořit přímou kopii dat mezi schématy XML, které používáte k vytvoření mapy. Sada Enterprise Integration SDK pro Visual Studio obsahuje mapovač, který tuto úlohu usnadňuje tak, že nakreslí čáru, která spojuje prvky ve zdrojovém schématu XML s jejich protějšky v cílovém schématu XML.
Operace nebo funkce pro více map jsou k dispozici, včetně řetězcových funkcí, funkcí data a času atd.
Pokud chcete přidat ukázkovou zprávu XML, můžete použít funkci testování mapování. Pomocí jediného gesta můžete otestovat mapu, kterou jste vytvořili, a zkontrolovat vygenerovaný výstup.
Po sestavení projektu získáte dokument XSLT.
Mapa musí mít následující atributy a CDATA
oddíl, který obsahuje volání kódu sestavení:
name
je název vlastního sestavení.namespace
je obor názvů ve vašem sestavení, který obsahuje vlastní kód.
Následující příklad ukazuje mapu, která odkazuje na sestavení s názvem XslUtilitiesLib a volá circumference
metodu ze sestavení.
<?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>
Přidání odkazovaných sestavení
Prostředek aplikace logiky Consumption podporuje odkazování na externí sestavení z map, která umožňují přímé volání vlastního kódu .NET z map XSLT.
Do vyhledávacího pole webu Azure Portal zadejte účty integrace a vyberte Účty integrace.
Vyberte účet integrace, do kterého chcete přidat sestavení.
V nabídce účtu integrace vyberte Přehled. V části Nastavení vyberte Sestavení.
Na panelu nástrojů podokna Sestavení vyberte Přidat.
Na základě velikosti souboru sestavení postupujte podle kroků pro nahrání sestavení, které je až 2 MB nebo větší než 2 MB, ale pouze 8 MB. Omezení množství sestavení v účtech integrace najdete v tématu Limity a konfigurace pro Azure Logic Apps.
Poznámka:
Pokud změníte sestavení, musíte také aktualizovat mapu bez ohledu na to, jestli má mapa změny.
Přidání sestavení až do 2 MB
V části Přidat sestavení zadejte název sestavení. Ponechte malý soubor vybraný. Vedle pole Sestavení vyberte ikonu složky. Vyhledejte a vyberte sestavení, které nahráváte.
Jakmile vyberete sestavení, vlastnost Název sestavení automaticky zobrazí název souboru sestavení.
Jakmile budete hotovi, vyberte tlačítko OK.
Po dokončení nahrávání souboru sestavení se sestavení zobrazí v seznamu Sestavení . V podokně Přehled vašeho účtu integrace se zobrazí také nahrané sestavení v části Artefakty.
Přidání sestavení větších než 2 MB
Pokud chcete přidat větší sestavení, můžete sestavení nahrát do kontejneru objektů blob Azure v účtu úložiště Azure. Postup přidání sestavení se liší podle toho, jestli má kontejner objektů blob veřejný přístup ke čtení. Nejprve zkontrolujte, jestli má váš kontejner objektů blob veřejný přístup ke čtení, a to pomocí následujícího postupu: Nastavení úrovně veřejného přístupu pro kontejner objektů blob
Kontrola úrovně přístupu ke kontejneru
Otevřete Průzkumník služby Azure Storage V okně Průzkumníka rozbalte své předplatné Azure, pokud ještě není rozbalené.
Rozbalte účty> úložiště {your-storage-account}> Kontejnery objektů blob. Vyberte kontejner objektů blob.
V místní nabídce kontejneru objektů blob vyberte Nastavit úroveň veřejného přístupu.
Pokud má kontejner objektů blob alespoň veřejný přístup, vyberte Zrušit a postupujte podle následujících kroků na této stránce: Nahrání do kontejnerů s veřejným přístupem
Pokud kontejner objektů blob nemá veřejný přístup, vyberte Zrušit a postupujte podle následujících kroků na této stránce: Nahrání do kontejnerů bez veřejného přístupu
Nahrání do kontejnerů s veřejným přístupem
Nahrajte sestavení do účtu úložiště. V pravém okně vyberte Nahrát.
Po dokončení nahrávání vyberte nahrané sestavení. Na panelu nástrojů vyberte Kopírovat adresu URL , abyste zkopírovali adresu URL sestavení.
Vraťte se na web Azure Portal, kde je otevřené podokno Přidat sestavení . Zadejte název sestavení. Vyberte Velký soubor (větší než 2 MB).
Pole Identifikátor URI obsahu se teď zobrazí místo pole Sestavení .
Do pole Identifikátor URI obsahu vložte adresu URL sestavení. Dokončete přidání sestavení.
Po dokončení nahrávání sestavení se sestavení zobrazí v seznamu Sestavení . V podokně Přehled vašeho účtu integrace se zobrazí také nahrané sestavení v části Artefakty.
Nahrání do kontejnerů bez veřejného přístupu
Nahrajte sestavení do účtu úložiště. V pravém okně vyberte Nahrát.
Po dokončení nahrávání vygenerujte sdílený přístupový podpis (SAS) pro sestavení. V místní nabídce sestavení vyberte Získat sdílený přístupový podpis.
V podokně Sdílený přístupový podpis vyberte Vygenerovat identifikátor URI URI sdíleného> přístupového podpisu na úrovni kontejneru. Po vygenerování adresy URL SAS vedle pole adresa URL vyberte Kopírovat.
Vraťte se na web Azure Portal, kde je otevřené podokno Přidat sestavení . Zadejte název sestavení. Vyberte Velký soubor (větší než 2 MB).
Pole Identifikátor URI obsahu se teď zobrazí místo pole Sestavení .
Do pole Identifikátor URI obsahu vložte identifikátor URI SAS, který jste předtím vygenerovali. Dokončete přidání sestavení.
Po dokončení nahrávání sestavení se sestavení zobrazí v seznamu Sestavení . Na stránce Přehled vašeho účtu integrace se zobrazí také nahrané sestavení v části Artefakty.
Přidávání map
Pokud pracujete s pracovním postupem Consumption, musíte mapu přidat do propojeného účtu integrace.
Pokud pracujete se standardním pracovním postupem, máte následující možnosti:
Přidejte mapu do propojeného účtu integrace. Účet mapování a integrace můžete sdílet mezi několika prostředky aplikace logiky Standard a jejich podřízenými pracovními postupy.
Přidejte mapu přímo do prostředku aplikace logiky. Tuto mapu však můžete sdílet pouze mezi podřízenými pracovními postupy ve stejném prostředku aplikace logiky.
Přidání mapy do účtu integrace
Na webu Azure Portal se přihlaste pomocí svých přihlašovacích údajů k účtu Azure.
Do vyhledávacího pole webu Azure Portal zadejte účty integrace a vyberte Účty integrace.
Vyhledejte a vyberte svůj účet integrace.
V navigační nabídce účtu integrace v části Nastavení vyberte Mapy.
Na panelu nástrojů podokna Mapy vyberte Přidat.
V případě pracovních postupů Consumption na základě velikosti souboru mapy teď postupujte podle kroků pro nahrání mapy, která je až 2 MB nebo větší než 2 MB.
Přidání map až do 2 MB
V podokně Přidat mapu zadejte jedinečný název mapy.
V části Typ mapy vyberte typ, například Liquid, XSLT, XSLT 2.0 nebo XSLT 3.0.
Vedle pole Mapa vyberte ikonu složky. Vyberte mapu, která se má nahrát.
Pokud jste vlastnost Name nechali prázdnou, název souboru mapy se po výběru souboru mapy automaticky zobrazí v této vlastnosti.
Jakmile budete hotovi, vyberte tlačítko OK.
Po dokončení nahrávání souboru mapy se mapa zobrazí v seznamu Mapy . Na stránce Přehled vašeho účtu integrace se v části Artefakty zobrazí také nahraná mapa.
Přidání map více než 2 MB
Pokud chcete přidat větší mapy pro pracovní postupy Consumption, použijte rozhraní REST API služby Azure Logic Apps – Mapy.
Přidání mapy do standardního prostředku aplikace logiky
Následující kroky platí jenom v případě, že chcete přidat mapu přímo do prostředku aplikace logiky Standard. V opačném případě přidejte mapu do svého účtu integrace.
portál Azure
V nabídce prostředku aplikace logiky v části Artefakty vyberte Mapy.
Na panelu nástrojů podokna Mapy vyberte Přidat.
V podokně Přidat mapu zadejte jedinečný název mapy a zadejte název přípony .xslt.
Vedle pole Mapa vyberte ikonu složky. Vyberte mapu, která se má nahrát.
Jakmile budete hotovi, vyberte tlačítko OK.
Po dokončení nahrávání souboru mapy se mapa zobrazí v seznamu Mapy . Na stránce Přehled vašeho účtu integrace se v části Artefakty zobrazí také nahraná mapa.
Visual Studio Code
Ve struktuře projektu aplikace logiky otevřete složku Artifacts a pak složku Mapy .
Do složky Mapy přidejte mapu.
Úprava mapy
Pokud chcete aktualizovat existující mapu, musíte nahrát nový soubor mapy s požadovanými změnami. Můžete si ale napřed stáhnout existující mapu pro úpravy.
Na webu Azure Portal otevřete svůj účet integrace, pokud ještě není otevřený.
V nabídce účtu integrace v části Nastavení vyberte Mapy.
Po otevření podokna Mapy vyberte mapu. Pokud chcete mapu nejprve stáhnout a upravit, na panelu nástrojů podokna Mapy vyberte Stáhnout a uložte mapu.
Až budete připraveni nahrát aktualizovanou mapu, vyberte v podokně Mapy mapu, kterou chcete aktualizovat. Na panelu nástrojů podokna Mapy vyberte Aktualizovat.
Najděte a vyberte aktualizovanou mapu, kterou chcete nahrát.
Po dokončení nahrávání souboru mapy se aktualizovaná mapa zobrazí v seznamu Mapy .
Odstranění mapy
Na webu Azure Portal otevřete svůj účet integrace, pokud ještě není otevřený.
V nabídce účtu integrace v části Nastavení vyberte Mapy.
Po otevření podokna Mapy vyberte mapu a pak vyberte Odstranit.
Pokud chcete potvrdit, že chcete mapu odstranit, vyberte Ano.