I'm considering implementing archiving on some feature classes that are in an SDE geodatabase on SQL Server. These feature classes are versioned (using traditional versioning). Is there any way to use the "valid date" rather than "transaction date" for the archive tables?
The Esri documentation says: "For archiving on versioned data ArcGIS uses transaction time, which is based on the current server time, to record changes to the data when changes are saved or posted to the DEFAULT version. Transaction time and the time the event occurred in the real world are rarely the same time. Time will elapse between an event happening in the real world and its being recorded in the database. For example, a parcel is sold on May 14, 2006; however, the change is not recorded to the data until June 5, 2006. The transaction time of June 5, 2006, is recorded in the archive class for this change."
Does anyone know if it's possible to change the date & time? Or has anyone had a similar question and come up with a workaround?
Beware, had a user corrupt an archived SQL geodatabase by changing data via SQL.
It seems like you want "Archiving, But..." (similar to "Agile, But...").
I don't recommend hacking the Archiving tables in a versioned geodatabase. Instead, I suggest you add the timing you want in basic attributes, and use SQL constraints (temporal where clause) instead of Archiving to accomplish the same goal.
There are two schools of temporal sequencing on a future "end date". One is to use a future epoch (e.g., "Dec 31, 9999"), which is how Archiving works. The other is to use NULL when the date is undefined. The latter is trickier in the WHERE clause (since it uses an OR), even if it does use less space (but proper use of COALESCE could ease that).
- V