Partage via


Ouvrir les applications, formulaires, vues, boîtes de dialogue et rapports avec une URL

Les éléments accessibles via une adresse URL vous permettent d’inclure des liens vers des formulaires, des vues, des dialogues et des rapports des applications dans d’autres applications.

Notes

Les applications, formulaires, les vues, les dialogues et les rapports accessibles via une adresse URL ne peuvent pas ignorer l’étape de sécurité . Seuls les utilisateurs autorisés, en fonction de leurs rôles de sécurité, peuvent accéder aux données et aux enregistrements qu’ils voient.

URL d’applications

Notes

L’intégration d’une application pilotée par modèle dans un IFrame d’une autre application n’est pas prise en charge.

Vous pouvez ouvrir n’importe quelle application pilotée par modèle à l’aide des valeurs AppModule.UniqueName ou AppModule.AppModuleId.

Vous pouvez récupérer ces valeurs à l’aide de l’API web via la requête suivante :

GET [Organization URI]/api/data/v9.1/appmodules?$select=appmoduleid,uniquename

Pour plus d’informations, consultez Interroger les données à l’aide de l’API Web

Vous pouvez utiliser les paramètres de requête appname ou appid les valeurs Unique Name ou AppModuleId respectivement, mais vous ne pouvez pas utiliser les deux en même temps.

Utiliser Unique Name

Ajoutez le paramètre de requête appname à la page main.aspx pour ouvrir l’application en utilisant Unique Name.

https://myorg.crm.dynamics.com/main.aspx?appname={UniqueName}

Par exemple, si Unique Name est msdyn_SolutionHealthHub, vous pouvez ouvrir cette application à l’aide de cette URL :

https://myorg.crm.dynamics.com/main.aspx?appname=msdyn_SolutionHealthHub

Utiliser AppModuleId

Ajoutez le paramètre de requête appid à la page main.aspx pour ouvrir l’application en utilisant AppModuleId.

https://myorg.crm.dynamics.com/main.aspx?appid={AppModuleId}

Par exemple :

https://myorg.crm.dynamics.com/main.aspx?appid=12fd1cf3-e06e-e911-a95f-000d3a13c42a

Formulaires et vues accessibles via une adresse URL

Tous les formulaires et toutes les vues de table s’affichent dans la page main.aspx. Les paramètres de chaîne de requête passés à ce contrôle de page s’affichent. Par exemple :

Pour ouvrir un formulaire d’enregistrement de table de compte où l’ID est {91330924-802A-4B0D-A900-34FD9D790829} :

https://myorg.crm.dynamics.com/main.aspx?etn=account&pagetype=entityrecord&id=%7B91330924-802A-4B0D-A900-34FD9D790829%7D  

Pour ouvrir la vue Opportunités fermées pour :

https://myorg.crm.dynamics.com/main.aspx?etn=opportunity&pagetype=entitylist&viewid=%7b00000000-0000-0000-00AA-000010003006%7d&viewtype=1039  

Pour ouvrir la vue Contacts actifs sans la barre de navigation ni la barre de commandes

https://myorg.crm.dynamics.com/main.aspx?etn=contact&pagetype=entitylist&viewid={00000000-0000-0000-00AA-000010001004}&viewtype=1039&navbar=off&cmdbar=false  

Notes

  • Utilisez Xrm.Navigation.navigateTo ou Xrm.Navigation.openForm lorsque vous ouvrez les formulaires d’entité par programme au sein de l’application en utilisant les ressources web. N’utilisez pas window.open.
  • En dehors de l’application, où les pages n’ont pas accès aux fonctions Xrm.Navigation.openForm ou Xrm.Navigation.navigateTo, utilisez window.open ou un lien pour ouvrir un enregistrement ou un formulaire spécifique pour une table. L’affichage d’un formulaire dans un IFrame imbriqué dans un autre formulaire n’est pas pris en charge.

Utilisez généralement la méthode getClientUrl pour extraire l’URL racine de l’organisation pour les applications pilotées par modèle.

Paramètres de chaîne de requête pour la page Main.aspx

Conseil

Pour obtenir la valeur d’ID d’un enregistrement, cliquez sur le bouton Envoyer un lien dans la barre de commandes. Voici un exemple de ce qui est ouvert dans votre application de messagerie :

