2013-02-22 4 views
2

Когда я пытаюсь вытащить много контактов с помощью SOAP API, я получаю исключение NVALID_QUERY_LOCATOR. Исключение INVALID_QUERY_LOCATOR возникает, когда любой запрос, имеющий вспомогательный запрос, занимает много времени (более 15 минут) для выполнения на сервере SF, и тем временем объект SF DB истек.Salesforce SOQL INVALID_QUERY_LOCATOR exception

Это произошло исключение при выполнении запроса ниже -

Select street, city, country, email, firstname, mobilephone, lastname, postalcode, state, phone, fax, id from lead where Email!=Null and BH4SF__Opted_Out__c = false and id in (select leadid from CampaignMember where campaignId = '70160000000Mk5FAAS') order by Email, CreatedDate 

любая помощь о том, как решить эту проблему?

ответ

1

У вас возникли проблемы с ограничениями губернатора salesforce. С вашим запросом тянет слишком много записей. Вы можете использовать список для хранения примера запроса:

List<Account> accountsAndCases= [SELECT id, name, (SELECT id, subject, description FROM Cases) FROM Account]; 

Затем работайте со списком и в конце обновите свою базу данных. Или, может быть, вы также можете использовать лимит-вызов в конце вашего запроса, чтобы ограничить количество записей, которые вы получите. Пример:

SELECT id, name FROM Account limit 100; 

Эта ссылка может быть полезной: https://help.salesforce.com/apex/HTViewSolution?id=000004410&language=en_US

+0

Я не думаю, что вы получили эту проблему. Пакет работает отлично для записей 100k +. Эта проблема с частицами возникает, когда я использую sub-запрос, и требуется много времени, чтобы вытащить все данные из API / – AtulRajguru9

Смежные вопросы