2017-10-18 36 views
1

Je l'extraction de données à partir d'un point de terminaison REST Salesforce avec l'ensemble suivant des requêtes:Salesforce REST SOQL retour moins de résultats que prévu

SELECT COUNT(Id) FROM Table1__c WHERE CreatedDate < 2017-10-18T16:16:03Z 

Cela renvoie un résultat de: 216

SELECT Id FROM Table1__c WHERE CreatedDate < 2017-10-18T16:16:03Z ORDER BY CreatedDate ASC LIMIT 100 OFFSET 0 

Cette renvoie les 100 résultats souhaités que je formater comme suit pour la requête suivante:

Cette requête howeve r ne se retourne des 100 enregistrements souhaités:

SELECT 
Id, CreatedDate, A whole lotta fields, 
(SELECT Name, more fields FROM Table2__r), 
(SELECT Name, Even more fields FROM Table3__r), 
(SELECT Name, Yeah, more fields FROM Table4__r), 
(SELECT Name, You guessed it! more fields FROM Table5__r), 
(SELECT Name, finally, the last fields FROM Table6__r) 
FROM Table1__c WHERE Id IN (previous formatted result) 

Donc, mon désir est de la requête (en ignorant la clause where pour un moment) pour effectuer une jointure externe gauche sur Table1__c avec les autres tables et limiter les résultats uniquement aux ID de la requête précédente. Cependant, la clause where semble forcer dans une jointure interne gauche entre Table1__c et les autres contes? Je ne suis pas entièrement sûr. J'interroge l'interface REST de Salesforce v39.

+1

est nextRecordsUrl peuplé dans les résultats, étant donné toutes les requêtes enfant, son probablement pagination les résultats et vous avez juste besoin d'aller chercher le reste d'entre eux – superfell

+0

J'ai complètement raté cela. Merci. – NotNormal

Répondre

0

nextRecordsUrl se rempli en raison de la taille de la réponse et doit être suivie.