Simplicty and flexibility!


Subform outside visible sreen....


Started by
Search
You will need to Sign In to be able to add or comment on the forum!

Subform outside visible sreen....

Hallo to Dataease Forum,

when i place a subform in a form outside visible screen (and then move it with MoveObject to center) there will be no data in it.

If i scroll down before moving it, the data will be there.... This problem is known, but i can not place all subforms in the visible screen.

If i would do so , there will be chaos in programming mode......

Is there a trick to get it work ?

Thanks for any help.

Markus


Written by 28/09/15 at 20:31:23 Dataease [{8}]FIVE

MoveObject("SomeData","L","200")+Keystrokes("_pgdn _pgup")

That was the short answer...


But no such thing.

DataEase create very advanced joins when it load a form/report etc. called internally a multiview.

Contradictory to common belief, a form is not built on top of a table or a set of tables, it is basically built upon a multi-view which happens to be completely dynamic.

This is part of the "brilliance" of DataEase. You can for instance include a Memo (or many) on a table but if it isn't references (part of dependency) or visible in the current "viewport" it will not be read or computed.

So knowing this one can use it both ways. On can "happily" include heavy stuff on a table and it will not hamper the performance (as long as you dont' use it where speed is of the essence, like in a search or drill down page) and then happily load it on the presentation page.

Likewise, if one want to insure a field is computed you can do a reference in the derivation to a field in the visual viewpoint, or simply make sure it is on the visual viewport i.e. close to the upper left corner.

Another strike of luck we take advantage of all the time, is that screen update has the lowest priority so any computation on load done via ExecDQL or in this case a simple PageDown/PageUp will have its logical effect without having any visual effect.

This is why SetState() to hide things in a virtual field happens without any "blinking" and why this simple PgDn/PgUp hack works the same way.

As you see, there is not visual or performance related problems with this small hack, but it fully do the trick.

Personally I don't like keystrokes to "fake" functionality but this is a typical exception as there is no possible logical implication.

Good luck.

MoveObject("SomeData","L","200")+Keystrokes("_pgdn _pgup")


Written by DataEase 29/09/15 at 09:58:46 Dataease [{8}]FIVE
DG3_ForumList