A different kind-of debate...
I'm currently building some functionality, this involves a custom sub-object of the project object (a kind-of monthly status report).
Every month I will automatically create a new instance of the sub-object and copy forward various details from the previous month (all this I have working OK via GEL and XOG).
But I want to "lock" the previous month's instance (prevent users from editing it anymore) and only allow the users to edit the new current month instance.
So I have two options I think;
#1 : Lock all the attributes of the previous month at the point that I create the new month
I think I have to lock the attributes through a new process though, don't think I can affect locked attributes through a XOG update
(I know I can just insert into the locked attribute tables, but that would be unsupported)
#2 : Control everything through instance-level access rights ; only grant instance-edit rights on the new month, replace the edit rights with view rights for the previous month
This sounds fiddly to me, but I believe I can do this all through XOG
Any options I've missed? Any good opinions in how I should do this?
(I'm leaning strongly towards #2 by the way, I'm also concerned by loading up thousands of entries into the locked attributes table and what impact on the application performance that might have over time)