We have a SAS Datawarehouse system in our project that polls records daily from Salesforce to support data archival process. However, they have started complaining that the "updated" Account records are not "actually" updated, meaning that, when they compare the updated Account row with previous day copy of the same Account row, they see no difference at all.
As of now, they are using SystemModStamp field query relevant records from Salesforce daily.
Internally, we know that, we have several batch jobs that run and update Account object daily and we are not surprised if the updated rows are close to 1 Million or so, but we are of course very much surprised to hear that there are no "actual" changes made.
Is there any way to query only those records that are "actually" getting modified ( at least one field getting updated )? We have explored Database.getUpdated method but it seems that this method also checks SystemModStamp behind the scenes (hopefully?), so this would also not work out if a user just "Edits" and "Saves" the record, without making any field changes. Please suggest.