Partager via


Transmettre des données Microsoft Dynamics CRM à partir d’une page en tant que paramètre des actions du ruban

 

Date de publication : novembre 2016

S’applique à : Dynamics CRM 2015

Lorsque vous définissez une action dans un ruban, vous devez souvent transmettre des données de la page vers une fonction JavaScript ou une URL. Cette rubrique décrit les options disponibles pour utiliser l’élément <CrmParameter> (RibbonDiffXml) pour récupérer ces valeurs.

Valeurs de la grille

La majorité des valeurs disponibles pour l’élément <CrmParameter> (RibbonDiffXml) sont liées à l’utilisation des données affichées dans une grille ou un organigramme hiérarchique. En utilisant les options d’énumération de l’attribut Value, vous pouvez facilement isoler les éléments par :

  • Éléments sélectionnés

    • SelectedControlSelectedItemCount

    • SelectedControlSelectedItemIds

    • SelectedControlSelectedItemReferences

  • Tous les éléments

    • SelectedControlAllItemCount

    • SelectedControlAllItemIds

    • SelectedControlAllItemReferences

  • Éléments non sélectionnés

    • SelectedControlUnselectedItemCount

    • SelectedControlUnselectedItemIds

    • SelectedControlUnselectedItemReferences

Pour chacun de ces groupements, vous pouvez collecter le nombre d’éléments et l’identificateur GUID. Si vous transmettez les valeurs à une URL, vous pouvez également récupérer les objets EntityReference qui contiennent toutes les informations nécessaires pour identifier de manière unique les objets de la grille. Ces paramètres s’appliquent que la page affichée soit la grille principale (HomepageGrid) ou une sous-grille située dans un formulaire. Lorsqu’ils sont utilisés avec le paramètre SelectedEntityTypeName, vous disposez de toutes les informations nécessaires pour passer à une autre application.

Valeurs du formulaire

Avec un ruban de formulaire, vous pouvez utiliser la collection Xrm.Page.data.entity.attributs et la collection Xrm.Page.ui.Contrôles pour récupérer les valeurs des champs connus. Toutefois, si vous souhaitez transmettre la valeur d’un champ de formulaire sélectionné, vous devrez générer plus de scripts pour obtenir la valeur.

Vous pouvez utiliser le paramètre PrimaryControlId pour obtenir la valeur Id du contrôle ayant le focus lorsque le contrôle du ruban a reçu le focus. Cet Id est la valeur Id du modèle d’objet de document (DOM). Pour obtenir la valeur des données, vous devrez essayer d’utiliser cette valeur avec un code tel que celui utilisé dans l’exemple suivant :

var focusFieldValue = Xrm.Page.ui.controls.get(PrimaryControlId).getAttribute().getValue()

Informations de contexte

Outre les valeurs des données, vous pouvez récupérer des informations de contexte supplémentaires à l’aide de <CrmParameter> (RibbonDiffXml).

Par souci de commodité, les options OrgName, OrgLcid et UserLcid de l’attribut Value sont disponibles sans qu’il soit nécessaire d’utiliser Xrm.Page.context pour utiliser les méthodes getOrgUniqueName, getOrgLcid et getUserId. Pour une action <Url> (RibbonDiffXml), vous pouvez également utiliser l’attribut PassParams pour inclure les informations contextuelles.

Les options PrimaryEntityTypeName et FirstPrimaryItemId de Value fournissent des informations pour un enregistrement d’entité. Vous pouvez utiliser PrimaryItemIds pour un ruban HomepageGrid pour obtenir la liste de tous les éléments affichés.

Enfin, vous pouvez utiliser la valeur CommandProperties pour transmettre les détails sur l’événement à partir du contrôle de ruban. Vous pouvez l’utiliser pour envoyer des informations contextuelles à une fonction centrale dans laquelle des actions spécifiques peuvent être déterminées selon le contexte de l’événement.

Voir aussi

Personnaliser les commandes et le ruban
Transmettre les paramètres vers une URL à l’aide du ruban
<CrmParameter> (RibbonDiffXml)
<JavaScriptFunction> (RibbonDiffXml)
<Url> (RibbonDiffXml)
Définir les actions du ruban
Définir les actions personnalisées pour modifier le ruban

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