Hi Matthew,
>It looks like I'll need to perform a SYS(2011) to check for the current W/S's locks and include them in the result set, then attempt to lock the remaining records, and only include the failed locks in my result set.
About how many records are we talking here? In the time where you check for one record, the previous record might already be unlocked, or locked again. So the result set would only give a rough idea of what is locked or not. BTW, you might find ISRLOCKED() simpler to use then SYS(2011). That functions is also scoped to the current computer.
Christof
--
Christof