Why Are Hard Deletes Not Propagated?
Suppose that we are synchronizing records from a SalesForce report. If a record is deleted within SFDC, this record won't be returned any more by your report. In other terms, deleting a record makes it "fall out" from the report.
Sales Cookie could decide to delete transactions for records which no longer appear in your report. This might be quite reasonable if a record was hard-deleted. However, other scenarios could also cause records to no longer appear in your report, in which case deleting transactions could be catastrophic.
Consider the following similar scenarios:
- By mistake, someone changed your report's definition (ex: added a filter). We would then delete transactions for records which no longer appear in your report.
- Your report had a filter such as "records updated within the last 30 days". After some time, older records will "drop off" the report. We would then delete transactions for records which no longer appear in your report.
- The report had a filter such as "status must be Closed Won". If a record is changed from "Closed Won" to "Closed Lost", it will drop off the report. We would then delete transactions for records which no longer appear in your report.
In summary, as we query the report, we could see fewer records for many different reasons. We don't know if records are gone because of a/ a hard delete, b/ a filter change, c/ they no longer match the filter. Deleting transactions for records which no longer appear in a report could spell disaster.
Instead of hard-deleting records, add a flag to indicate that those records should be ignored. Then, within plan logic, we can add a condition to ignore them.
For a related issue regarding excessive filtering, click here.
Related Articles
When I Delete A Record, Is It Completely Gone?
After you delete a record (note: this always requires a confirmation), it is marked as deleted, but remains in the database for a limited time. However, a background job hard-deletes such records shortly after their original deletion time. This ...
Which Advanced Options Are Available?
Sales Cookie offers many advanced capabilities via its web interface - including draws, splits, overrides, etc. However, some additional (even more) advanced options can also be set on incentive plans using a text-based representation. Advanced ...
Is There A Complete Formula Technical Reference?
This article provides technical details about formulas. For some background information about formulas, click here. You can configure formulas to control different aspects of calculations, such as filtering, crediting, scoring, quota, custom, ...
What Makes Sales Cookie Different?
Here are a few things which set us aside from other solutions. Flexible And Innovative More flexibility lets you better align sales goals with sales incentives Define goals based on revenue, profit, or even rule-based scoring Set targets using ...
How Can I Programmatically Add Or Remove Users From Teams?
This article explains how you can add or remove users from teams using simple API calls. To do this, you will either create or delete team member records which represent membership of users within teams. Create Or Delete Team Members To add or remove ...