Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Unified Service Desk vous fournit des événements prédéfinis pour les contrôles hébergés en fonction du type de contrôle hébergé. Outre ces événements prédéfinis, vous pouvez également créer vos propres événements dans Unified Service Desk, appelés événements définis par l’utilisateur. Vous pouvez utiliser l’action FireEvent ou le moniker d’événement pour exécuter des événements définis par l’utilisateur.
Utiliser l’action FireEvent
Tous les types de contrôle hébergés par Unified Service Desk prédéfinis et personnalisés, à l’exception de l’application hébergée CCA , disposent d’une action UII spéciale appelée FireEvent. Vous pouvez appeler cette action pour lancer un événement défini par l’utilisateur à partir de ce contrôle. Il s’agit d’un moyen pratique de regrouper plusieurs appels à l’action en un seul appel, créant ainsi une fonction au sein d’Unified Service Desk. C’est également un moyen raisonnable de tester les événements et leurs séquences d’action avant le déploiement.
Le premier paramètre de FireEvent est le nom de l’événement :
name=MyEvent
Toutes les paires nom/valeur suivantes deviennent les paramètres de l’événement et peuvent donc être utilisées comme paramètres de remplacement dans les actions appelées en conséquence. Par exemple, si vous transmettez la liste de paramètres suivante :
name=MyEvent
var1=[[account.name]]
Cela déclenchera l’événement personnalisé MyEvent , ce qui permettra de créer un appel à l’action qui utilise le var1
paramètre comme suit :
Hosted Control=Some Hosted Control
UII Action=Some action on the Hosted Control
Data=[[var1]]
Cela transmet le paramètre d’événement en tant que paramètre de données à l’action de contrôle hébergée. Dans cet exemple, cela signifie que le paramètre de données du contrôle hébergé sera la valeur account.name de la session.
Utiliser le nom de l’événement
Vous pouvez créer un événement personnalisé sur un contrôle hébergé, puis l’appeler à l’aide de la syntaxe de moniker d’événement suivante :
http://event/?EventName=<EVENT_NAME>&key=value&key=value&…
Dans la syntaxe, vous spécifiez la key=value
paire de paramètres à transmettre à utiliser lorsque l’événement est déclenché.
Prenons le cas où vous souhaitez déclencher un événement défini par l’utilisateur chaque fois que le titre de l’incident sur le formulaire d’incident est modifié dans Microsoft Dataverse. Pour ce faire :
Créez un nouvel événement, appelé
TitleChanged
, pour le contrôle hébergé Incident dans Dataverse.Créez un appel à l’action, appelé
Action Call for Title Change
, avec les valeurs suivantes :Terrain Valeur Nom Appel à l’action pour le changement de titre Contrôle hébergé Incident Action RunXrmCommand Données fonction titleChangeReaction() {
window.open(http://event/?EventName=TitleChanged&NewTitle="+encodeURIComponent(Xrm.Page.getAttribute("title").getValue()
));
}
Xrm.Page.getAttribute("title").addOnChange(titleChangeReaction);Ajoutez le nouvel appel d’action que vous avez créé à l’événement BrowserDocumentComplete du contrôle hébergé Incident . Pour plus d’informations : Ajouter des appels à l’action à un événement
Lorsque l’événement
TitleChanged
est déclenché, la demande suivante est déclenchée :http://event/?EventName=TitleChanged&NewTitle=<NEW_TITLE>
Cela entraînera le déclenchement de l’événement
TitleChanged
avec le paramètre de données suivant :NewTitle=<NEW_TITLE>
Si vous utilisez JavaScript dans Dataverse pour appeler un événement dans Unified Service Desk à l’aide du surnom d’événement (
http://event/?EventName=<EVENT_NAME>&key=value&key=value&…
), vous pouvez utiliser lawindow.IsUSD
propriété pour déterminer si le code JavaScript s’exécute sous Unified Service Desk lorsque l’événement est appelé. L’exemple de code suivant peut être inclus dans votre code JavaScript pour garantir que l’événement est appelé uniquement lorsque le code JavaScript appelant s’exécute dans Unified Service Desk.
if ((window.IsUSD != null) && (window.IsUSD == true))
{
window.open(http://event/?EventName=<EVENT_NAME>&key=value&key=value&…);
}
Voir aussi
Événements
Types de contrôle hébergés et référence d’action/d’événement
Gérer les contrôles, les actions et les événements hébergés
MSDN : Utiliser JavaScript avec Microsoft Dynamics CRM