FRM-40654, execute_query and no more browsing

From: <gottagun_at_yahoo.com>
Date: 17 Mar 2005 08:59:19 -0800
Message-ID: <1111078759.136126.238210_at_o13g2000cwo.googlegroups.com>



Hello everyone,

I have a problem with my application. I'll try to describe how it works first.

So I have form called M01. In it, there are some fields for people to fill. When you first open it, you can browse from record to record by clicking the > in the menu. At the bottom of the form, there are a couple of buttons, which, when you click on them, opens a new form (M02, M03, etc.) on top of M01.

When I browse to a record, say ID=100, on M01, then click on a button to open up M02... then fill in some info in M02, then save and come back (which closes M02 and go_block('M01')). So when I try to modify something in M01, I get an FRM-40654 Error, which says "Record changed by another user. Re-query to see change".

I know the problem comes from the fact that M01 keeps the data inj memory and then checks and see that the record has been modified... and thinks someone else did it.

I kind of solved that problem by adding these lines after go_block('M01'):
set_block_property('M01',default_where,'recordID=:global.M01_ID'); execute_query;

That solved the problem... but then, I would not be able to browse from record to record anymore because of the default_where.

If I remove that set_block_property line, I would see the first record in the browsing list, not ID=100.

So basically, I would like to:
1) get back to the right record (ID=100) 2) be able to browse the list of records.

Any idea on how to solve it?

Michel Received on Thu Mar 17 2005 - 17:59:19 CET

Original text of this message