3

SOAP API を使用して多くの連絡先を取得しようとすると、NVALID_QUERY_LOCATOR 例外が発生します。INVALID_QUERY_LOCATOR 例外は、サブクエリを持つクエリが SF サーバーで実行するのに長時間 (15 分以上) かかり、その間に SF DB オブジェクトが期限切れになると発生します。

この例外は、以下のクエリの実行中に発生しました –

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

これを解決する方法について何か助けはありますか?

4

1 に答える 1

1

salesforce のガバナー制限に問題があります。クエリでプルされるレコードが多すぎます。リストを使用して、クエリの例を保存できます。

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

次にリストを操作し、最後にデータベースを更新します。または、クエリの最後に limit 呼び出しを使用して、取得するレコードの量を制限することもできます。例:

SELECT id, name FROM Account limit 100;

次のリンクが役立つ場合があります: https://help.salesforce.com/apex/HTViewSolution?id=000004410&language=en_US

于 2015-03-16T18:01:12.907 に答える