Ajouter des mappages pour les transformations dans les workflows dans Azure Logic Apps

S’applique à : Azure Logic Apps (Consommation + Standard)

Les actions de workflow telles que Transform XML et Liquid nécessitent un mappage pour effectuer leurs tâches. Par exemple, l’action Transform XML nécessite un mappage pour convertir du code XML d’un format à un autre. Un mappage est un document XML qui utilise le langage XSLT (Extensible Stylesheet Language Transformation) pour décrire la manière de convertir des données au format XML dans un autre format. Il a l’extension de nom de fichier .xslt. Le mappage se compose d’un schéma XML source en entrée et d’un schéma XML cible en sortie. Vous pouvez définir une transformation de base, par exemple, la copie d’un nom et de l’adresse d’un document vers un autre. Vous pouvez aussi créer des transformations plus complexes à l'aide des opérations de mappage prêtes à l'emploi. Vous pouvez manipuler ou contrôler des données à l’aide de différentes fonctions intégrées, telles que des manipulations de chaînes, des affectations conditionnelles, des expressions arithmétiques, des formateurs d’heure et de date, voire des constructions de boucle.

Par exemple, imaginons que vous receviez régulièrement des commandes ou des factures B2B de la part d’un client qui utilise le format de date YearMonthDay (AAAAMMJJ). Votre organisation, quant à elle, utilise le format de date MonthDayYear (MMJJAAAA). Vous pouvez définir et utiliser un mappage qui transforme le format de AAAAMMJJ au format MMJJAAAA avant d’enregistrer les détails de la commande ou de la facture dans votre base de données d’activité client.

Ce guide montre comment ajouter une carte à utiliser pour votre flux de travail. Vous pouvez ajouter des cartes à votre compte d'intégration lié ou, si vous disposez d'une application logique standard, vous pouvez ajouter des cartes directement à votre ressource d'application logique.

Prérequis

  • Un compte et un abonnement Azure. Si vous n’avez pas encore d’abonnement, vous pouvez vous inscrire pour obtenir un compte Azure gratuitement.

  • Mappage que vous souhaitez ajouter. Pour créer des cartes, vous pouvez utiliser l'un des outils suivants :

  • Selon que vous travaillez sur un flux de travail d’application logique Consommation ou Standard, vous aurez besoin d’une ressource de compte d’intégration. En règle générale, vous avez besoin de cette ressource lorsque vous souhaitez définir et stocker des artefacts à utiliser dans des flux de travail d’intégration d’entreprise et B2B.

    Important

    Pour opérer ensemble, votre compte d’intégration et votre ressource d’application logique doivent exister dans le même abonnement et la même région Azure.

    • Si vous utilisez un workflow d’application logique Consommation, vous devez avoir un compte d’intégration qui est lié à votre ressource d’application logique.

    • Si vous travaillez sur un flux de travail d’application logique Standard, vous pouvez lier votre compte d’intégration à votre ressource d’application logique, charger des mappages directement dans votre ressource d’application logique, ou les deux, en fonction des scénarios suivants :

      • Si vous avez déjà un compte d’intégration avec les artefacts dont vous avez besoin ou que vous voulez utiliser, vous pouvez lier votre compte d’intégration à plusieurs ressources d’application logique Standard dans lesquelles vous souhaitez utiliser les artefacts. De cette façon, vous n’avez pas besoin de charger des mappages dans chaque application logique individuelle. Pour plus d’informations, consultez Lier votre ressource d’application logique à votre compte d’intégration.

      • Le connecteur intégré Liquid vous permet de sélectionner un mappage que vous avez précédemment chargé dans votre ressource d’application logique ou dans un compte d’intégration lié, mais pas les deux.

      Par conséquent, si vous n’avez pas ou n’avez pas besoin de compte d’intégration, vous pouvez utiliser l’option de chargement. Sinon, vous pouvez utiliser l’option de liaison. Quoi qu’il en soit, vous pouvez utiliser ces artefacts dans tous les flux de travail enfants au sein de la même ressource d’application logique.

  • Les workflows Consommation et Standard prennent en charge les mappages XSLT qui font référence à des assemblés externes, ce qui permet d'appeler directement du code .NET personnalisé à partir de mappages XSLT. Pour prendre en charge cette fonctionnalité, les workflows de consommation ont également les exigences suivantes :

    • Vous avez besoin d’un assembly 64 bits. Le service de transformation exécute un processus 64 bits, de sorte que les assemblages 32 bits ne sont pas pris en charge. Si vous disposez du code source pour un assemblage 32 bits, recompilez le code en un assemblage 64 bits. Si vous n’avez pas le code source, mais que vous avez obtenu le fichier binaire d’un fournisseur tiers, obtenez la version 64 bits de ce fournisseur. Par exemple, certains vendeurs fournissent des assemblages dans des packages qui ont à la fois des versions 32 bits et 64 bits. Si vous avez l’option, utilisez la version 64 bits à la place.

    • Vous devez charger l’assembly et le mappage dans une ordre spécifique dans votre compte d’intégration. Vous devez d’abord charger votre assembly, puis charger le mappage qui le référence.

    • Si la taille de votre assembly ou mappage est de 2 Mo ou moins, vous pouvez ajouter votre assembly ou mappage à votre compte d’intégration directement depuis le portail Azure.

    • Si la taille de votre assembly est supérieure à 2 Mo, mais qu’elle ne dépasse pas la taille limite des assemblys, vous avez besoin d’un compte de stockage Azure et d’un conteneur d’objets blob où vous pourrez charger votre assembly. Vous pourrez ultérieurement fournir l’emplacement de ce conteneur lorsque vous ajouterez l’assembly à votre compte d’intégration. Pour cette tâche, vous avez besoin des éléments décrits dans le tableau ci-dessous :

      Élément Description
      Compte Azure Storage Dans ce compte, créez un conteneur d’objets blob Azure pour votre assembly. Découvrez comment créer un compte de stockage.
      Conteneur d’objets blob Dans ce conteneur, vous pouvez charger votre assembly. Vous aurez également besoin de l’emplacement de l’URI de redirection de ce conteneur lorsque vous ajouterez l’assembly à votre compte d’intégration. Découvrez comment créer un conteneur d’objets blob.
      Azure Storage Explorer Cet outil facilite la gestion des comptes de stockage et des conteneurs d’objets blob. Pour utiliser l’Explorateur Stockage, téléchargez et installez l’Explorateur Stockage Azure. Ensuite, connectez l’Explorateur Stockage à votre compte de stockage en suivant les étapes décrites dans Prise en main de l’Explorateur Stockage. Pour en savoir plus, consultez Démarrage rapide : Créer un objet blob dans le stockage d’objets avec l’Explorateur Stockage Azure.

      Dans le Portail Azure, sélectionnez votre compte de stockage. Dans le menu de votre compte de stockage, sélectionnez Explorateur Stockage.

      Pour ajouter des mappages plus volumineux, vous pouvez utiliser l’API REST Azure Logic Apps - Mappages. Pour les workflows Standard, l’API REST Azure Logic Apps n’est pas disponible actuellement.

Limites

  • Des limites s’appliquent au nombre d’artefacts, tels que les mappages, par compte d’intégration. Pour plus d’informations, consultez Informations relatives aux limites et à la configuration pour Azure Logic Apps.

  • Selon que vous utilisez un workflow d’application logique Consommation ou Standard, les limitations suivantes s’appliquent :

    • Workflows Standard

      • Prise en charge de XSLT 1.0, 2.0 et 3.0.

      • Aucune limite ne s’applique aux tailles des fichiers de mappage.

    • Workflows Consommation

      • Azure Logic Apps alloue de la mémoire finie pour le traitement des transformations XML. Si vous créez des workflows Consommation et que vos transformations de mappage ou de charge utile consomment beaucoup de mémoire, ces transformations peuvent échouer et provoquer des erreurs de mémoire insuffisante. Pour éviter ce scénario, envisagez les options suivantes :

        • Modifiez vos cartes ou charges utiles pour réduire la consommation de mémoire.

        • Créer des flux de travail avec l’application logique standard qui exécutent dans les instances Azure Logic Apps mono-locataires et offrent des options dédiées et flexibles pour les ressources de calcul et de mémoire.

Créer des mappages

Vous pouvez créer des cartes à l’aide de Visual Studio Code avec l’extension Mappeur de données, ou de Visual Studio avec l’extension Outils Intégration Entreprise de Microsoft Azure Logic Apps.

