Race Condition between SQL code and SQL tag

I am pretty sure this is a race condition and would like to know what is the best way to fix it.

If you look in the General section of this forum there is a posting called FPMI Project Screen Shots. Under there you will find some screen shots of my project. The one I am talking about in this posting is MAINEDIT.

The screen is comprised of many SQL tags. The SQL tags get the data about what number to place on each container and how to address the SQL tags from the SQL Query.

Now if I place the query on the same page as the tags, some of the tags come thru with the overlay stating that they are not available, out of service or quality not good. And they remain this way for a little bit then as the data is updated they change to the proper status and or color.

Now if I place the SQL query on the page that opens the MAINEDIT page and pass it thru the NAV.OPENWINDOW parameters function I dont get the problem of the overlays and quality not good.

The second way is the way that works best but it does not allow me to dynmically change the query from a remote location. If I change the query I have to go back to the page that opens the MAINEDIT and then reopen main edit for the updates. Where as in the first way it does happen dynically but again you get errors on the display.

Thanks for any and all help. Have a great day and wonderful weekend.

Let me see if I understand. The component bindings are using an indirect tag binding that has as a parameter a property that is bound to the result of a sql query?

Sorry about that Carl, I really need to proof read my notes better. Sad to say I can read everyones handwriting but my own, haha. Anyway here is what I have:

SQL table - This table is set up as active machine and active assigned employees.

SQL Query - Factory PMI - Pulls the above named table in and provides the data for each container on the screen mentioned in my initial post. This data is used to set the color of the container, the numeric value on the container, and if the container is visible or not. It also puts the numbers in numeric order so when displayed they will be in sequence from left to right and top to bottom.

SQL Tags - refer to screen shot in the aforementioned initial post - Most of the items on each container are SQL tag based items. Those tag based items are indeed indirect tags. Each container has a couple of dynamic properties. these properties are set from the SQL query above. The SQL tags reference these dynamic properties to get their indirect address.

The top most left container is CONTAINER 1. It would have at least two dynamic properties. One would be numeric value and the other would be display. If display is set to a 1 then that container is displayed. And the value of numeric value would be displayed at the top of the container and all SQL tags would use this to get their indirect address.

What makes me think it has to do with race condition is if I place the query on the same page as all the containers, then I get the overlays which indicate a problem with the SQL tags used in that container.

If I place the query on the page that opens the page with all the containers on it, and pass the dataset with the NAV OPENPAGE command, then I dont get the overlays and issues.

If I recall correctly I have two condition that are used to check to make sure the SQL tag should be shown. One is the length of the data set and the other is the display or enable discussed earlier in this post. Since I am not at work I can not check it but I will do so on monday to see if these conditional statements are in place or not.

Hope this helps clear things up.

It should work fine either way - except that you might see a short delay when the query binding is running as part of the window. This delay is when the query is running. I assume the ‘overlay problems’ you’re referring to are more long-lasting.

Maybe we should take a look at your project, this is pretty hard to pursue over the forum.

Are you running the currenty version?