SOQL: есть ли способ вернуть заголовки столбцов, даже если нулевые строки соответствуют запросу - PullRequest
0 голосов
/ 11 февраля 2020

В настоящее время я использую simple-salesforce для возврата некоторых строк и записи в файл csv с заголовками столбцов. Однако, если количество строк равно 0, например, «выберите идентификатор из предела потенциальных возможностей 0», я просто получу следующий ответ

OrderedDict ([('totalSize', 0), ('done', True), (' records ', [])])

Можно ли по-прежнему получать заголовки столбцов, даже если в запросе возвращено ноль строк.

В основном мне нужно создать csv с заголовками даже если есть 0 строк

1 Ответ

0 голосов
/ 12 февраля 2020

К сожалению, нет. Запрос на самом деле вообще не возвращает заголовки как таковые (если вы не используете Bulk API); in просто возвращает список записей, состоящий из пар ключ-значение.

Обычный шаблон: вы генерируете запрос из списка полей, и этот список полей становится заголовками ваших столбцов. , Например,

fields = ["Id", "Name"]
results = sf.query(f"SELECT {', '.join(fields)} FROM Lead")
writer = csv.writer(some_file)
writer.writerow(fields)
# etc., or use a DictWriter if desired.
...