Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Data di pubblicazione: novembre 2016
Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016
Questa procedura dettagliata illustra come creare un controllo ospitato di User Interface Integration (UII) basato su Windows Presentation Foundation (WPF) che interagisce con Unified Service Desk e con le applicazioni esterne (Standalone e Web).
In questa procedura dettagliata vengono eseguite le operazioni indicate di seguito.
Creare un controllo ospitato UIIWPF, Esempio di controllo ospitato UII WPF, che visualizza il nome, il cognome, l'indirizzo e l'ID di un contatto quando si esegue una ricerca di contatti, quindi fare clic su un nome contatto per aprirlo in una sessione di Unified Service Desk. Questi valori vengono visualizzati dal contesto Unified Service Desk.
Cambiare il nome, il cognome o l'indirizzo in un'applicazione esterna e nell'applicazione Web ospitata in Unified Service Desk dal controllo ospitato UIIWPF che viene creato. L'applicazione esterna e l'applicazione Web sono state create nelle procedure dettagliate precedenti indicate di seguito: Procedura dettagliata: creare un adapter dell'applicazione UII e Procedura dettagliata: creare un adapter dell'applicazione UII Web.
Comunicare le modifiche al contesto Unified Service Desk per aggiornare i valori.
In questo argomento
Prerequisiti
Passaggio 1: creare un controllo ospitato UII WPF in Visual Studio
Passaggio 2: definire il controllo ospitato in Unified Service Desk
Passaggio 3: definire le azioni UII per i controlli ospitati dell'applicazione Web e dell'applicazione esterna in Unified Service Desk
Testare il controllo ospitato
Prerequisiti
Microsoft .NET Framework 4.5.2
Applicazione client Unified Service Desk. È necessaria per il test del controllo ospitato.
Microsoft Visual Studio 2012, Visual Studio 2013 o Visual Studio 2015
NuGet Package Manager per Visual Studio 2012, Visual Studio 2013 o Visual Studio 2015
Modelli Microsoft Dynamics 365 SDK per Visual Studio che contengono il modello del progetto di controllo ospitato UIIWPF. È possibile ottenere il modello, in uno dei modi seguenti:
Scaricare il modello CRM SDK. Fare doppio clic sul file CRMSDKTemplates.vsix per installare il modello in Visual Studio.
Scaricare ed estrarre il pacchetto CRM SDK. Passare alla cartella SDK\Templates. Fare doppio clic sul file CRMSDKTemplates.vsix per installare il modello in Visual Studio.
È necessario completare Procedura dettagliata: creare un adapter dell'applicazione UII e Procedura dettagliata: creare un adapter dell'applicazione UII Web per assicurarsi che l'applicazione esterna e l'applicazione Web vengano configurate con gli adapter per semplificare l'interazione con le applicazioni.
Passaggio 1: creare un controllo ospitato UII WPF in Visual Studio
Avviare Visual Studio e creare un nuovo progetto.
Nella finestra di dialogo Nuovo progetto:
Nell'elenco dei modelli installati, espandi Visual C# e seleziona Modelli Dynamics 365 SDK > Unified Service Desk > Controllo ospitato UII WPF.
Specificare il nome e il percorso del progetto e scegliere OK per creare un nuovo progetto.
.jpeg)
In Esplora soluzioni, fare clic con il pulsante destro del mouse sul file UiiWpfControl.xaml e selezionare Apri per visualizzare la finestra di progettazione XAML.
Nella finestra di progettazione, aggiungere i controlli seguenti dalla casella degli strumenti:
Tipo di controllo
Nome
Testo
Etichetta
lblFirstName
Nome
Etichetta
lblLastName
Cognome
Etichetta
lblAddress
Indirizzo
Etichetta
lblID
ID
Casella di testo
txtFirstName
Casella di testo
txtLastName
Casella di testo
txtAddress
Casella di testo
txtID
Pulsante
btnUpdate
Aggiorna valori in applicazioni ospitate
Pulsante
btnUpdateContext
Aggiorna contesto
Indica in che modo i controlli devono essere disposti nella finestra di progettazione XAML.
.jpeg)
Fare doppio clic sul pulsante Aggiorna valori in applicazioni ospitate (btnUpdate) per aggiungere il codice dell'evento click per questo pulsante e aggiungere il codice seguente.
private void btnUpdate_Click(object sender, System.Windows.RoutedEventArgs e) { // This is how you fire an action to other hosted applications. // The DoAction() code in the other application or application adapter // will be called. FireRequestAction(new RequestActionEventArgs("QsExternalApp", "UpdateFirstName", txtFirstName.Text)); // For the external application FireRequestAction(new RequestActionEventArgs("QsExternalApp", "UpdateLastName", txtLastName.Text)); // For the external application FireRequestAction(new RequestActionEventArgs("QsExternalApp", "UpdateAddress", txtAddress.Text)); // For the external application FireRequestAction(new RequestActionEventArgs("QsWebApplication", "UpdateFirstName", txtFirstName.Text)); // For the external web application FireRequestAction(new RequestActionEventArgs("QsWebApplication", "UpdateLastName", txtLastName.Text)); // For the external web application FireRequestAction(new RequestActionEventArgs("QsWebApplication", "UpdateAddress", txtAddress.Text)); // For the external web application }Passare alla finestra di progettazione XAML e fare doppio clic sul pulsante Aggiorna contesto (btnUpdateContext) per aggiungere il codice dell'evento click per questo pulsante. Aggiungere il codice seguente.
private void btnContextChange_Click(object sender, System.Windows.RoutedEventArgs e) { // Get the current context and create a new context object from it. string temp = Context.GetContext(); Context updatedContext = new Context(temp); // Update the new context with the changed information. updatedContext["firstname"] = txtFirstName.Text; updatedContext["lastname"] = txtLastName.Text; updatedContext["address1_line1"] = txtAddress.Text; // Notify Unified Service Desk of this new context information. FireChangeContext(new ContextEventArgs(updatedContext)); // Notify this UII hosted control about the change. NotifyContextChange(updatedContext); }Nello stesso file (UiiWpfControl.xaml.cs), aggiornare la definizione di override del metodo NotifyContextChange come indicato di seguito.
public override void NotifyContextChange(Context context) { // Populating text fields from context information. txtFirstName.Text = context["firstname"]; txtLastName.Text = context["lastname"]; txtAddress.Text = context["address1_line1"]; txtID.Text = context["CustomerID"]; base.NotifyContextChange(context); }Salvare il progetto e compilarlo (Compila > Compila soluzione). Dopo aver compilato il progetto, viene generato un assembly (file .dll) con lo stesso nome del progetto (in questo caso, UIIWPFHostedControl1.dll) nella cartella /bin/debug del progetto.
Copiare il file nella directory di installazione dell'applicazione client Unified Service Desk (in genere C:\Program Files\Microsoft Dynamics CRM USD\USD). Questo file è necessario per eseguire il test ed eventualmente utilizzare il controllo dall'applicazione client.
Suggerimento
Notare il nome della classe utilizzata per compilare il controllo ospitato UII nel file UiiWpfControl.xaml.cs. In questo caso, UiiWpfControl. Questa informazione è necessaria per il prossimo passaggio.
Passaggio 2: definire il controllo ospitato in Unified Service Desk
Per ospitare il controllo ospitato UII WPF in Unified Service Desk è necessario definirlo e configurarlo.
Accedere a Microsoft Dynamics 365.
Sulla barra di spostamento, scegliere Microsoft Dynamics 365 > Impostazioni > Unified Service Desk.
Nella pagina Unified Service Desk, scegliere Controlli ospitati.
Nella pagina Controlli ospitati scegliere Nuovo.
Nella pagina Nuovo controllo ospitato specificare i valori seguenti.
Campo
Valore
Nome
UIIWPFHostedControl
Nome visualizzato
Esempio di controllo ospitato UII WPF
Tipo componente USD
Applicazione ospitata di CCA
Applicazione ospitata
Controllo ospitato
L'applicazione è globale
Selezionato
Gruppo di visualizzazione
MainPanel
Adapter
Non usare alcun adapter
URI assembly
UIIWPFHostedControl1
Tipo di assembly
UIIWPFHostedControl1.UiiWpfControl
Nota
URI assembly è il nome dell'assembly e Tipo assembly è il nome dell'assembly seguito da un punto (.) e dal nome della classe del progetto Visual Studio. In questo esempio il nome dell'assembly è UIIWPFHostedControl1 e il nome della classe è UiiWpfControl, ovvero il nome della classe predefinita quando si crea un controllo ospitato personalizzato UII WPF.
.jpeg)
Scegliere Salva per creare il controllo ospitato.
Passaggio 3: definire le azioni UII per i controlli ospitati dell'applicazione Web e dell'applicazione esterna in Unified Service Desk
Gli adapter per le applicazioni Web e Standalone esterne espongono le seguenti tre azioni: UpdateFirstName, UpdateLastName e UpdateAddress. Questi adapter e i controlli ospitati per le applicazioni Web e Standalone esterne sono stati creati nelle procedure dettagliate precedenti (Procedura dettagliata: creare un adapter dell'applicazione UII e Procedura dettagliata: creare un adapter dell'applicazione UII Web).
Per aggiornare le informazioni nelle applicazioni esterne direttamente dal controllo ospitato WPF UII, è necessario definire tre azioni UII con lo stesso nome specificato in precedenza negli adapter per ogni applicazione esterna. Nelle procedure dettagliate dell'adapter (Procedura dettagliata: creare un adapter dell'applicazione UII e Procedura dettagliata: creare un adapter dell'applicazione UII Web), sono stati definiti i seguenti due controlli ospitati in Unified Service Desk per visualizzare le applicazioni esterne in Unified Service Desk: QsExternalApp e QsExternalWebApplication. In questo passaggio, vengono aggiunte le tre azioni UII per ogni controllo ospitato.
Importante
Se le azioni UII sono state già aggiunte durante il passaggio 3 in Procedura dettagliata: creare un controllo ospitato Windows Form UII, non è necessario eseguire questa operazione. È possibile procedere alla sezione successiva per testare il controllo ospitato.
Accedere a Microsoft Dynamics 365.
Sulla barra di spostamento, scegliere Microsoft Dynamics 365 > Impostazioni > Unified Service Desk.
Nella pagina Unified Service Desk, scegliere Controlli ospitati.
Nella pagina Controlli ospitati, cercare QSExternalApp e aprirlo per modificarlo.
Nella pagina QSExternalApp, scegliere la freccia in giù accanto al nome del controllo ospitato e scegliere Azioni di UII.
Nella pagina successiva scegliere Aggiungi nuova azione UII.
Nella pagina Nuova azione UII, digitare il nome come UpdateFirstName e scegliere Salva e chiudi. L'azione viene aggiunta alla pagina precedente.
Analogamente, aggiungere le seguenti due azioni: UpdateLastName e UpdateAddress. Tutte e tre le azioni diventano disponibili per il controllo ospitato QSExternalApp.
.jpeg)
Eseguire i passaggi da 4 a 8 per creare tre azioni UII con gli stessi nomi per QSExternalWebApp.
Testare il controllo ospitato
Prima di testare il controllo ospitato UIIWPF, assicurarsi che l'applicazione Web di esempio sia in esecuzione in modo da poter eseguire il rendering in Unified Service Desk.
Eseguire il client Unified Service Desk per connettersi al server Dynamics 365.
All'accesso vengono visualizzati i tre controlli ospitati: Esempio di controllo ospitato UII WPF, Esempio di applicazione Web esterna ed Esempio di applicazione esterna.
.jpeg)
Scegliere Cerca e quindi selezionare Contatti. Scegliere uno dei contatti per visualizzare i relativi dettagli in una sessione. Viene inoltre visualizzato il nome, il cognome, l'indirizzo e l'ID del record contatto attualmente visualizzato nei tre controlli di esempio.
.jpeg)
Modificare i valori in Esempio di controllo ospitato UII WPF e fare clic su Aggiorna valori in applicazioni ospitate per aggiornare i valori nelle altre due applicazioni esterne.
.jpeg)
In Esempio di controllo ospitato UII WPF, scegliere Aggiorna contesto per aggiornare le informazioni sul contesto in Unified Service Desk.
.jpeg)
Vedere anche
Integrare con le applicazioni esterne e le applicazioni Web
Utilizzare controlli ospitati UII con Unified Service Desk
Procedura dettagliata: creare un controllo ospitato Windows Form UII
Azioni di UII
Unified Service Desk 2.0
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright