Importer des solutions

[Cette rubrique fait partie de la documentation en version préliminaire et peut faire l'objet de modifications.]

Vous pouvez importer manuellement des solutions en suivant les étapes de cet article. Vous devez importer uniquement les solutions obtenues auprès d’une source fiable.

Notes

  • Le privilège de création est nécessaire pour importer un composant. Bien que le rôle de sécurité de personnalisateur du système dispose du privilège de création sur la plupart des composants couramment importés, il ne dispose par défaut la table Assembly du plug-in n’a pas de privilège de création. Le rôle de sécurité de l’administrateur système a ce privilège.
  • Quand vous importez un solution gérée, toutes les modifications de composants seront apportées à l’environnement dans un état publié. Toutefois, quand vous importez une solution non gérée, les modifications sont importées dans un état de brouillon, vous devez donc les publier pour les rendre actives.
  • Pour implémenter une gestion saine du cycle de vie des applications (ALM) dans votre organisation, envisagez d’utiliser un système de contrôle de source pour stocker et collaborer sur vos solutions et automatiser le processus d’importation de solution. Pour plus d’informations : Notions de base sur ALM dans le Guide ALM Power Platform.

Quand vous importez une solution non gérée :

  • Vous ajoutez tous les composants de cette solution à votre environnement et vous ne pouvez pas supprimer les composants en supprimant la solution. La suppression de la solution non gérée supprime uniquement le conteneur de solution.
  • Contenant des composants personnalisés, les personnalisations existantes du composant seront écrasées après l’importation de la solution non gérée. Vous ne pouvez pas annuler cela.

Pour importer une solution :

  1. Connectez-vous à Power Apps et sélectionnez Solutions dans la barre de navigation gauche.

  2. Sur la barre de commandes, sélectionnez Importer.

    Importer la solution.

  3. Dans la page Importer une solution, sélectionnez Parcourir pour localiser le fichier compressé (.zip ou .cab) contenant la solution à importer.

  4. Cliquez sur Suivant.

  5. Informations relatives à la solution qui s’affiche. Par défaut, dans la section Paramètres avancés, si des messages et des flux SDK existent dans la solution, ils seront importés. Effacez l’option Activer les messages et les flux SDK inclus dans la solution si vous souhaitez les importer dans un état inactif.

  6. Si votre solution contient Références de connexion, vous serez invité à sélectionner les connexions souhaitées. Si une connexion n’existe pas déjà, créez-en une. Cliquez sur Suivant.

  7. Si votre solution contient variables d’environnement, vous serez invité à entrer des valeurs. Vous ne verrez pas cet écran si des valeurs sont déjà présentes dans votre solution ou l’environnement cible.

  8. Si des dépendances manquantes sont détectées dans l’environnement cible, une liste des dépendances est présentée. Dans les environnements où la version de package requise est disponible pour l’importation dans l’environnement cible, un lien pour résoudre la dépendance est présenté. La sélection du lien vous amène au centre d’administration Power Platform où vous pouvez installer la mise à jour de l’application. Une fois la mise à jour de l’application terminée, vous pouvez recommencer l’importation de la solution.

  9. Cliquez sur Importer.

Votre solution est importée en arrière-plan et peut prendre quelques instants.

Si vous avez importé des modifications nécessitant une publication, vous devez publier les personnalisations pour qu’elles soient disponibles.

Si l’importation échoue, une notification indiquant les erreurs ou les avertissements capturés s’affiche sur la page de solutions. Sélectionnez Fichier journal de téléchargement pour entrer des informations sur la cause de l’échec de l’importation. La plupart du temps, l’échec d’une importation est dû au fait que la solution ne contenait pas certains composants requis.

Si vous téléchargez le fichier journal, vous recevrez un fichier XML que vous pouvez ouvrir à l’aide de Office Excel pour en afficher le contenu.

Notes

Vous pouvez afficher les détails de toutes les opérations de la solution, y compris l’importation de la solution avec la fonctionnalité solution history (historique de la solution). Pour afficher ces opérations, sélectionnez Voir l’historique sur la page des solutions.

Résolution de l’importation de solution

Une couche active non gérée est créée après l’importation d’un solution gérée

Au moment de l’importation de la solution, le système doit s’assurer qu’il existe un formulaire de secours pour une table. Cette exigence est appliquée quand vous créez des tables ou des formulaires. Si, au moment de l’importation, aucun formulaire de secours n’est spécifié pour une table, l’importation crée une couche active non gérée pour l’un des formulaires principaux et la personnalisation non gérée indique le formulaire comme formulaire de secours. Cela garantit que les utilisateurs peuvent afficher un formulaire quand ils n’ont accès à aucun des autres formulaires de table. Pour plus d’informations : Définir le formulaire de secours pour une table

Le formulaire n’apparaît pas dans l’environnement cible après l’importation de la solution non gérée

Au moment de l’exportation de solutions non gérées, certains formulaires qui ne sont pas modifiés sont exportés avec l’attribut unmodified=1 dans le formulaire XML dans le fichier customizations.xml situé dans le package de solution. Cet attribut se trouve dans le nœud FormXml dans le fichier customization.xml dans le package de solution. Cet attribut garantit que, bien que ces formulaires fassent partie de la solution en cours d’exportation, quand la même solution est importée dans un nouvel environnement, le formulaire est ignoré de l’importation. Pour éviter ce scénario, le formulaire doit avoir des personnalisations actives pour pouvoir être exporté sans l’attribut non modifié=1. Pour vérifier cela, extrayez le package de solution exporté et recherchez le fichier customizations.xml pour le nœud FormXml en question et vérifiez l’attribut non modifié.

Microsoft.Crm.CrmInvalidOperationException : formXml complet attendue pour la création d’un message de formulaire <formid> pendant l’importation de la solution

Cette erreur peut se produire quand le formulaire que vous importez n’existe pas dans l’environnement cible et que le formulaire est importé pour la première fois. La solution que vous importez n’a que des changements de formulaire (diff) dans la configuration XML du formulaire alors qu’elle doit avoir le format XML complet. Une solution ne doit importer un formulaire diff XML que quand le formulaire est déjà présent dans l’environnement et que vous importez les modifications. Pour vérifier, ouvrez le fichier customizations.xml de votre solution et recherchez le nœud FormXml à l’aide de l’ID de formulaire qui apparaît dans le message d’erreur. Si le formulaire XML contient un attribut nommé solutionaction, alors la configuration XML du formulaire est un diff. Pour résoudre ce scénario, le formulaire XML doit être un formulaire XML complet (ne doit pas contenir l’attribut solutionaction) et peut être obtenu à partir de l’instance dans laquelle ce formulaire a été créé à l’origine en tant que non géré.

Microsoft.Crm.CrmException : vous ne pouvez pas supprimer ce formulaire, car il s’agit du seul formulaire de base de type principal pour la table « Table ». Chaque table doit comporter au moins un formulaire de base pour chaque message de type formulaire au cours de la mise à niveau ou de la désinstallation de la solution

Cette erreur se produit quand une mise à niveau ou une désinstallation de solution tente de supprimer le dernier formulaire restant pour une table. Ce comportement est intentionnel. Chaque table doit pouvoir afficher un formulaire pour tout utilisateur valide. Par conséquent, au moins un formulaire doit être désigné comme formulaire de base. Un formulaire de base est disponible pour les utilisateurs dont les rôles de sécurité ne sont pas explicitement attribués à des formulaires. Pour contourner ce problème, créez un formulaire temporaire configuré comme formulaire de secours pour la table, puis réessayez la mise à niveau ou la désinstallation. Pour plus d’informations : Définir le formulaire de secours pour une table

Message Solution cannot be deleted due to dependencies from other components in the system (La solution ne peut pas être supprimée en raison des dépendances des autres composants du système) au moment de la désinstallation d’une solution

Ce problème peut se produire quand la solution contient des composants référencés par d’autres solutions par-dessus dans la pile de couches. Pour résoudre ce problème, supprimez le composant ou la dépendance de la solution que vous essayez de désinstaller. Pour plus d’informations : Suppression des dépendances

Les composants nouvellement ajoutés n’apparaissent pas dans l’application après l’importation d’une mise à jour dans l’application

Une modification d’une application pilotée par modèle qui utilise Tout au moment de la sélection d’un composant, tel qu’une vue, n’est pas reflétée après l’importation d’une mise à jour dans l’application dans l’environnement cible. Cela peut se produire quand les conditions suivantes sont vérifiées :

  1. Vous n’avez pas sélectionné initialement Tout dans le concepteur d’application, mais avez sélectionné les composants individuellement. Par exemple, vous sélectionnez deux vues, puis exportez l’application dans un solution gérée à partir de votre environnement de développement, et l’importez dans votre environnement de test (cible).
  2. Ensuite, vous avez créé une autre solution avec la même application dans l’environnement de développement. Vous avez sélectionné Tout pour sélectionner toutes les vues dans le concepteur d’application. La solution est alors exportée comme gérée depuis votre environnement de développement, et importée dans votre environnement de test (cible).

Pour contourner ce problème, sélectionnez chaque composant individuellement, comme les vues nouvellement ajoutées décrites à l’étape 2, plutôt que de sélectionner Tout.

Le texte de l’étiquette ne s’affiche pas dans d’autres langues après l’importation

Après avoir importé une solution, le texte de l’étiquette ne s’affiche pas dans d’autres langues. Ce problème peut se produire quand vous importez la solution avec les traductions avant d’activer la langue dans l’environnement cible.

Pour contourner ce problème, activez les langues souhaitées, puis réimportez la solution. Pour plus d’informations : Activer la langue

Dupliquer les rôles de sécurité après l’importation de la solution

Notez que quand vous essayez de créer un rôle de sécurité dans le centre d’administration de Power Platform quand il existe déjà un rôle de sécurité portant le même nom dans l’environnement, vous recevez un message indiquant qu’un rôle portant le nom spécifié existe déjà et que le rôle n’est pas créé. Cependant, il est possible via l’importation de solution d’importer un rôle de sécurité dans un environnement qui a déjà un autre rôle de sécurité portant le même nom. Quand cela se produit, les deux rôles de sécurité portant le même nom existent dans l’environnement, ce qui peut compliquer la distinction entre les deux rôles.

Voir aussi

Mettre à jour les solutions
Exporter des solutions
Publier les modifications
Pour les développeurs : Créer, exporter ou importer une solution non gérée

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).