使用Simple-Salesforce批量插入Contact记录时未返回ID问题
批量插入Contact后未返回ID的解决方案
检查参数配置:
- 若未使用外部ID匹配插入,确保调用时未额外设置
use_external_id=True,默认情况下include_detailed_results=True会返回成功记录的ID。调用代码可保持原写法,但需确认参数无冲突:result = sf.bulk.contact.insert(bulkContactsBatch, include_detailed_results=True) - 若依赖外部ID进行插入(创建或匹配更新),必须显式通过
fields_to_return参数指定返回Id字段,示例:result = sf.bulk.contact.insert( bulkContactsBatch, include_detailed_results=True, use_external_id="External_Id__c", # 替换为你的实际外部ID字段名 fields_to_return=["Id"] )
- 若未使用外部ID匹配插入,确保调用时未额外设置
注意结果字段格式:
成功记录的返回结果中,ID字段是小写的id,而非大写的Id,遍历取值时要对应正确的键名:for res in result: if res["success"]: contact_id = res["id"] # 后续处理获取到的ID else: # 处理错误信息 print(res["errors"])额外验证:
可先在Salesforce后台确认创建的Contact确实存在ID,排除平台特殊逻辑影响,再聚焦代码的参数配置和取值逻辑排查问题。
内容的提问来源于stack exchange,提问作者JoAnywhere
相关产品推荐
相关产品推荐

