Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 04 MAR 2021 05:13:37PM Jim Vaughan wrote:

I use Get_Property ARRAY property to get a data from an Edit Table. It's a large Edit Table and returning the data takes some time.

I then a few lines of code later call Get_Property again to get the VALUE of a radio button on a different window. The data returned is the same as the first call, a large string of @FM, @VM delimited date. If I call the Get_Property again with the exact same parameters I get a return value of 1, which is correct.

Anyone ever seen anything like this?

Jim R Vaughan

www.waterloo-software.com


At 04 MAR 2021 07:24PM Jim Vaughan wrote:

Some more information

Data has a LEN of 1,909,206 and the Set_Property ARRAY is very quick the Get_Property ARRAY is very slow.

Jim R Vaughan

www.waterloo-software.com


At 05 MAR 2021 08:12AM Carl Pates wrote:

Hi Jim,

Can't say I've seen the problem with the wrong return value before - no idea off the top of my head why it would do that, and then return the correct value on the next access.

I would expect the Get to be slower - I rewrote the Set several years ago to make it faster, so that's the difference there.

Carl Pates


At 05 MAR 2021 01:19PM Jim Vaughan wrote:

Yes, very strange.

I fixed it by storing the data elsewhere, removing need for a Get_Property.

Jim R Vaughan

www.waterloo-software.com


At 07 MAR 2021 04:14PM Matthew Crozier wrote:

Yes, I've seen that behaviour where get_property() could return the result of the previous get_property() call rather than the property it is being asked for. In our case it wasn't related to the amount of data through. It seemed to occur when the SIZE event gets calls repeatedly through vigorous resizing AND there is a background process going on, monitored with a TIMER event. This is going back to OI v9.2.1

We never got to the bottom of it, but applied a work-around by inserted this line in any code sensitive to this

Loop while get_property( MDIframe, 'DEFPROP' ) == 'WINDOW' Repeat

This won't continue through the code until get_property() comes back with the known correct answer.

My notes on this refer back to Rev Bug Tracker #252:

There is a behavioral difference with the SIZE event when the window is called with Start_Window versus Dialog_Box. Start_Window allows the SIZE event to trigger as the window is being resized. Dialog_Box only allows the SIZE event to trigger after the window has been resized. My assumption is that the way OpenInsight handles modal processing is suppressing the synchronous execution of events.

HTH, M@

Vernon Systems

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/d55e2c6e6643d64ca6a099933fa5d268.txt
  • Last modified: 2024/01/04 20:57
  • by 127.0.0.1