Considerazioni sul produttore OData per gli adattatori OData di Salesforce Connect
Di seguito sono riportati i limiti e le raccomandazioni relativi al servizio dati remoto che espone i dati esterni tramite OData 2.0, 4.0 e 4.01 all'organizzazione Salesforce.
Versioni (Edition) richieste
| Disponibile in: Salesforce Classic e Lightning Experience |
Disponibile in: Developer Edition Disponibile con un supplemento di prezzo nelle versioni: Enterprise Edition, Performance Edition e Unlimited Edition |
- Convalidare il produttore OData utilizzando lo strumento di convalida del servizio di protocollo OData disponibile in services.odata.org/validation. In questo modo l'implementazione viene verificata a fronte della specifica OData e vengono identificati potenziali problemi.
- Per ottimizzare le prestazioni delle connessioni a larghezza di banda limitata, impostare il produttore OData in modo che riceva i dati nel formato di compressione gzip. Quindi, nella definizione della fonte di dati esterna per OData 2.0 o 4.0, selezionare Richieste di compressione. È anche possibile impostare il produttore OData per l'invio di dati compressi in formato gzip a Salesforce, che accetta automaticamente le risposte gzip.
- Per impostazione predefinita, Salesforce invia ogni richiesta OData con una delle seguenti opzioni di query di sistema, in modo che la risposta contenga il numero totale delle righe dell'insieme di risultati.
$inlinecount=allpagesper l'adattatore OData 2.0$count=trueper l'adattatore OData 4.0$count=truecodificato per l'adattatore 4.01
Alcuni sistemi esterni non supportano queste opzioni di query di sistema. Se si riceve un messaggio di errore o un avviso di tempi lunghi di caricamento quando si tenta di accedere ai dati, deselezionare Conteggi righe richiesta per OData 2.0 o 4.0 nella fonte di dati esterna. In questo caso, la fonte di dati esterna e gli oggetti esterni associati a essa non possono supportare le seguenti funzioni, che richiedono il conteggio delle righe totali.
- Funzione di aggregazione
COUNT()SOQL - Batch Apex con
Database.QueryLocator
Per informazioni sulle convenzioni URI OData, visitare il sito www.odata.org.
- Configurare il produttore OData in modo che utilizzi un formato di pagina abbastanza grande da evitare un numero eccessivo di "round trip" (andata e ritorno dal server). L'esecuzione di una query su un insieme di dati di volume considerevole utilizzando una pagina di piccole dimensioni può richiedere molto tempo a causa della latenza di rete. Il caricamento delle pagine Salesforce che visualizzano dati esterni può richiedere molto tempo.
Ad esempio, se i risultati della query includono 100 record e la pagina ne può contenere soltanto 5, saranno necessari 20 round trip per recuperare i risultati. Se la latenza di rete è di 100 ms per round trip, saranno necessari due secondi (20 × 100 ms) per recuperare i risultati.
Al contrario, se la pagina può contenere 20 record, basteranno solo cinque round trip per recuperare i 100 record. Con la stessa latenza di rete di 100 ms per round trip, è necessario mezzo secondo (5 × 100 ms) per recuperare i risultati.
-
Se la fonte di dati esterna utilizza l'adattatore OData 4.0 e il formato JSON, assicurarsi che il produttore OData accetti le intestazioni che contengono il parametro di formato
odata.metadata=full. Altre variazioni, tra cuiodata.metadata=minimal, non sono supportate per l'adattatore OData 4.0. - Se nell'organizzazione non compaiono i record di oggetti esterni, controllare che il produttore OData non modifichi i valori specificati nei filtri di query OData. Quando l'organizzazione invia query OData che specificano valori di campo con l'operatore
$filteruguale a (eq), il produttore OData deve restituire gli stessi valori di campo nelle righe di dati risultanti.
