Hide components until overlay errors disappear in Perspective Views

Hey guys,

I’m having a small “usability” / “neatness” problem. I have a project on Perspective in which I use a bunch of embedded views within embedded views with Indirect tags. I have no functional problem in the sense that everything works as it should, but every time the view loads I get error overlays and I don’t like how it looks. I’ve been thinking of making the main container invisible until all errors are cleared, but since the issue isn’t with the tags, but the component loading time I’m not sure how to implement this.

Any ideas on what I condition I need to check to make the views visible until all components have loaded with correct values?

I’m aware that I could use the overlay opt-out,but I want to keep them if possible and just prevent this aesthetic issue on load.

If I am not mistaken this is a bug and has been fixed in 8.0.4 nightly version. http://forum.inductiveautomation.com/t/bug-13815-popups-overlays-v8-0-2/27231

3 Likes

You could also try right clicking the binding(s) and setting them to “Persistent”. Normally, bindings don’t persist values (to avoid a common problem in Vision, where a window would be saved with a massive serialized dataset, ballooning window sizes). The default behavior in Perspective is to avoid serializing any state once a property is bound - even the property definition isn’t actually saved, only the binding. If you right click and check the ‘Persistent’ checkbox, a default value (whatever it was last at in the designer) will be used until the binding evaluates for the first time.

Does that bug apply also to Perspective? or only to Vision? If so I’ll wait for the RC’s or the Stable version to fix this problem and worry about it later. I was installing Nightly versions during the 8.0.3 development and it was a bit to erratic to design a project like that.

This behaves interestingly. For example, I have some XY charts that were already persistent and I still get the error overlay. Also, it being “persistent” is usually taking the last values that were setup in the designer. So if I have a view that is loading values from different sensors, even if they don’t go to error they briefly show the wrong values before displaying the correct ones, which is still undesirable. Similarly, if I remove all parameters from the designer and have null values there, them being the last known values show either errors or nulls on loading.