I’m experiencing an issue with our Salesforce integration that I hope someone can help with.
We have a system that writes back several fields to Salesforce Case objects using the simple-salesforce library’s SObject logic. We also have a listener service that captures Change Data Capture (CDC) events on the Case object. After updating the fields, our listener receives the UPDATE event, which contains the full field update records.
However, we noticed that although the UPDATE event was successfully captured and contained all the expected field updates, changes to two specific fields were not visible in the Salesforce UI. Interestingly, when these same fields were later manually changed to the same exact values using the Salesforce UI, the updates were reflected correctly, and our listener captured this as another UPDATE event.
My questions are:
- How can partial field updates occur in Salesforce, where changes are present in the CDC event but not reflected in the UI?
- What troubleshooting steps should I take to address this discrepancy between the CDC event data and the UI display?
Any insights or advice would be greatly appreciated!
For reference:
This is how we update the object:
response = sf_instance.Case.update( case_id, update_fields)
simple-salesforce version: 1.12.6
I’ve also made some research about this and found a parameter named allOrNone, but as far as I understand this is for composite requests where you perform multiple CRUD operations at the same time.
1