Visual Studio Code

Lorsque vous créez des cartes à l’aide de Visual Studio Code et de l’extension Mappeur de données, vous pouvez appeler ces cartes depuis votre workflow, mais uniquement avec l’action Opérations du mappeur de données nommée Transformer en utilisant le mappeur de données XSLT, et non l’action Opérations XML nommée Transformer du XML. Pour plus d’informations, consultez Créer des cartes pour la transformation de données avec Visual Studio Code.

Visual Studio

Lorsque vous créez des cartes à l’aide de Visual Studio, vous devez créer un projet d’intégration avec l’un des outils suivants :

Dans le projet d’intégration, vous pouvez créer un fichier de mappage d’intégration qui vous permet de mapper graphiquement des éléments entre deux fichiers de schéma XML. Ces outils offrent les fonctionnalités de mappage suivantes :

  • Vous utilisez une représentation graphique du mappage, qui montre l’ensemble des relations et des liens que vous créez.

  • Vous pouvez effectuer une copie directe des données entre les schémas XML que vous utilisez pour créer le mappage. Le kit de développement logiciel (SDK) Intégration Entreprise pour Visual Studio comprend un mappeur qui rend cette tâche aussi simple de dessiner une ligne qui connecte les éléments du schéma XML source à leurs équivalents dans le schéma XML cible.

  • Des opérations ou des fonctions de mappages multiples sont disponibles, y compris des fonctions de chaîne, des fonctions de date et d’heure, etc.

  • Pour ajouter un exemple de message XML, vous pouvez utiliser la fonctionnalité de test de mappage. En un seul geste, vous pouvez tester le mappage que vous avez créé et évaluer la sortie générée.

  • Une fois votre projet créé, vous obtenez un document XSLT.

Votre mappage doit également comporter les attributs suivants et une section CDATA contenant l’appel au code de l’assembly :

  • name est le nom d’assembly personnalisé.

  • namespace est l’espace de noms de l’assembly qui comprend le code personnalisé.

L'exemple suivant montre une carte qui fait référence à un assemblée nommé XslUtilitiesLib et appelle la méthode circumference à partir de l’assemblée.

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

Ajouter des assemblys référencés

Une ressource d’application logique de consommation prend en charge le référencement d’assemblés externes à partir de cartes, ce qui permet d’appeler directement du code .NET personnalisé à partir de cartes XSLT.

  1. Dans la zone de recherche du Portail Azure, entrez comptes d'intégration, puis sélectionnez Comptes d'intégration.

  2. Sélectionnez le compte d’intégration dans lequel vous souhaitez ajouter votre assembly.

  3. Dans le menu de votre compte d’intégration, sélectionnez Vue d’ensemble. Sous Paramètres, sélectionnez Assemblages.

  4. Dans la barre d’outils du volet Assemblages, sélectionnez Ajouter.

En fonction de la taille de votre assembly, suivez les étapes de chargement pour les assemblys de taille inférieure ou égale à 2 Mo ou pour les assemblys dont la taille est comprise entre 2 Mo et 8 Mo. Pour connaître le nombre limite d’assemblages que peut comprendre un compte d’intégration, consultez Limites et configuration pour Azure Logic Apps.

Notes

Si vous changez votre assembly, vous devez également mettre à jour votre mappage, qu’il comporte, ou non, des changements.

Ajouter des assemblys de taille inférieure ou égale à 2 Mo

  1. Sous Ajouter un assembly, entrez un nom pour votre assembly. L’option Fichier de petite taille doit rester cochée. À côté de la zone Assemblage, choisissez l’icône de dossier. Recherchez puis sélectionnez l’assemblage en chargement.

    Une fois l’assemblage sélectionné, la propriété Nom de l’assemblage affiche automatiquement le nom de fichier de l’assemblage.

  2. Quand vous avez terminé, sélectionnez OK.

    Une fois que le chargement de votre fichier d’assembly est terminé, l’assembly s’affiche dans la liste Assemblys. Dans le volet Vue d’ensemble de votre compte d’intégration, sousArtefacts, s’affiche également votre assemblage téléchargé.

Ajouter des assemblys de taille supérieure à 2 Mo

