D
dbeavon
Guest
If you want to use ROWID, you should think of it as a piece of data that isn't in your control. ROWID is an implementation of the underlying storage that Progress is free to change at any time. (They've changed it before when they deprecated RECID). You must consider whether or not you want to rely on a specific implementation of that ROWID. Tim's original question mentioned that relying on ROWID was a problem, and there are a number of possible reasons for that (which are the fault of ROWID and would not be a problem if a custom surrogate ID was used instead). Practically speaking, ROWID's are transient. If I have a business document with a bunch of line-items, I may implement an update/save operation by removing the old line items and recreating them (even if only one or two lines were modified). If I implemented the save operation in that way, all my previous line-item ROWID's would be invalidated, despite the fact that most of those items remained unchanged from a business perspective.
Continue reading...
Continue reading...