我simple_salesforce
用于更新 Salesforce 中的记录
我想保留一个“日志”,其中记录了成功更新的记录以及收到的任何错误消息。例如:成功更新的响应是“204”。如何将该响应保存到变量?
一旦我在变量中获得了该值,我就知道如何将其存储在日志表中。非常感谢你的帮助
sf.table.update(uniqueID,{fieldname: new_AccountID})
我simple_salesforce
用于更新 Salesforce 中的记录
我想保留一个“日志”,其中记录了成功更新的记录以及收到的任何错误消息。例如:成功更新的响应是“204”。如何将该响应保存到变量?
一旦我在变量中获得了该值,我就知道如何将其存储在日志表中。非常感谢你的帮助
sf.table.update(uniqueID,{fieldname: new_AccountID})
希望我的问题是正确的,因为答案是 - 只需将结果分配给一个变量
from simple_salesforce import Salesforce, SalesforceResourceNotFound, SalesforceMalformedRequest
id = '0030e0000000001'
try:
update_result = salesforce.Contact.update(id, {'Phone': '+1234567890'})
# alternatively you can create log line just here
# update_result = f'{id} was successfully updated'
except SalesforceResourceNotFound:
update_result = f'record {id} not found'
except SalesforceMalformedRequest as ex:
print(ex)
print(update_result)
#$> 204 or 'record 0030e0000000001aaaaaaaaa not found' on exception when id is incorrect
尽管如果您要处理多条记录,则必须考虑使用bulk api
contact_data = [
{'Id': '0030e0000000001', 'Phone': '11111111111', 'Custom_Field__c': 1000},
{'Id': '0030e0000000002', 'Phone': '22222222222', 'Custom_Field__c': 2000}
]
update_results = salesforce.bulk.Contact.update(contact_data)
然后update_results
看起来像那样
[
{'success': True, 'created': False, 'id': '0030e0000000001', 'errors': []},
{'success': True, 'created': False, 'id': '0030e0000000002', 'errors': []}
]