Xrm.Mobile.offline (riferimento lato client)
Data di pubblicazione: gennaio 2017
Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Lo spazio dei nomi Xrm.Mobile.offline fornisce i metodi per creare e gestire i record nei client mobili Dynamics 365 (Dynamics 365 per smartphone e Dynamics 365 per tablet) mentre lavori in modalità offline.
Nota
Lo spazio dei nomi Xrm.Mobile.offline è stato introdotto in Aggiornamento di dicembre 2016 per Dynamics 365 (online e locale).
Queste nuove API client nello spazio dei nomi Xrm.Mobile.offline funzioneranno solo se si è in modalità offline e per entità abilitate per la sincronizzazione Mobile Offline.Ulteriori informazioni:Guida e formazione: Configura la sincronizzazione offline mobile per CRM per telefoni e tablet
Importante
Durante la creazione o l'aggiornamento del record in modalità offline, solo la convalida di base viene eseguita sui dati di input. La convalida di base include elementi come la verifica che il nome dell'attributo dell'entità sia specificato a lettere minuscole ed esista per un'entità, il controllo della mancata corrispondenza tra i tipi di dati per l'attributo specificato, le operazioni per impedire che i record vengono creati con lo stesso valore GUID, il controllo se l'entità correlata è abilitata per la modalità offline durante il recupero dei record dell'entità correlati e la verifica se il record che desideri recuperare, aggiornare, o eliminare esiste effettivamente nell'archivio dati offline. Le convalide a livello aziendale vengono effettuate solo se sei connesso al server Dynamics 365 e i dati sono sincronizzati. Un record viene creato o aggiornato in Dynamics 365 solo se i dati di input sono assolutamente validi.
In questo argomento
isOfflineEnabled
createRecord
retrieveRecord
retrieveMultipleRecords
updateRecord
deleteRecord
isOfflineEnabled
Indica se un'entità è abilitata per modalità offline.
Xrm.Mobile.offline.isOfflineEnabled("entityType")
Parametri
Tipo: stringa. Il tipo di entità in Dynamics 365. Ad esempio: "account". Per ulteriori informazioni sui tipi di entità in Dynamics 365, vedi Web API EntityType Reference.Valore restituito
Tipo: booleano.True se l'entità è abilitata per modalità offline; in caso contrario false.
createRecord
Crea un record di entità nei client mobili Dynamics 365 mentre lavori in modalità offline.
Xrm.Mobile.offline.createRecord(entityType, data).then(successCallback, errorCallback)
Parametri
Nome
Tipo
Necessario
Descrizione
entityType
Stringa
Sì
Il tipo di entità in Dynamics 365 per cui vuoi creare un record. Ad esempio: "account". Per ulteriori informazioni sui tipi di entità in Dynamics 365, vedi Web API EntityType Reference
Dati di
Oggetto
Sì
Oggetto dictionary contenente coppie key : value, dove key è la proprietà è del set di entità e value è il valore della proprietà che vuoi utilizzare per creare il record di entità. Ad esempio, definisci il seguente oggetto per creare un account:
var myAccount = {}; myAccount.name = "Sample Account Name"; myAccount.accountid = "2724A2AF-697E-E611-80DB-00155DB412B4"; myAccount.parentaccountid = { "logicalname": "account", "id": "76BE5E4A-5990-E611-80DA-00155DD8BA2D" }; myAccount.revenue = "60000.00"; myAccount.primarycontactid = { "logicalname": "contact", "id": "76BE5E4A-5990-E611-80DA-00155DD8BA2D" }; myAccount.new_customdate = new Date("September 29, 2016 12:00:00");
Per ulteriori informazioni sui tipi di entità e relative proprietà in Dynamics 365, vedi Web API EntityType Reference
successCallback
Funzione
No
Funzione da chiamare quando viene creato un record. Un oggetto con le seguenti proprietà verrà passato per identificare il nuovo record:
id: stringa. GUID del record creato.
logicalName: stringa. Nome logico dell'entità.
errorCallback
Funzione
No
Una funzione per la chiamata per l'operazione non ha esito positivo. Verrà passato un oggetto con le proprietà seguenti:
errorCode: numero. il codice di errore.
message: stringa. Messaggio di errore che descrive il problema.
debugMessage: stringa. Messaggio di errore interno che potrebbe contenere ulteriori dettagli sul problema.
Limitazioni
Non puoi creare entità di parte o di intersezione.
Solo i seguenti tipi di attributo sono supportati per la creazione di un record in modalità offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.
retrieveRecord
Recupera un record di entità nei client mobili Dynamics 365 mentre lavori in modalità offline.
Xrm.Mobile.offline.retrieveRecord(entityType, id, options).then(successCallback, errorCallback)
Parametri
Nome
Tipo
Necessario
Descrizione
entityType
Stringa
Sì
Il tipo di entità in Dynamics 365 per cui vuoi recuperare un record. Ad esempio: "account". Per ulteriori informazioni sui tipi di entità in Dynamics 365, vedi Web API EntityType Reference
ID
Stringa
Sì
GUID del record che vuoi recuperare.
Opzioni
Stringa
No
Opzioni di query di sistema OData per recuperare i dati. Le seguenti opzioni di query di sistema sono supportate: $select e $expand.
Per utilizzare $expand, anche l'entità correlata deve essere abilitata per modalità offline. Ad esempio, per recuperare il contatto correlato a un record di account, sia l'account che le entità contatto devono essere abilitati per modalità offline.
Specifica le opzioni di query iniziando con ?. Per specificare più opzioni di query, utilizza & per separarle. Ad esempio:
?$select=name&$expand=primarycontactid($select=contactid,fullname)
Suggerimento
È consigliabile per le prestazioni, limitare il numero di proprietà da recuperare tramite l'opzione di query $select. In caso contrario, tutte le proprietà vengono recuperate.
Inoltre mentre recuperi i nomi delle proprietà di entità correlate utilizzando l'opzione $expand, includendo semplicemente il nome della proprietà di navigazione vengono restituite tutte le proprietà dei record correlati. Puoi limitare le proprietà restituite per i record correlati utilizzando l'opzione della query di sistema $select tra parentesi dopo il nome della proprietà di navigazione in $expand. Per ulteriori informazioni, vedere Recupero entità correlate per un'entità espandendo le proprietà di navigazione
successCallback
Funzione
No
Funzione da chiamare quando viene recuperato un record. Un oggetto con le seguenti proprietà verrà passato per identificare il record recuperato:
id: stringa. GUID del record recuperato.
logicalName: stringa. Nome logico dell'entità.
errorCallback
Funzione
No
Una funzione per la chiamata per l'operazione non ha esito positivo. Verrà passato un oggetto con le proprietà seguenti:
errorCode: numero. il codice di errore.
message: stringa. Messaggio di errore che descrive il problema.
debugMessage: stringa. Messaggio di errore interno che potrebbe contenere ulteriori dettagli sul problema.
Limitazioni
Solo l'opzione $select può essere specificata in $expand.
Solo i seguenti tipi di attributo sono supportati per il recupero di un record in modalità offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.
retrieveMultipleRecords
Recupera una raccolta di record di entità nei client mobili Dynamics 365 mentre lavori in modalità offline.
Xrm.Mobile.offline.retrieveMultipleRecords(entityType, options, maxPageSize).then(successCallback, errorCallback)
Parametri
Nome
Tipo
Necessario
Descrizione
entityType
Stringa
Sì
Il tipo di entità in Dynamics 365 per cui vuoi recuperare i record. Ad esempio: "account". Per ulteriori informazioni sui tipi di entità in Dynamics 365, vedi Web API EntityType Reference
Opzioni
Stringa
No
Opzioni di query di sistema OData o query FetchXML per recuperare i dati. Le seguenti opzioni di query di sistema sono supportate: $select, $top, $filter, $expand e $orderby.
Per $filter, solo gli operatori di filtro standard come indicati nella sezione Filtrare i risultati sono supportati; le funzionalità di query standard non sono supportate
Per utilizzare $expand, anche l'entità correlata deve essere abilitata per modalità offline. Ad esempio, per recuperare il contatto per i record di account, sia l'account che le entità contatto devono essere abilitati per modalità offline. Se espandi le proprietà di navigazione con i valori della raccolta per un'entità per recuperare le entità correlate, verrà restituita una proprietà [NavigationPropertyName]@odata.nextLink per le entità correlate. Ad esempio se stai effettuando l'espansione sulla proprietà di spostamento primarycontactid, restituirà primarycontactid@odata.nextLink. Utilizza il valore della proprietà primarycontactid@odata.nextLink con una nuova richiesta GET per tornare ai dati richiesti.
Specifica le opzioni di query iniziando con ?. Per specificare più opzioni di query, utilizza & per separarle. Ad esempio:
?$top=5&$select=name&$expand=primarycontactid($select=contactid,fullname)
Per specificare una query FetchXML, utilizza il parametro fetchXml per specificare la query:
?fetchXml=<FetchXML>
Tramite FetchXml puoi recuperare solo gli attributi dell'entità di base.
Ad esempio, di seguito è riportato un esempio di un recupero di più chiamate utilizzando le opzioni di query:
Xrm.Mobile.offline.retrieveMultipleRecords("account", "?select=name,revenue,&$orderby=revenue&$filter=revenue ne '60000.00'", null)
maxPageSize
Integer
No
Specifica un numero positivo che indica il numero di record di entità da restituire per pagina. Se non specifichi questo parametro, il valore predefinito passato è 5000.
Se il numero di record recuperati è maggiore di maxPageSize, una proprietà @odata.nextLink viene restituita e puoi utilizzare il valore della proprietà @odata.nextLink con una nuova richiesta GET per restituire il successivo set di record. Per ulteriori informazioni, vedere Specifica il numero di entità da restituire in una pagina
successCallback
Funzione
No
Funzione da chiamare quando vengono recuperati i record. Un dizionario contenente le coppie key : value dei dati recuperati verrà passato per identificare i record recuperati.
errorCallback
Funzione
No
Una funzione per la chiamata per l'operazione non ha esito positivo. Verrà passato un oggetto con le proprietà seguenti:
errorCode: numero. il codice di errore.
message: stringa. Messaggio di errore che descrive il problema.
debugMessage: stringa. Messaggio di errore interno che potrebbe contenere ulteriori dettagli sul problema.
Limitazioni
Un massimo di 5000 record correlati può essere recuperato con $expand.
Solo l'opzione $select può essere specificata in $expand.
L'opzione di query $skip non è supportata.
Solo i seguenti tipi di attributo sono supportati per il recupero dei record in modalità offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.
updateRecord
Aggiorna un record di entità nei client mobili Dynamics 365 mentre lavori in modalità offline.
Xrm.Mobile.offline.updateRecord(entityType, id, data).then(successCallback, errorCallback)
Parametri
Nome
Tipo
Necessario
Descrizione
entityType
Stringa
Sì
Il tipo di entità in Dynamics 365 per cui vuoi aggiornare un record. Ad esempio: "account". Per ulteriori informazioni sui tipi di entità in Dynamics 365, vedi Web API EntityType Reference
ID
Stringa
Sì
GUID del record che vuoi aggiornare.
Dati di
Oggetto
Sì
Oggetto dictionary contenente coppie key : value, dove key è il nome logico della proprietà che vuoi aggiornare e value è il valore aggiornato della proprietà. Solo le proprietà e i valori specificati nell'oggetto dictionary verranno aggiornati per il record. Ad esempio:
var myUpdatedAccount = {}; myUpdatedAccount.name = "Changed Account Name"; myUpdatedAccount.revenue = "60000.00";
successCallback
Funzione
No
Funzione da chiamare quando viene aggiornato un record. Un oggetto con le seguenti proprietà verrà passato per identificare il record aggiornato:
id: stringa. GUID del record aggiornato.
logicalName: stringa. Nome logico dell'entità.
errorCallback
Funzione
No
Una funzione per la chiamata per l'operazione non ha esito positivo. Verrà passato un oggetto con le proprietà seguenti:
errorCode: numero. il codice di errore.
message: stringa. Messaggio di errore che descrive il problema.
debugMessage: stringa. Messaggio di errore interno che potrebbe contenere ulteriori dettagli sul problema.
Limitazioni
Non puoi aggiornare entità di parte o di intersezione.
Solo i seguenti tipi di attributo sono supportati per l'aggiornamento di un record in modalità offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.
deleteRecord
Elimina un record di entità nei client mobili Dynamics 365 mentre lavori in modalità offline.
Xrm.Mobile.offline.deleteRecord(entityType, id).then(successCallback, errorCallback)
Parametri
Nome
Tipo
Necessario
Descrizione
entityType
Stringa
Sì
Il tipo di entità in Dynamics 365 per cui vuoi eliminare un record. Ad esempio: "account". Per ulteriori informazioni sui tipi di entità in Dynamics 365, vedi Web API EntityType Reference
ID
Stringa
Sì
GUID del record che vuoi eliminare.
successCallback
Funzione
No
Funzione da chiamare quando viene eliminato un record. Un oggetto con le seguenti proprietà verrà passato per identificare il record eliminato:
id: stringa. GUID del record eliminato.
logicalName: stringa. Nome logico dell'entità.
errorCallback
Funzione
No
Una funzione per la chiamata per l'operazione non ha esito positivo. Verrà passato un oggetto con le proprietà seguenti:
errorCode: numero. il codice di errore.
message: stringa. Messaggio di errore che descrive il problema.
debugMessage: stringa. Messaggio di errore interno che potrebbe contenere ulteriori dettagli sul problema.
Limitazioni
Non puoi eliminare entità di parte o di intersezione.
Vedere anche
Scrivere ed eseguire il debug di script per Dynamics 365 per telefoni e tablet
Riferimento programmazione sul lato client
Microsoft Dynamics 365
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright