9.1C dynamic buffer locks

Posted by Grant Holman on 17-Jun-2018 06:05

I'm doing some work on an legacy system written in 9.1C and I need to update a dynamic buffer that is in a no-lock state - so basically I need to upgrade it to exclusive-lock.

9.1D introduced the FIND-CURRENT method which makes this easy [e.g. hMyBuffer:FIND-CURRENT(EXCLUSIVE-LOCK)], but this is not available in 9.1C.

N.B. The table used by the buffer is dynamically obtained so static references aren't an option (e.g FIND CURRENT TABLEX EXCLUSIVE-LOCK).

Posted by Mike Fechner on 17-Jun-2018 06:10

Is FIND-BY-ROWID available in that release?

All Replies

Posted by Mike Fechner on 17-Jun-2018 06:10

Is FIND-BY-ROWID available in that release?

Posted by onnodehaan on 17-Jun-2018 14:45

Find-by-rowid is the best option. If not available this article explains a few other options:

knowledgebase.progress.com/.../21363

Posted by Grant Holman on 18-Jun-2018 02:54

Yes, FIND-BY-ROWID is supported!

Thanks for that, Mike :-)

This worked: hMyBuffer:FIND-BY-ROWID(hMyBuffer:ROWID, EXCLUSIVE-LOCK).

Posted by Grant Holman on 18-Jun-2018 03:26

Sorry, one more question around 9.1C dynamic buffer limitations.

9.1C doesn't have the FIND-FIRST method.  Is the only way to replicate this in 9.1C to create a FOR FIRST dynamic query?  Any simpler options?

This thread is closed