<https://mycrm/myOrg/main.aspx?etc=4&id=%7b899D4FCF-F4D3-E011-9D26-00155DBA3819%7d&pagetype=entityrecord>.

Le paramètre ID passé à l’URL est la valeur d’ID encodée de l’enregistrement. Dans cet exemple, la valeur d’ID est {899D4FCF-F4D3-E011-9D26-00155DBA3819}. La version encodée de l’interface GUID remplace les crochets ouvrants et fermants { et } par %7B et %7D, respectivement,

Voici les paramètres de chaîne de requête utilisés avec la page main.aspx pour ouvrir les formulaires de table :

Paramètre Description
etn Nom logique de la table. Important: N’utilisez pas le paramètre etc (code de type de table) contenant un code de nombre entier pour la table. Ce code de nombre entier varie pour les tables personnalisées dans différentes organisations.
extraqs Facultatif pour les formulaires. Ce paramètre contient des paramètres encodés dans ce paramètre.

Utilisez ce paramètre pour passer des valeurs à un formulaire. Pour plus d’informations, voir Définir les valeurs de colonne utilisant les paramètres transmis à un formulaire.

Lorsqu’une table a plusieurs formulaires définis, vous pouvez utiliser ce paramètre pour spécifier le formulaire à ouvrir en passant le paramètre formid encodé avec la valeur égale à la valeur d’ID du formulaire. Par exemple, pour ouvrir un formulaire avec l’ID « 6009c1fe-ae99-4a41-a59f-a6f1cf8b9daf », ajoutez cette valeur dans le paramètre extraqs : formid%3D6009c1fe-ae99-4a41-a59f-a6f1cf8b9daf%0D%0A.
pagetype Type de page. Deux valeurs sont envisageables :

- entityrecord
Affiche un formulaire d’enregistrement.
- entitylist
Affiche une vue.
id Facultatif pour les formulaires. Procédez ainsi lorsque vous ouvrez un enregistrement de table spécifique. Passez l’identificateur GUID encodé pour la table. La version encodée de l’interface GUID remplace les crochets ouvrants et fermants « { » et « } » par « %7B » et « %7D », respectivement, par exemple {91330924-802A-4B0D-A900-34FD9D790829} est %7B91330924-802A-4B0D-A900-34FD9D790829%7D.
viewid Requis pour les vues. Il s’agit de l’ID de l’enregistrement de table savedquery ou userquery qui définit la vue. Le moyen le plus facile d’obtenir l’URL d’une vue est de la copier. Pour plus d’informations, consultez Copier l’URL d’une vue.
viewtype Définit le type de vue. Les valeurs possibles sont les suivantes :

- 1039
Utilisation pour une vue système. viewid représente l’ID d’un enregistrement savedquery.
- 4230
Utilisation pour une vue personnelle. viewid représente l’ID d’un enregistrement userquery.
navbar Contrôle si la barre de navigation est affichée et si la navigation dans l’application est disponible dans les zones et les sous-zones définies dans le plan de site.

- on
La barre de navigation s’affiche. Il s’agit du comportement par défaut si le paramètre navbar n’est pas utilisé.
- off
La barre de navigation ne s’affiche pas. Les utilisateurs peuvent accéder à d’autres éléments de l’interface utilisateur ou aux boutons Précédent et Suivant.
- entity
Dans un formulaire d’entité, seules les options de navigation pour les tables associées sont disponibles. Après la navigation vers une table associée, un bouton Précédent s’affiche dans la barre de navigation pour permettre le renvoi vers l’enregistrement d’origine.
cmdbar Contrôle si la barre de commandes s’affiche. Remarque : Cette fonctionnalité prend en charge les exigences liées à l’application Unified Service Desk. L’utilisation de cette fonctionnalité pour afficher un formulaire dans un IFrame imbriqué dans un autre formulaire n’est pas prise en charge.

- true
La barre de commandes s’affiche. Il s’agit du paramètre par défaut.
- false
La barre de commandes est masquée.

Copier l’URL d’une vue

Plusieurs vues dans les applications pilotées par modèle permettent à un utilisateur de copier l’URL d’une vue spécifique ou d’envoyer un e-mail avec l’URL d’une vue spécifique incorporée dans le message. Cette fonctionnalité facilite la communication entre les utilisateurs et permet d’accéder à une URL d’une vue que les utilisateurs peuvent inclure dans une autre application, comme un site SharePoint.

