

pythonもsalesforceも初心者です。  
よろしくお願いします。

# やりたいこと

pythonからsalesforceにクエリを投げて取得したデータをリストに格納したい  
最終的にはリストからcsv出力をしたい

# 困っていること

  * クエリは成功している
  * 取得したデータ（例えば3000件）をリストに格納すると2000件までで、残り1000件を格納できない
  * 上限に引っかかっているのだろうと思うが、どうしたらいいか方法がわからない

# 環境

  * Python 3.8.1
  * simplesalesforceを使用

# コード

手探り状態のコードですがあげておきます

[code]

        q = a.sf.query("SELECT AccountCode__C, ID FROM Account Limit 3000")  
        cnt = q['totalSize']    
        with open(csv_dir, 'w', encoding='utf_8') as f:
            writer = csv.writer(f, delimiter='\t', lineterminator='\n')
            val = [[x['AccountCode__c'],x['Id']] for x in q['records']]    
            for i in range(cnt):
                line = [val[i][0],val[i][1]]
                writer.writerow(line)
    
[/code]


CC BY-SA 4.0
2020-03-24T08:06:23.223
64074
2020-03-25T06:13:27.343
2020-06-17T08:14:45.997
-1
33013
question
python
pythonでsalesforceから取得した2000件以上のデータをリストに格納したい


助言いただいた通り、下記のように `query_all(...)`で全件取得できました。  
`query_all(...)`は削除済みデータも含んでしまうので、削除済みを省きたい時は  
オプションで`include_deleted=False`にしてあげると除外できました。

[code]

    q = a.sf.query_all("SELECT AccountCode__C, ID FROM Account Limit 3000", include_deleted=False)
    
[/code]


CC BY-SA 4.0
2020-03-25T06:07:43.917
64101
2020-03-25T06:13:27.343
2020-03-25T06:13:27.343
33013
33013
64074
answer