Partager via


Créer un événement défini par l'utilisateur

 

Date de publication : novembre 2016

S’applique à : Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016

Unified Service Desk vous propose des événements prédéfinis pour les contrôles hébergés selon le type du contrôle hébergé. Indépendamment de ces événements prédéfinis, vous pouvez également créer vos propres événements dans le Unified Service Desk, qui sont 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.

Contenu de la rubrique

Utiliser l’action FireEvent

Utiliser le moniker d’événement

Utiliser l’action FireEvent

Tous les types de contrôle hébergés Unified Service Desk prédéfinis et personnalisés, sauf l'Application hébergée CCA, ont 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. Cette méthode est très pratique pour regrouper plus appels à l'action en un même appel, en créant efficacement une fonctionnalité dans Unified Service Desk. C'est aussi une façon raisonnable de tester les événements et leurs séquences d'action avant le déploiement.

Le premier paramètre du 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 ainsi être utilisées comme paramètres de remplacement dans les actions appelées en conséquence. Par exemple, si vous passez la liste de paramètres suivante :

name=MyEvent
var1=[[account.name]]

Cette opération déclenchera l’événement personnalisé MyEvent qui permettra de créer un appel à l’action qui utilise le paramètre var1 comme suit :

Hosted Control=Some Hosted Control
UII Action=Some action on the Hosted Control
Data=[[var1]]

Le paramètre d'événement est passé comme paramètre de données à une action de contrôle hébergé. 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 moniker d’é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 paire key=value pour transmettre la liste de paramètres à 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 Dynamics 365. Pour ce faire :

  1. Créez un événement, appelé TitleChanged, pour le contrôle hébergé Incident dans Microsoft Dynamics 365.

  2. Créez un appel à l’action, appelé Action Call for Title Change, avec les valeurs suivantes :

    Champ

    Valeur

    Nom

    Action Call for Title Change

    Contrôle hébergé

    Incident

    Pour

    RunXrmCommand

    Données

    function titleChangeReaction() 
    { 
       window.open("http://event/?EventName=TitleChanged&NewTitle="+encodeURIComponent(Xrm.Page.getAttribute("title").getValue()));
    }
    Xrm.Page.getAttribute("title").addOnChange(titleChangeReaction);
  3. Ajoutez le nouvel appel à l’action que vous avez créé dans 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 émise : http://event/?EventName=TitleChanged&NewTitle=<NEW_TITLE>

    Cela provoquera le déclenchement de l’événement TitleChanged avec le paramètre de données suivant : NewTitle=<NEW_TITLE>

Si vous utilisez JavaScript dans Dynamics 365 pour appeler un événement dans Unified Service Desk à l'aide du moniker d'événement (http://event/?EventName=<EVENT_NAME>&key=value&key=value&…), vous pouvez utiliser la propriété window.IsUSD 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 d'appel 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é et référence d'action/événement
Gérer les contrôles hébergés, les actions et les événements
MSDN : Utiliser JavaScript avec Microsoft Dynamics CRM

Unified Service Desk 2.0

© 2017 Microsoft. Tous droits réservés. Copyright