Dodawanie map dla przekształceń w przepływach pracy za pomocą usługi Azure Logic Apps
Dotyczy: Azure Logic Apps (Zużycie + Standardowa)
Akcje przepływu pracy, takie jak Transform XML i Liquid , wymagają mapy do wykonania swoich zadań. Na przykład akcja Przekształć XML wymaga mapowania w celu przekonwertowania kodu XML między formatami. Mapa to dokument XML, który używa języka Extensible Stylesheet Language Transformation (XSLT) do opisania sposobu konwertowania danych z xml na inny format i ma rozszerzenie nazwy pliku xslt. Mapa składa się ze źródłowego schematu XML jako danych wejściowych i docelowego schematu XML jako danych wyjściowych. Można zdefiniować podstawową transformację, taką jak kopiowanie nazwy i adresu z jednego dokumentu do innego. Możesz też utworzyć bardziej złożone przekształcenia przy użyciu wbudowanych operacji mapy. Dane można manipulować lub kontrolować przy użyciu różnych wbudowanych funkcji, takich jak manipulowanie ciągami, przypisania warunkowe, wyrażenia arytmetyczne, formatery daty i godziny, a nawet konstrukcje pętli.
Załóżmy na przykład, że regularnie otrzymujesz zamówienia B2B lub faktury od klienta, który używa formatu daty YearMonthDay (RRRRMDD). Jednak twoja organizacja używa formatu daty MonthDayYear (MMDDYYYY). Przed zapisaniem zamówienia lub szczegółów faktury w bazie danych aktywności klienta można zdefiniować mapę, która przekształca format RRRRDDD na format MMDRRRR.
W tym przewodniku pokazano, jak dodać mapę przepływu pracy do użycia. Możesz dodać mapy do połączonego konta integracji lub jeśli masz aplikację logiki w warstwie Standardowa, możesz dodać mapy bezpośrednio do zasobu aplikacji logiki.
Wymagania wstępne
Konto i subskrypcja platformy Azure. Jeśli nie masz jeszcze subskrypcji, utwórz bezpłatne konto platformy Azure.
Mapa, którą chcesz dodać. Aby utworzyć mapy, możesz użyć dowolnego z następujących narzędzi:
Program Visual Studio Code i rozszerzenie Mapper danych. Aby wywołać mapy utworzone za pomocą narzędzia Maper danych z przepływu pracy, musisz użyć akcji Operacje mapowania danych o nazwie Przekształć przy użyciu mapera danych XSLT, a nie akcji Operacje XML o nazwie Transform XML. Aby uzyskać więcej informacji, zobacz Create maps for data transformation with Visual Studio Code (Tworzenie map na potrzeby przekształcania danych za pomocą programu Visual Studio Code).
Program Visual Studio 2019 i rozszerzenie Microsoft Azure Logic Apps Enterprise Integration Tools.
Uwaga
Nie instaluj rozszerzenia Microsoft Azure Logic Apps Enterprise Integration Tools wraz z rozszerzeniem BizTalk Server. Posiadanie obu rozszerzeń może spowodować nieoczekiwane zachowanie. Upewnij się, że masz zainstalowane tylko jedno z tych rozszerzeń.
W monitorach o wysokiej rozdzielczości może wystąpić problem z wyświetlaniem projektanta mapy w programie Visual Studio. Aby rozwiązać ten problem z wyświetlaniem, uruchom ponownie program Visual Studio w trybie nieświadomym dpi lub dodaj wartość rejestru DPIUNAWARE.
Aby uzyskać więcej informacji, zapoznaj się z sekcją Tworzenie map w tym artykule.
W zależności od tego, czy pracujesz nad przepływem pracy aplikacji logiki Zużycie, czy Standardowa, potrzebny będzie zasób konta integracji. Zazwyczaj ten zasób jest potrzebny, gdy chcesz zdefiniować i przechowywać artefakty do użycia w przepływach pracy integracji przedsiębiorstwa i B2B.
Ważne
Aby współpracować, zarówno konto integracji, jak i zasób aplikacji logiki muszą istnieć w tej samej subskrypcji platformy Azure i regionie świadczenia usługi Azure.
Jeśli pracujesz nad przepływem pracy aplikacji logiki Zużycie, potrzebujesz konta integracji połączonego z zasobem aplikacji logiki.
Jeśli pracujesz nad przepływem pracy aplikacji logiki w warstwie Standardowa, możesz połączyć konto integracji z zasobem aplikacji logiki, przekazać mapy bezpośrednio do zasobu aplikacji logiki lub oba te scenariusze:
Jeśli masz już konto integracji z artefaktami, których potrzebujesz lub chcesz użyć, możesz połączyć konto integracji z wieloma zasobami standardowej aplikacji logiki, w których chcesz używać artefaktów. W ten sposób nie trzeba przekazywać map do poszczególnych aplikacji logiki. Aby uzyskać więcej informacji, zobacz Łączenie zasobu aplikacji logiki z kontem integracji.
Wbudowany łącznik Liquid umożliwia wybranie mapy, która została wcześniej przekazana do zasobu aplikacji logiki lub połączonego konta integracji, ale nie obu tych elementów.
Jeśli więc nie masz lub nie potrzebujesz konta integracji, możesz użyć opcji przekazywania. W przeciwnym razie możesz użyć opcji łączenia. Tak czy inaczej, można użyć tych artefaktów we wszystkich podrzędnych przepływach pracy w ramach tego samego zasobu aplikacji logiki.
Użycie i standardowe przepływy pracy obsługują mapy XSLT odwołujące się do zestawów zewnętrznych, które umożliwiają bezpośrednie wywoływanie niestandardowego kodu platformy .NET z map XSLT. Aby obsługiwać tę funkcję, przepływy pracy użycia mają również następujące wymagania:
Potrzebny jest zestaw 64-bitowy. Usługa przekształcania uruchamia proces 64-bitowy, więc zestawy 32-bitowe nie są obsługiwane. Jeśli masz kod źródłowy zestawu 32-bitowego, ponownie skompiluj kod do zestawu 64-bitowego. Jeśli nie masz kodu źródłowego, ale został uzyskany plik binarny od dostawcy innej firmy, pobierz wersję 64-bitową od tego dostawcy. Na przykład niektórzy dostawcy udostępniają zestawy w pakietach, które mają wersje 32-bitowe i 64-bitowe. Jeśli masz opcję, zamiast tego użyj wersji 64-bitowej.
Musisz przekazać zarówno zestaw, jak i mapę w określonej kolejności do konta integracji. Najpierw przekaż zestaw, a następnie przekaż mapę odwołującą się do zestawu.
Jeśli zestaw lub mapa ma rozmiar 2 MB lub mniejszy, możesz dodać zestaw i mapować go na konto integracji bezpośrednio z witryny Azure Portal.
Jeśli zestaw jest większy niż 2 MB, ale nie większy niż limit rozmiaru zestawów, potrzebujesz konta usługi Azure Storage i kontenera obiektów blob, w którym można przekazać zestaw. Później możesz podać lokalizację tego kontenera podczas dodawania zestawu do konta integracji. W przypadku tego zadania w poniższej tabeli opisano potrzebne elementy:
Produkt opis Konto usługi Azure Storage Na tym koncie utwórz kontener obiektów blob platformy Azure dla zestawu. Dowiedz się , jak utworzyć konto magazynu. Kontener obiektów blob W tym kontenerze możesz przekazać zestaw. Podczas dodawania zestawu do konta integracji potrzebna jest również lokalizacja identyfikatora URI zawartości tego kontenera. Dowiedz się, jak utworzyć kontener obiektów blob. Eksplorator usługi Azure Storage To narzędzie ułatwia zarządzanie kontami magazynu i kontenerami obiektów blob. Aby użyć Eksplorator usługi Storage, pobierz i zainstaluj Eksplorator usługi Azure Storage. Następnie połącz się Eksplorator usługi Storage z kontem magazynu, wykonując kroki opisane w temacie Rozpoczynanie pracy z Eksplorator usługi Storage. Aby dowiedzieć się więcej, zobacz Szybki start: tworzenie obiektu blob w magazynie obiektów przy użyciu Eksplorator usługi Azure Storage.
Możesz też wybrać konto magazynu w witrynie Azure Portal. Z menu konta magazynu wybierz pozycję Eksplorator usługi Storage.Aby dodać większe mapy, możesz użyć interfejsu API REST usługi Azure Logic Apps — Maps. W przypadku standardowych przepływów pracy interfejs API REST usługi Azure Logic Apps jest obecnie niedostępny.
Ograniczenia
Limity mają zastosowanie do liczby artefaktów, takich jak mapy, na konto integracji. Aby uzyskać więcej informacji, zobacz Limity i informacje o konfiguracji usługi Azure Logic Apps.
W zależności od tego, czy pracujesz nad przepływem pracy aplikacji logiki Zużycie, czy Standardowa, obowiązują następujące ograniczenia:
Standardowe przepływy pracy
Obsługa XSLT 1.0, 2.0 i 3.0.
Do rozmiarów plików mapy nie mają zastosowania żadne limity.
Przepływy pracy użycia
Usługa Azure Logic Apps przydziela skończoną pamięć na potrzeby przetwarzania przekształceń XML. Jeśli tworzysz przepływy pracy Zużycie, a przekształcenia mapy lub ładunku mają duże zużycie pamięci, takie przekształcenia mogą zakończyć się niepowodzeniem, co spowoduje błędy braku pamięci. Aby uniknąć tego scenariusza, rozważ następujące opcje:
Edytuj mapy lub ładunki, aby zmniejszyć zużycie pamięci.
Utwórz standardowe przepływy pracy aplikacji logiki, które działają w usłudze Azure Logic Apps z jedną dzierżawą i oferują dedykowane i elastyczne opcje zasobów obliczeniowych i pamięci.
Tworzenie map
Mapy można tworzyć przy użyciu programu Visual Studio Code z rozszerzeniem Mapper danych lub programem Visual Studio z rozszerzeniem Microsoft Azure Logic Apps Enterprise Integration Tools.
Visual Studio Code
Podczas tworzenia map przy użyciu programu Visual Studio Code i rozszerzenia Maper danych można wywoływać te mapy z przepływu pracy, ale tylko za pomocą akcji Operacje mapowania danych o nazwie Przekształć przy użyciu mapera danych XSLT, a nie akcji Operacje XML o nazwie Przekształć XML. Aby uzyskać więcej informacji, zobacz Create maps for data transformation with Visual Studio Code (Tworzenie map na potrzeby przekształcania danych za pomocą programu Visual Studio Code).
Visual Studio
Jeśli tworzysz mapy za pomocą programu Visual Studio, musisz utworzyć projekt integracji z programem Visual Studio 2019 i rozszerzeniem Microsoft Azure Logic Apps Enterprise Integration Tools.
W projekcie integracji można utworzyć plik mapy integracji, który umożliwia wizualne mapowanie elementów między dwoma plikami schematu XML. Te narzędzia oferują następujące możliwości mapy:
Pracujesz z graficzną reprezentacją mapy, która pokazuje wszystkie utworzone relacje i linki.
Możesz utworzyć bezpośrednią kopię danych między schematami XML używanymi do utworzenia mapy. Zestaw SDK integracji dla przedsiębiorstw dla programu Visual Studio zawiera maper, który sprawia, że to zadanie jest tak proste, jak rysowanie wiersza, który łączy elementy w źródłowym schemacie XML ze swoimi odpowiednikami w docelowym schemacie XML.
Dostępne są operacje lub funkcje dla wielu map, w tym funkcje ciągów, funkcje daty i godziny itd.
Aby dodać przykładowy komunikat XML, możesz użyć funkcji testowania mapy. Za pomocą tylko jednego gestu możesz przetestować utworzoną mapę i przejrzeć wygenerowane dane wyjściowe.
Po utworzeniu projektu otrzymasz dokument XSLT.
Mapa musi mieć następujące atrybuty i sekcję zawierającą CDATA
wywołanie kodu zestawu:
name
to niestandardowa nazwa zestawu.namespace
to przestrzeń nazw w zestawie, która zawiera kod niestandardowy.
Poniższy przykład przedstawia mapę, która odwołuje się do zestawu o nazwie XslUtilitiesLib i wywołuje metodę circumference
z zestawu.
<?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>
Dodawanie zestawów, do których odwołuje się odwołanie
Zasób aplikacji logiki Zużycie obsługuje odwoływanie się do zestawów zewnętrznych z map, które umożliwiają bezpośrednie wywoływanie niestandardowego kodu platformy .NET z map XSLT.
W polu wyszukiwania witryny Azure Portal wprowadź konta integracji i wybierz pozycję Konta integracji.
Wybierz konto integracji, na którym chcesz dodać zestaw.
W menu konta integracji wybierz pozycję Przegląd. W obszarze Ustawienia wybierz pozycję Zestawy.
Na pasku narzędzi okienka Zestawy wybierz pozycję Dodaj.
Na podstawie rozmiaru pliku zestawu wykonaj kroki przekazywania zestawu, który jest do 2 MB lub więcej niż 2 MB, ale tylko do 8 MB. Aby uzyskać informacje o limitach ilości zestawów na kontach integracji, zapoznaj się z tematem Limity i konfiguracja dla usługi Azure Logic Apps.
Uwaga
Jeśli zmienisz zestaw, musisz również zaktualizować mapę, czy mapa ma zmiany.
Dodawanie zestawów do 2 MB
W obszarze Dodaj zestaw wprowadź nazwę zestawu. Pozostaw zaznaczony mały plik . Obok pola Zestaw wybierz ikonę folderu. Znajdź i wybierz przekazany zestaw.
Po wybraniu zestawu właściwość Nazwa zestawu automatycznie wyświetla nazwę pliku zestawu.
Po zakończeniu wybierz OK.
Po zakończeniu przekazywania pliku zestawu zestaw zostanie wyświetlony na liście Zestawy . W okienku Przegląd konta integracji w obszarze Artefakty zostanie również wyświetlony przekazany zestaw.
Dodawanie zestawów więcej niż 2 MB
Aby dodać większe zestawy, możesz przekazać zestaw do kontenera obiektów blob platformy Azure na koncie usługi Azure Storage. Kroki dodawania zestawów różnią się w zależności od tego, czy kontener obiektów blob ma publiczny dostęp do odczytu. Najpierw sprawdź, czy kontener obiektów blob ma publiczny dostęp do odczytu, wykonując następujące kroki: Ustaw poziom dostępu publicznego dla kontenera obiektów blob
Sprawdzanie poziomu dostępu do kontenera
Otwórz Eksplorator usługi Azure Storage. W oknie Eksplorator rozwiń subskrypcję platformy Azure, jeśli nie została jeszcze rozszerzona.
Rozwiń węzeł Konta> magazynu {your-storage-account}> Kontenery obiektów blob. Wybierz kontener obiektów blob.
Z menu skrótów kontenera obiektów blob wybierz pozycję Ustaw poziom dostępu publicznego.
Jeśli kontener obiektów blob ma co najmniej publiczny dostęp, wybierz pozycję Anuluj i wykonaj następujące kroki później na tej stronie: Przekazywanie do kontenerów z dostępem publicznym
Jeśli kontener obiektów blob nie ma dostępu publicznego, wybierz pozycję Anuluj i wykonaj następujące kroki później na tej stronie: Przekazywanie do kontenerów bez dostępu publicznego
Przekazywanie do kontenerów z dostępem publicznym
Przekaż zestaw do konta magazynu. W oknie po prawej stronie wybierz pozycję Przekaż.
Po zakończeniu przekazywania wybierz przekazany zestaw. Na pasku narzędzi wybierz pozycję Kopiuj adres URL, aby skopiować adres URL zestawu.
Wróć do witryny Azure Portal, w której jest otwarte okienko Dodawanie zestawu . Wprowadź nazwę zestawu. Wybierz pozycję Duży plik (większy niż 2 MB).
Zostanie wyświetlone pole Identyfikator URI zawartości, a nie pole Zestaw .
W polu Identyfikator URI zawartości wklej adres URL zestawu. Zakończ dodawanie zestawu.
Po zakończeniu przekazywania zestawu zestaw zostanie wyświetlony na liście Zestawy . W okienku Przegląd konta integracji w obszarze Artefakty zostanie również wyświetlony przekazany zestaw.
Przekazywanie do kontenerów bez dostępu publicznego
Przekaż zestaw do konta magazynu. W oknie po prawej stronie wybierz pozycję Przekaż.
Po zakończeniu przekazywania wygeneruj sygnaturę dostępu współdzielonego dla zestawu. Z menu skrótów zestawu wybierz pozycję Pobierz sygnaturę dostępu współdzielonego.
W okienku Sygnatura dostępu współdzielonego wybierz pozycję Generuj identyfikator URI>sygnatury dostępu współdzielonego na poziomie kontenera Utwórz. Po wygenerowaniu adresu URL sygnatury dostępu współdzielonego obok pola Adres URL wybierz pozycję Kopiuj.
Wróć do witryny Azure Portal, w której jest otwarte okienko Dodawanie zestawu . Wprowadź nazwę zestawu. Wybierz pozycję Duży plik (większy niż 2 MB).
Zostanie wyświetlone pole Identyfikator URI zawartości, a nie pole Zestaw .
W polu Identyfikator URI zawartości wklej wcześniej wygenerowany identyfikator URI sygnatury dostępu współdzielonego. Zakończ dodawanie zestawu.
Po zakończeniu przekazywania zestawu zestaw zostanie wyświetlony na liście Zestawy . Na stronie Przegląd konta integracji w obszarze Artefakty zostanie również wyświetlony przekazany zestaw.
Dodawanie map
Jeśli pracujesz z przepływem pracy Zużycie, musisz dodać mapę do połączonego konta integracji.
Jeśli pracujesz z przepływem pracy w warstwie Standardowa, masz następujące opcje:
Dodaj mapę do połączonego konta integracji. Możesz udostępnić mapę i konto integracji w wielu zasobach standardowej aplikacji logiki i ich podrzędnych przepływach pracy.
Dodaj mapę bezpośrednio do zasobu aplikacji logiki. Można jednak udostępniać tę mapę tylko w podrzędnych przepływach pracy w tym samym zasobie aplikacji logiki.
Dodawanie mapy do konta integracji
W witrynie Azure Portal zaloguj się przy użyciu poświadczeń konta platformy Azure.
W polu wyszukiwania witryny Azure Portal wprowadź konta integracji i wybierz pozycję Konta integracji.
Znajdź i wybierz swoje konto integracji.
W menu nawigacji konta integracji w obszarze Ustawienia wybierz pozycję Mapy.
Na pasku narzędzi okienka Mapy wybierz pozycję Dodaj.
W przypadku przepływów pracy Zużycie na podstawie rozmiaru pliku mapy wykonaj kroki przekazywania mapy, która jest maksymalnie 2 MB lub większa niż 2 MB.
Dodawanie map do 2 MB
W okienku Dodawanie mapy wprowadź unikatową nazwę mapy.
W obszarze Typ mapy wybierz typ, na przykład Liquid, XSLT, XSLT 2.0 lub XSLT 3.0.
Obok pola Mapa wybierz ikonę folderu. Wybierz mapę do przekazania.
Jeśli właściwość Name pozostanie pusta, nazwa pliku mapy zostanie automatycznie wyświetlona w tej właściwości po wybraniu pliku mapy.
Po zakończeniu wybierz OK.
Po zakończeniu przekazywania pliku mapy mapa zostanie wyświetlona na liście Mapy . Na stronie Przegląd konta integracji w obszarze Artefakty zostanie również wyświetlona przekazana mapa.
Dodawanie map przekraczających 2 MB
Aby dodać większe mapy dla przepływów pracy Zużycie, użyj interfejsu API REST usługi Azure Logic Apps — Mapy.
Dodawanie mapy do zasobu aplikacji logiki w warstwie Standardowa
Poniższe kroki mają zastosowanie tylko wtedy, gdy chcesz dodać mapę bezpośrednio do zasobu aplikacji logiki w warstwie Standardowa. W przeciwnym razie dodaj mapę do konta integracji.
Azure Portal
W menu zasobu aplikacji logiki w obszarze Artefakty wybierz pozycję Mapy.
Na pasku narzędzi okienka Mapy wybierz pozycję Dodaj.
W okienku Dodawanie mapy wprowadź unikatową nazwę mapy i dołącz nazwę rozszerzenia xslt .
Obok pola Mapa wybierz ikonę folderu. Wybierz mapę do przekazania.
Po zakończeniu wybierz OK.
Po zakończeniu przekazywania pliku mapy mapa zostanie wyświetlona na liście Mapy . Na stronie Przegląd konta integracji w obszarze Artefakty zostanie również wyświetlona przekazana mapa.
Visual Studio Code
W strukturze projektu aplikacji logiki otwórz folder Artifacts , a następnie folder Maps .
W folderze Maps dodaj mapę.
Edytowanie mapy
Aby zaktualizować istniejącą mapę, musisz przekazać nowy plik mapy zawierający żądane zmiany. Można jednak najpierw pobrać istniejącą mapę do edycji.
W witrynie Azure Portal otwórz konto integracji, jeśli nie jest jeszcze otwarte.
W menu konta integracji w obszarze Ustawienia wybierz pozycję Mapy.
Po otworze okienka Mapy wybierz mapę. Aby najpierw pobrać i edytować mapę, na pasku narzędzi okienka Mapy wybierz pozycję Pobierz i zapisz mapę.
Gdy wszystko będzie gotowe do przekazania zaktualizowanej mapy, w okienku Mapy wybierz mapę, którą chcesz zaktualizować. Na pasku narzędzi okienka Mapy wybierz pozycję Aktualizuj.
Znajdź i wybierz zaktualizowaną mapę, którą chcesz przekazać.
Po zakończeniu przekazywania pliku mapy zaktualizowana mapa zostanie wyświetlona na liście Mapy .
Usuwanie mapy
W witrynie Azure Portal otwórz konto integracji, jeśli nie jest jeszcze otwarte.
W menu konta integracji w obszarze Ustawienia wybierz pozycję Mapy.
Po otworze okienka Mapy wybierz mapę, a następnie wybierz pozycję Usuń.
Aby potwierdzić, że chcesz usunąć mapę, wybierz pozycję Tak.