Passare i dati di Microsoft Dynamics 365 da una pagina come parametro alle azioni della barra multifunzione
Data di pubblicazione: gennaio 2017
Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Quando si definisce un'azione in una barra multifunzione, è spesso necessario passare i dati dalla pagina a una funzione di JavaScript o a URL In questo argomento vengono illustrate le opzioni per l'utilizzo dell'elemento di <CrmParameter> (RibbonDiffXml) per recuperare tali valori.
La maggior parte dei valori disponibili per l'elemento di <CrmParameter> (RibbonDiffXml) è correlata all'utilizzo di dati visualizzati in una griglia o in un grafico di gerarchie. Utilizzando le opzioni di enumerazione degli attributi di Value, è possibile facilmente isolare gli elementi per:
Elementi selezionati
SelectedControlSelectedItemCount
SelectedControlSelectedItemIds
SelectedControlSelectedItemReferences
Tutti gli elementi
SelectedControlAllItemCount
SelectedControlAllItemIds
SelectedControlAllItemReferences
Elementi non selezionati
SelectedControlUnselectedItemCount
SelectedControlUnselectedItemIds
SelectedControlUnselectedItemReferences
Per ognuno di questi gruppi, è possibile raccogliere il numero di elementi e l'identificatore GUID. Se si desidera passare i valori a un URL, è inoltre possibile recuperare gli oggetti EntityReference che contengono tutte le informazioni necessarie per identificare in modo univoco gli oggetti nella griglia. Tali parametri si applicano se la pagina visualizzata è la griglia principale (HomepageGrid) o una griglia secondaria posizionata in un modulo. Se utilizzati con il parametro SelectedEntityTypeName, si disporrà di tutte le informazioni indispensabili per passare a un'altra applicazione.
Con una barra multifunzione di un modulo, è possibile utilizzare la raccolta di Xrm.Page.data.entity.attributi e di Xrm.Page.ui.controls per recuperare i valori per i campi noti. Tuttavia, se si desidera passare il valore di un campo del modulo selezionare, sarà necessario eseguire un'ulteriore scripting per ottenere il valore.
È possibile utilizzare il parametro PrimaryControlId per ottenere il valore Id per il controllo con lo stato attivo quando il controllo della barra multifunzione ha ricevuto lo stato attivo. Questo Id è il valore Id del Document Object Model (DOM). Per ottenere il valore dei dati, sarà necessario tentare di utilizzare tale valore utilizzando il codice utilizzato nell'esempio seguente:
var focusFieldValue = Xrm.Page.ui.controls.get(PrimaryControlId).getAttribute().getValue()
Oltre ai valori dei dati, è possibile recuperare le informazioni sul contesto aggiuntive tramite <CrmParameter> (RibbonDiffXml).
Per alcuni, le opzioni di attributo di Value, OrgName, OrgLcid e UserLcid sono disponibili senza richiedere che si utilizzi Xrm.Page.context per utilizzare i metodi getOrgUniqueName, getOrgLcid e getUserId. Per un'azione di <Url> (RibbonDiffXml), è inoltre possibile utilizzare l'attributo PassParams per includere le informazioni contestuali.
Le opzioni di Value, PrimaryEntityTypeName e FirstPrimaryItemId forniscono informazioni relative a un record di entità. È possibile utilizzare PrimaryItemIds affinché una barra multifunzione di HomepageGrid ottenga un elenco di tutti gli elementi visualizzati.
Infine, è possibile utilizzare il valore di CommandProperties per passare i dettagli relativi all'evento dal controllo della barra multifunzione. È possibile utilizzarlo per inviare informazioni contestuali a una funzione centrale in cui le azioni specifiche possono essere determinate in base al contesto dell'evento.
Personalizzare i comandi e la barra multifunzione
Passare i parametri a un URL tramite la barra multifunzione
<CrmParameter> (RibbonDiffXml)
<JavaScriptFunction> (RibbonDiffXml)
<Url> (RibbonDiffXml)
Definire le azioni della barra multifunzione
Definire azioni personalizzate per modificare la barra multifunzione
Microsoft Dynamics 365
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright