Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Azure Logic Apps (Consumption + Standard)
W scenariuszach integracji typu business-to-business (B2B) w przedsiębiorstwie, może być konieczne przekonwertowanie XML między formatami. Przepływ pracy aplikacji logiki może przekształcić kod XML przy użyciu akcji Przekształć kod XML i wstępnie zdefiniowanej mapy.
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). Możesz utworzyć mapę, która przekształca format YearMonthDay na format MonthDayYear przed zapisaniem szczegółów zamówienia lub faktury w bazie danych aktywności klienta.
Wymagania wstępne
Konto i subskrypcja platformy Azure. Jeśli nie masz jeszcze subskrypcji, utwórz bezpłatne konto platformy Azure.
Przepływ pracy aplikacji logicznej, który rozpoczyna się od wyzwalacza, aby można było w razie potrzeby dodać akcję Przekształć kod XML do przepływu pracy.
Zasób konta integracji, w którym definiujesz i przechowujesz artefakty, takie jak partnerzy handlowi, umowy, certyfikaty itd., do użycia w przepływach pracy integracji przedsiębiorstwa i B2B. Ten zasób musi spełniać następujące wymagania:
Jest skojarzony z tą samą subskrypcją platformy Azure co zasób aplikacji logiki.
Istnieje w tej samej lokalizacji lub regionie Azure co zasób aplikacji logicznych, w którym planujesz użyć akcji Transformacji XML.
Jeśli pracujesz nad zasobem aplikacji logiki i przepływem pracy na platformie Consumption, konto integracji wymaga następujących elementów:
Jeśli pracujesz nad Standardowym zasobem i przepływem pracy aplikacji logiki, możesz połączyć konto integracyjne z zasobem aplikacji logiki, przesłać mapy bezpośrednio do zasobu aplikacji logiki lub zrobić obie te rzeczy, w zależności od poniższych scenariuszy:
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.
Jeśli nie masz konta integracji lub planujesz korzystać z artefaktów w ramach wielu przepływów pracy tego samego zasobu aplikacji logicznej, możesz dodawać mapy bezpośrednio do zasobu aplikacji logicznej za pomocą Portal Azure lub programu Visual Studio Code.
Uwaga / Notatka
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.
Nadal potrzebujesz konta integracji do przechowywania innych artefaktów, takich jak partnerzy, umowy i certyfikaty, wraz z użyciem operacji AS2, X12 i EDIFACT .
Dodaj akcję Przekształć XML
W witrynie Azure Portal otwórz standardową aplikację logiki i przepływ pracy w projektancie.
Jeśli masz pusty przepływ pracy, który nie ma wyzwalacza, wykonaj następujące ogólne kroki, aby dodać dowolny wyzwalacz. W przeciwnym razie przejdź do następnego kroku.
W tym przykładzie użyto wyzwalacza Żądania .
W kroku w przepływie pracy, w którym chcesz dodać akcję Przekształć kod XML , wykonaj następujące ogólne kroki, aby dodać akcję o nazwie Przekształć kod XML.
W polu Zawartość określ zawartość XML, którą chcesz przekształcić przy użyciu dowolnych danych XML otrzymywanych w żądaniu HTTP.
Aby wybrać dane wyjściowe z poprzednich operacji w przepływie pracy, w akcji Przekształć xml kliknij wewnątrz pola Zawartość i wybierz opcję listy zawartości dynamicznej (ikona błyskawica).
Z listy zawartości dynamicznej wybierz token zawartości, którą chcesz przekształcić.
W tym przykładzie jest wybierany token Treść z wyzwalacza.
Uwaga / Notatka
Upewnij się, że wybrano zawartość XML. Jeśli zawartość nie jest xml lub jest zakodowana w formacie base64, musisz określić wyrażenie, które przetwarza zawartość. Na przykład można użyć funkcji wyrażeń, takich jak
base64ToBinary()dekodowanie zawartości lubxml()przetwarzanie zawartości jako XML.
Z listy Źródło mapy wybierz lokalizację, w której przesłałeś mapę, czyli zasób LogicApp lub IntegrationAccount.
Z listy Mapa wybierz mapę.
Gdy wszystko będzie gotowe, zapisz przepływ pracy.
Teraz skończysz konfigurować akcję Przekształć kod XML . W rzeczywistej aplikacji możesz chcieć przechowywać przekształcone dane w aplikacji biznesowej (LOB), takiej jak Salesforce. Aby wysłać przekształcone dane wyjściowe do usługi Salesforce, dodaj akcję Salesforce.
Aby przetestować działanie przekształcania, uruchom workflow. Na przykład w przypadku wyzwalacza Żądania wyślij żądanie do adresu URL punktu końcowego wyzwalacza.
Akcja Przekształć kod XML jest uruchamiana po wyzwoleniu przepływu pracy i gdy zawartość XML jest dostępna do przekształcenia.
Zaawansowane możliwości
Odwoływanie się do zestawów lub wywoływanie kodu niestandardowego z map
Akcja Przekształć kod XML obsługuje odwoływanie się do zewnętrznych zestawów w ramach map, co umożliwia bezpośrednie wywoływanie niestandardowego kodu .NET bezpośrednio z map XSLT. Aby uzyskać więcej informacji, zobacz Dodawanie map XSLT dla przepływów pracy w usłudze Azure Logic Apps.
Obiekty odniesienia rozszerzeń
W standardowych przepływach pracy akcja Przekształć kod XML obsługuje określanie obiektu rozszerzenia XML do użycia z mapą.
W akcji Przekształć kod XML otwórz listę Zaawansowane parametry i wybierz pozycję Obiekt rozszerzenia XML, który dodaje parametr do akcji.
W polu Obiekt rozszerzenia XML określ obiekt rozszerzenia, na przykład:
Znacznik kolejności bajtów
Domyślnie rezultat z transformacji rozpoczyna się od znaku kolejności bajtów (BOM). Dostęp do tej funkcji można uzyskać tylko wtedy, gdy pracujesz w edytorze widoku kodu. Aby wyłączyć tę funkcję, ustaw transformOptions właściwość na disableByteOrderMark:
"Transform_XML": {
"inputs": {
"content": "@{triggerBody()}",
"integrationAccount": {
"map": {
"name": "TestMap"
}
},
"transformOptions": "disableByteOrderMark"
},
"runAfter": {},
"type": "Xslt"
}