Hi. Yes you can set an On Timer script - see the help file info here: Install OnTimer Script
The script would commit the record. Then a new user can edit it.
Question though - do you really want different users to be setting data on the same record? Would it be a better solution for each user who is entering hours on the job to enter those on a new related record? Just a thought.
This is a highly unusual solution. It really isn't the same record, but it's the same field, on the same row. I have a set of filtered table occurrences, and filtered single field portals so that when an record is created, it happens in another table. The layout is based on a List View of Accounts, so all of them are listed. Then out next to each account, is an entry field for each day of the week. But these are based on the Hours table, that match on account id, employee id (logged into the solution), and the date that they are sitting on. It's kind of elaborate (to me anyway). I didn't come up with it. But except for this one annoyance, it works pretty well.
It's set up so that when you choose your name from a list of employees in a pop-up, that selection sets a global field to your own id (based on your login account). Then the day is done similarly...and account. You only see your own time, when you choose yourself.
I also set up a button that can only be seen by the logged in user that "Submits" the time. All this does is set a field in Hours to a 1. It lets the approver know who is finished with their time or not.
This description may not seem adequate of what it does, but suffice it to say that I can't enter time for someone else. However, I can block another person from using the same field at the same time.
It's kinda weird, but really has the look and feel of an excel spreadsheet.
Thanks for the tip. I will give it a try.
Ah - ok. So even though the hours are being set into a separate record because that record is on a related table being viewed through a portal, the parent record on which the user is sitting also gets locked to other users while they are on it. Use the on timer script method. On the layout in layout setup, set a script trigger OnRecordLoad, that runs the On Timer Script.