Notes

N’utilisez pas l’URL pour inclure la vue dans la navigation d’application à l’aide du plan de site. Pour plus d’informations, voir Afficher une vue dans la navigation d’application à l’aide du plan du site.

La page affichée par l’URL inclut la vue complète. Elle contient le ruban mais pas la navigation dans l’application.

Obtenir l’URL d’une vue
  1. Ouvrez la vue à utiliser.

  2. Dans la barre de commandes, cliquez sur Actions, puis sur Envoyer un lien par e-mail.

  3. Collez le lien dans Notepad et modifiez-le pour extraire uniquement la partie URL du texte souhaité.

Notes

  • Les vues qui utilisent le contexte d’utilisateur en tant que paramètre, comme Mes comptes, ne peuvent pas être copiées.
    • L’interface GUID qui représente les vues système pour les tables système est la même pour chaque installation. L’interface GUID pour les tables et les vues personnalisées est unique pour chaque installation.

Afficher une vue dans la navigation d’application à l’aide du plan du site

Lorsque vous modifiez la navigation d’application au moyen du plan du site, n’utilisez pas l’URL de la vue que vous avez copiée de l’application avec la procédure fournie dans Copier l’URL d’une vue pour la définir comme URL. Cette URL affiche une page qui inclut le ruban et produit des résultats indésirables en cas d’utilisation dans un paramètre d’URL <SubArea>.

Pour afficher une liste d’enregistrements de tables dans l’application pour une sous-zone (SubArea), définissez la valeur de colonne de table. Cette opération affiche la vue par défaut de cette table et fournit le titre et l’icône appropriés.

Toutefois, si vous souhaitez utiliser un élément SubArea qui utilise une vue par défaut initiale spécifique, utilisez le modèle URL suivant.

Url="/main.aspx?appid=e2bc1066-488f-eb11-b1ac-000d3a56ead9&pagetype=entitylist&etn=account&viewid=%7b<GUID value of view id>%7d"

Lorsque vous utilisez cette URL, vous devez également spécifier les valeurs appropriées pour <Titles> et <Descriptions>, et spécifiez une icône pour la table.

Notes

Si vous spécifiez la vue à l’aide de la page /main.aspx, le sélecteur de vue apparaîtra toujours. Si l’utilisateur modifie la vue, les applications pilotées par modèle se souviendront de la dernière sélection de l’utilisateur et la vue par défaut initiale s’affichera lorsqu’il fermera et ouvrira de nouveau son navigateur.

Ouverture d’un processus de dialogue à l’aide d’une URL

Important

Les dialogues sont déconseillés. Vous devez remplacer les dialogues par des flux de processus métier ou des applications canevas. Pour plus d’informations, voir Remplacer les dialogues par des flux de processus d’entreprise ou des applications canevas

Une personnalisation courante consiste à permettre à un utilisateur d’ouvrir un processus de dialogue spécifique dans le contexte d’un enregistrement spécifique. Par exemple, vous pouvez ajouter un bouton personnalisé au ruban pour une table spécifique à l’aide de la valeur d’ID pour l’enregistrement actif en tant que paramètre d’entrée pour le processus de dialogue.

Pour ouvrir un dialogue, vous avez besoin de ce qui suit :

  • L’identificateur unique du dialogue.

  • Le nom logique de la table pour laquelle le dialogue est créé.

  • L’identificateur unique pour l’enregistrement pour lequel vous souhaitez disposer du dialogue.

Conseil

Pour obtenir l’identificateur unique du dialogue, accédez à Paramètres, dans la solution par défaut, puis sélectionnez Processus. Sélectionnez un processus, puis dans les options Actions de la barre de commandes, cliquez sur Copier un lien. Cela copiera un lien pour modifier le dialogue dans le Presse-papiers, par exemple, [URL de l’organisation]/sfa/workflow/edit.aspx?id=%7b6A6E93C9-1FE6-4C07-91A9-E0E2A7C70976%7d.

Cet exemple montre les paramètres d’URL et de chaîne de requête permettant d’ouvrir un dialogue :

[organization url]/cs/dialog/rundialog.aspx?DialogId=[dialog unique identifier]&EntityName=[table logical name]&ObjectId=[unique identifier for the record]  

Par exemple, pour ouvrir le dialogue avec l’ID ={6A6E93C9-1FE6-4C07-91A9-E0E2A7C70976} avec l’ID d’enregistrement de compte = {40C9ADFD-90A8-DF11-840E-00155DBA380F}, utilisez les URL dans l’exemple suivant.

[organization url]/cs/dialog/rundialog.aspx?DialogId=%7b6A6E93C9-1FE6-4C07-91A9-E0E2A7C70976%7d&EntityName=account&ObjectId=%7b40C9ADFD-90A8-DF11-840E-00155DBA380F%7d  

Conseil

Si un processus de dialogue est ouvert à partir d’un lien, le bouton Terminer peut ne pas fonctionner. Les données sont enregistrées, mais l’utilisateur devra cliquer sur le bouton Fermer dans la fenêtre pour la fermer. En effet, d’autres navigateurs ne fournissent aucune méthode window.close si la fenêtre n’est pas ouverte avec JavaScript à partir d’une autre fenêtre. Si possible, utilisez JavaScript et la méthode window.open pour ouvrir les processus de dialogue au lieu de simplement fournir des liens.

Vous pouvez créer une fonction JavaScript pour ouvrir le dialogue comme illustré dans l’exemple suivant :

function openDialogProcess(dialogId, entityName, objectId)  
{  
 var url = Xrm.Page.context.getClientUrl() +  
  "/cs/dialog/rundialog.aspx?DialogId=" +  
  dialogId + "&EntityName=" +  
  entityName + "&ObjectId=" +  
  objectId;  
 window.open(url);  
}  

Ouverture d’un rapport à l’aide d’une URL

Vous pouvez ouvrir un rapport en transmettant les valeurs de paramètres appropriées dans l’URL suivante : [organization url]/crmreports/viewer/viewer.aspx.

Cette URL accepte les paramètres suivants :

action
Les deux valeurs possibles pour ce paramètre sont run ou filter. Lorsque run est utilisé, le rapport est affiché dans les filtres par défaut. Lorsque filter est utilisé, le rapport affiche un filtre que l’utilisateur peut modifier avant de choisir le bouton Exécuter le rapport pour afficher le rapport.

helpID
Ce paramètre est facultatif. Pour les rapports qui sont inclus avec les applications pilotées par modèle, la valeur de ce paramètre permet au bouton Aide d’afficher le contenu approprié relatif à ce rapport lorsque Aide sur cette page est sélectionné. La valeur doit correspondre à la valeur FileName du rapport.

id
Ce paramètre est la valeur ReportId du rapport.

Les exemples suivants illustrent les URL permettant d’ouvrir les rapports dans les applications pilotées par modèle.

Ouvrez le rapport Incidents négligés à l’aide du filtre par défaut :

[organization url]/crmreports/viewer/viewer.aspx?action=run&helpID=Neglected%20Cases.rdl&id=%7b8c9f3e6f-7839-e211-831e-00155db7d98f%7d  

Ouvrez le rapport Premiers articles de la Base de connaissances et invitez l’utilisateur à définir des valeurs de filtre :

[organization url]/crmreports/viewer/viewer.aspx?action=filter&helpID=Top%20Knowledge%20Base%20Articles.rdl&id=%7bd84ec390-7839-e211-831e-00155db7d98f%7d  

La fonctionnalité suivante montre comment encoder correctement les valeurs de l’URL :

function getReportURL(action,fileName,id) {  
 var orgUrl = GetGlobalContext().getClientUrl();  
 var reportUrl = orgUrl +   
  "/crmreports/viewer/viewer.aspx?action=" +  
  encodeURIComponent(action) +  
  "&helpID=" +  
  encodeURIComponent(fileName) +  
  "&id=%7b" +  
  encodeURIComponent(id) +  
  "%7d";  
 return reportUrl;  
}  

Voir aussi

Définir les valeurs des colonnes en utilisant les paramètres transmis à un formulaire
Xrm.Navigation.openUrl
Configurer un formulaire pour accepter les paramètres de chaîne de requête personnalisés
Personnaliser le ruban
Création de scripts client à l’aide de JavaScript
Ressources Web
Modifier la navigation dans l’application à l’aide du plan de site

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é).