Pour ajouter des assemblys plus volumineux, vous pouvez charger votre assembly dans un conteneur d’objets blob Azure de votre compte de stockage Azure. Les étapes pour ajouter des assemblys varient selon que votre conteneur d’objets blob dispose, ou non, d’un accès en lecture public. Effectuez donc les étapes suivantes pour vérifier si votre conteneur d’objets blob dispose d’un accès en lecture public : Définir le niveau d’accès public pour le conteneur d’objets blob

Vérifier le niveau d’accès du conteneur

  1. Ouvrez l’Explorateur de stockage Azure. Dans la fenêtre de l’Explorateur, développez votre abonnement Azure, si ce n’est déjà fait.

  2. Développez Comptes de stockage> {votre compte de stockage} >Conteneurs d’objets blob. Sélectionnez votre conteneur blob.

  3. Dans le menu contextuel de votre conteneur d’objets blob, sélectionnez Définir le niveau d’accès public.

Charger dans les conteneurs avec accès public
  1. Chargez l’assembly dans votre compte de stockage. Dans la fenêtre de droite, sélectionnez Télécharger.

  2. Une fois son chargement terminé, sélectionnez votre assembly. Dans la barre d’outils, sélectionnez Copier l’URL pour copier l’URL de l’assemblage.

  3. Retournez au portail Azure où le volet Ajouter un assembly est ouvert. Entrez un nom pour votre assembly. Sélectionnez Fichier volumineux (supérieur à 2 Mo) .

    La zone URI de contenu s’affiche à la place de la zone Assembly.

  4. Dans la zone URI de contenu, collez l’URL de votre assembly. Terminez l’ajout de votre assembly.

    Une fois que le chargement de votre assembly terminé, celui-ci s’affiche dans la liste Assemblys. Dans le volet Vue d’ensemble de votre compte d’intégration, sousArtefacts, s’affiche également votre assemblage téléchargé.

Charger dans les conteneurs sans accès public
  1. Chargez l’assembly dans votre compte de stockage. Dans la fenêtre de droite, sélectionnez Télécharger.

  2. Une fois le chargement terminé, générez une signature d’accès partagé (SAP) pour votre assembly. Dans le menu contextuel de l’assembly, sélectionnez Obtenir une signature d’accès partagé.

  3. Dans le volet Signature d’accès partagé, sélectionnez Generate container-level shared access signature URI (Générer un URI de signature d’accès partagé au niveau du conteneur)>Créer. Une fois que vous avez généré l’URL de signature d’accès partagé, à côté de la zone URL, sélectionnez Copier.

  4. Retournez au portail Azure où le volet Ajouter un assembly est ouvert. Entrez un nom pour votre assembly. Sélectionnez Fichier volumineux (supérieur à 2 Mo) .

    La zone URI de contenu s’affiche à la place de la zone Assembly.

  5. Dans la zone URI de contenu, collez l’URI de signature d’accès partagé généré précédemment. Terminez l’ajout de votre assembly.

Une fois que le chargement de votre assembly terminé, celui-ci s’affiche dans la liste Assemblys. Dans le volet Vue d’ensemble de votre compte d’intégration, sousArtefacts, s’affiche également votre assemblage téléchargé.

Ajouter des mappages

  • Si vous utilisez un workflow Consommation, vous devez ajouter votre mappage à un compte d’intégration lié.

  • Si vous utilisez un workflow Standard, vous avez les options suivantes :

    • Ajouter votre mappage à un compte d’intégration lié. Vous pouvez partager le mappage et le compte d’intégration entre plusieurs ressources d’application logique Standard et leurs workflows enfants.

    • Ajouter le mappage directement à la ressource d’application logique. Toutefois, vous pouvez uniquement partager ce mappage entre les workflows enfants dans la même ressource d’application logique.

Ajouter un mappage au compte d’intégration

  1. Dans le portail Azure connectez-vous avec les informations d’identification de votre compte Azure.

  2. Dans le portail Azure, entrez comptes intégration comme filtre, puis sélectionnez Comptes d’intégration.

  3. Recherchez et sélectionnez votre compte d’intégration.

  4. Dans le menu de navigation de votre compte d’intégration, sous Paramètres, sélectionnez Mappages.

  5. Dans la barre d’outils du volet Mappages, sélectionnez Ajouter.

Pour les workflows Consommation, en fonction de la taille de fichier de votre mappage, effectuez maintenant les étapes de chargement prévues pour les mappages de taille inférieure ou égale à 2 Mo ou de taille supérieure à 2 Mo.

Ajouter des mappages de taille inférieure ou égale à 2 Mo

  1. Dans le volet Ajouter un mappage, entrez un nom unique pour votre mappage.

  2. Sous Type de mappage, sélectionnez un type, par exemple : Liquid, XSLT, XSLT 2.0 ou XSLT 3.0.

  3. À côté de la zone Mappage, choisissez l’icône de dossier. Sélectionnez le mappage à télécharger.

    Si vous avez laissé la propriété Nom vide, le nom de fichier du mappage s’affiche automatiquement dans cette propriété après avoir sélectionné le fichier du mappage.

  4. Quand vous avez terminé, sélectionnez OK.

    Une fois que le chargement de votre fichier de mappage est terminé, le mappage s’affiche dans la liste Mappages. Sur la page Vue d’ensemble de votre compte d’intégration, sousArtefacts, s’affiche également votre mappage téléchargé.

Ajouter des mappages de taille inférieure ou égale à 2 Mo

Si vous avez besoin d’ajouter des mappages plus volumineux pour les workflows Consommation, utilisez l’API REST Azure Logic Apps - Mappages.


Ajouter un mappage à la ressource d’application logique Standard

Les étapes suivantes s’appliquent uniquement si vous souhaitez ajouter un mappage directement à votre ressource d’application logique Standard. Sinon, ajoutez le mappage à votre compte d’intégration.

Portail Azure

  1. Dans le menu de la ressource de votre application logique, sous Artefacts, sélectionnez Cartes.

  2. Dans la barre d’outils du volet Mappages, sélectionnez Ajouter.

  3. Dans le volet Ajouter une carte, entrez un nom unique pour votre carte et incluez le nom de l'extension .xslt.

  4. À côté de la zone Mappage, choisissez l’icône de dossier. Sélectionnez le mappage à télécharger.

  5. Quand vous avez terminé, sélectionnez OK.

    Une fois que le chargement de votre fichier de mappage est terminé, le mappage s’affiche dans la liste Mappages. Sur la page Vue d’ensemble de votre compte d’intégration, sousArtefacts, s’affiche également votre mappage téléchargé.

Visual Studio Code

  1. Dans la structure du projet de votre application logique, ouvrez le dossier Artefacts, puis le dossier Mappages.

  2. Dans le dossier Mappages, ajoutez votre mappage.


Modifier un mappage

Pour mettre à jour un mappage existant, vous devez charger un nouveau fichier de mappage qui comporte les modifications souhaitées. Cependant, vous pouvez d’abord télécharger le mappage existant pour le modifier.

  1. Dans le Portail Azure, ouvrez votre compte d’intégration, s’il n’est pas déjà ouvert.

  2. Dans le menu de votre compte d’intégration, sous Paramètres, sélectionnez Mappages.

  3. Une fois la page Mappages ouverte, sélectionnez votre mappage. Pour d’abord télécharger et modifier le mappage, dans la barre d’outils du volet Mappages, sélectionnez Télécharger, puis enregistrez le mappage.

  4. Lorsque vous êtes prêt à charger le mappage mis à jour, dans le volet Mappages, sélectionnez le mappage que vous souhaitez mettre à jour. Dans la barre d’outils du volet Mappages, sélectionnez Mettre à jour.

  5. Recherchez puis sélectionnez le mappage mis à jour que vous souhaitez charger.

    Une fois que le chargement de votre fichier de mappage est terminé, le mappage mis à jour s’affiche dans la liste Mappages.

Supprimer un mappage

  1. Dans le Portail Azure, ouvrez votre compte d’intégration, s’il n’est pas déjà ouvert.

  2. Dans le menu de votre compte d’intégration, sous Paramètres, sélectionnez Mappages.

  3. Une fois le volet Mappages ouvert, sélectionnez votre mappage, puis sélectionnez Supprimer.

  4. Pour confirmer que vous souhaitez supprimer le mappage, choisissez Oui.

Étapes suivantes