I'm writing a script to all baseline-transparent history reports to be made. In doing so, I'm storing the type of information we might want to report in Skip lists (newValue, oldValue, date, etc). The problem I'm running into is finding a key for the skiplist that is unique per history record. The sessionId and date (even down to the second) is not always unique, even per Object! (if someone did a find/replace on Object Text, there will be many history records generated for the same exact date/time and session ID). Is there a hidden attribute of a History object that acts as a sort of "Absolute Number"? |
Re: Unique identifier for a History Record? The oldest history is 0 and increments up for each change made |
Re: Unique identifier for a History Record? tommy3824 - Wed Mar 25 16:47:06 EDT 2009 Furthermore, the HistorySession "number" starts at 0 for each baseline. I'm hoping (and doubting) that somethings exists to uniquely identify each history record for a Module, even across baselines. One could always concatenate a baseline number with a HistorySession number to get uniqueness, but again, the HistorySession lacks details. It also lacks granularity as it only records a session, and not each change that was made. My current work around is to create my own number to be used in memory to uniquely ID each history record...anyone got a better solution? Jason |
Re: Unique identifier for a History Record? jhaury - Wed Mar 25 18:25:16 EDT 2009 Peter |
Re: Unique identifier for a History Record? I notice with considerable annoyance that you cannot store the 'History' handle in your skip lists. Consider the following: lets find the last History for the current object that modified Object Text. Loop through History of the object, and each time you find one that modified the Text you save the History. When you are done, you have a Handle of the History you want to display. Doesn't work. It appears that 'hstFound = hstLoop' does not assign a value, it makes an alias. So when you store hstFound and continue with your hstLoop, hstFound gets set to the last history in the loop, and is always equal to hstLoop. I sort of resolved that by COUNTING history, keeping track of the COUNT of the History I cared about, then after that loop looped back through History until I came to that count, THEN displayed that History. >Louie |
Re: Unique identifier for a History Record? llandale - Thu Mar 26 11:23:13 EDT 2009 1) Add in the option for redlined view of a change 2) Add date selectors so one can filter on date range. This would come up before baselines were loaded. For those only interested in a range of history on a large module with many baselines, this could save a lot of open time. I might even add in couple filtering options for user name and/or attribute name, but as it is, the GUI columns are sortable by clicking the column heading, so adding filters is hardly necessary! Jason |