Esempio: Convertire il comportamento di data e ora
Data di pubblicazione: gennaio 2017
Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
In questo esempio viene illustrato come utilizzare il messaggio ConvertDateAndTimeBehaviorRequest per convertire il valore UTC nel valore DateOnly dell'attributo di data e ora in Dynamics 365 esistente nel sistema prima di aver modificato il comportamento dell'attributo da UserLocal a DateOnly.Ulteriori informazioni:Convertire il comportamento dei valori esistenti di data e ora nel database.
Questo esempio è per Aggiornamento 1 di Microsoft Dynamics CRM Online 2015 e Microsoft Dynamics 365 (locale). È disponibile per il download da Convertire il comportamento di data e ora.
Prerequisiti
Accedi a un'organizzazione di Aggiornamento 1 di Microsoft Dynamics CRM Online 2015 o Microsoft Dynamics 365.
Devi disporre del ruolo di amministratore di sistema per l'organizzazione Dynamics 365 per poter usare il messaggio ConvertDateAndTimeBehaviorRequest illustrato nell'esempio. In caso contrario, questo esempio non avrà esito positivo.
Scarica il progetto DateTimeAttributeBehavior di Visual Studio.
Apri il progetto DateTimeAttributeBehavior di Visual Studio e installa il pacchetto NuGet Microsoft.CrmSdk.CoreAssemblies versione 7.1.0-preview. Per le istruzioni, vedi Installare i pacchetti di NuGet più avanti.
Dopo aver installato i pacchetti NuGet, vedi Eseguire l'esempio per le istruzioni su come eseguire l'esempio e i risultati previsti.
In questo argomento
Installare i pacchetti di NuGet
Esempio
Il metodo Run della classe ConvertDateandTimeBehavior controlla se è in esecuzione la versione di Dynamics 365 appropriata per l'esempio.
Il metodo CreateRequiredRecords crea i record richiesti per l'esempio:
Crea un attributo di data e ora di esempio per l'entità Account con il comportamento UserLocal.
Crea un record di account di esempio con il valore March 31, 2015 11:00 PM UTC nel nuovo attributo di data e ora.
Modifica il comportamento dell'attributo di data e ora in DateOnly.
Crea un altro record di account di esempio con il valore March 31, 2015 11:00 PM UTC nel nuovo attributo di data e ora. Dal momento che l'attributo ora è DateOnly, la parte dell'ora viene quindi ignorata e archiviata nel sistema come March 31, 2015 00:00:00.
Recupera il valore dell'attributo di data e ora in entrambi i record di account. Dal momento che il comportamento è cambiato, entrambi valori sono visualizzati come March 31, 2015 00:00:00. Tuttavia, il valore nel primo record di account continua a essere nel formato UTC (March 31, 2015 11:00 PM) nel database.
Esegue il messaggio SDK ConvertDateAndTimeBehaviorRequest per creare un processo asincrono per convertire i valori UTC dell'attributo di data e ora in un valore DateOnly. La regola di conversione del messaggio SDK converte il valore in base al codice del fuso orario Ora solare India in Dynamics 365 (190).
ConvertDateAndTimeBehaviorRequest request = new ConvertDateAndTimeBehaviorRequest() { Attributes = new EntityAttributeCollection() { new KeyValuePair<string, StringCollection>("account", new StringCollection() { "new_sampledatetimeattribute" }) }, ConversionRule = DateTimeBehaviorConversionRule.SpecificTimeZone.Value, TimeZoneCode = 190, // Time zone code for India Standard Time (IST) in CRM AutoConvert = false // Conversion must be done using ConversionRule }; // Execute the request ConvertDateAndTimeBehaviorResponse response = (ConvertDateAndTimeBehaviorResponse)_serviceProxy.Execute(request);
Recupera il valore dell'attributo di data e ora in entrambi i record di account dopo la conversione. Il valore UTC nel primo record di account viene convertito in 1 aprile anziché 31 marzo perché la conversione è stata calcolata in base al fuso orario Ora solare India. Il valore del secondo record di account non è interessato perché è già un valore DateOnly.
Infine, il metodo DeleteRequiredRecords richiede di eliminare i record di entità e l'attributo di data e ora personalizzato creato durante l'esecuzione dell'esempio:
Digita y e premi INVIO per eliminare i record di entità e l'attributo personalizzato dall'organizzazione.
Digita n e premi INVIO per lasciare i record di entità e l'attributo personalizzato nell'organizzazione. Dovrai eliminarli manualmente in seguito se desideri ripristinare lo stato originale.
Installare i pacchetti di NuGet
Utilizza i passaggi seguenti per l'installazione degli assembly richiesti per questo esempio:
Scarica questo esempio ed estrai i file.
Passa alla cartella C# e apri il file DateTimeAttributeBehavior.sln in Visual Studio.
In Visual Studio, fai clic con il pulsante destro del mouse sul progetto DateTimeAttributeBehavior e scegli Gestisci pacchetti NuGet.
Per la versione di anteprima, assicurati di selezionare Includi versione provvisoria anziché Solo stabile nei criteri di ricerca. Quindi, cerca "Microsoft Dynamics CRM 2015 SDK core assemblies". Assicurati di selezionare la versione 7.1.0-preview.
Fare clic su Installa. Dovrai accettare le condizioni di licenza per completare l'installazione del pacchetto.
Eseguire l'esempio
In Visual Studio, con la soluzione aperta e i pacchetti NuGet necessari installati, premi F5.
Se in precedenza non hai mai eseguito un esempio di codice gestito di Microsoft Dynamics 365, devi immettere le informazioni necessarie per eseguire il codice, altrimenti immetti il numero di uno dei server Dynamics 365 configurati in precedenza.
Chiedi conferma
Descrizione
Immetti una porta e un nome per il server Dynamics 365 [crm.dynamics.com]
Digitare il nome del server Microsoft Dynamics 365. L'impostazione predefinita è Microsoft Dynamics 365 (online) (crm.dynamics.com) in Nord America.
Esempio:
crm5.dynamics.comÈ stato eseguito il provisioning dell'organizzazione in Microsoft Online Services? (sì/no) [n]
Digita s se si tratta di un'organizzazione sottoposta a provisioning in Microsoft Online Services. Altrimenti, digitare n.
Immetti dominio\nomeutente
Digita il tuo account Microsoft.
Immetti password
Digitare la password. I caratteri verranno visualizzati nella finestra come "*". La password viene salvata in modo sicuro in Gestione credenziali Microsoft per il riutilizzo futuro.
Specifica un numero di organizzazione (1-n) [1]
Nell'elenco delle organizzazioni visualizzato di cui si è membri, digitare il numero corrispondente. L'impostazione predefinita è 1 e indica la prima organizzazione dell'elenco.
In questo esempio vengono eseguite le operazioni descritte in Esempio e potrebbero essere richieste opzioni aggiuntive.
Al termine dell'esempio, premi INVIO per chiudere la finestra della console.
Vedere anche
ConvertDateAndTimeBehaviorRequest
Comportamento e formato dell'attributo di data e ora
Personalizzare i metadati degli attributi di entità
Microsoft Dynamics 365
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright