Hi,
I have an issue I'm sure many would have come across:
On a multiple plot (log template), I have several columns of data. I apply an output condition on each data record (like the soil unit check on depth). The condition is then checked for each column and it takes ages to produce the output. Would there exist a trick to allow doing the check only once (per table of course)?
If not, that would be great in a future version of gINT (like having dependant columns like for tables...)!
I hope it makes sense!
Thank you
Jerome
Hi Szang,thanks for your help. Your item 1 is definitely not what I'm looking for as I want to keep some records of each entity after filtering.Let me describe more precisely what I want:
Let's say I have a log with 10 column-plots. Each of those show a different parameter from the same table of say 2000 records.I want to keep only records that satisfy a condition evaluated by sql aggregate from another table.
At the moment, the output condition check is done 10*2000*nb entities. I'd like to remove the 10 factor...Does it make sense?
Thanks again for spending time on my quest!
It might be helpful if you shared what specifically you are trying to do. From the above I gather you want to have an output condition that considers depth. This can be easily handled using aggregate functions in the entire entity output condition field of the entity (item 1 in my original post). For example, the expression:
<<Calc(<<Min(<<SAMPLE.Depth>>,<<SAMPLE.Recovery_Length>> > 4)>> < 15)>>
Will suppress output of the entity for any point where the depth to the first recovery length that exceeds 4 is more than 15.
For example, if the sample table for point 1 has
Depth, Recovery_length
0, 1.5
4, 2.0
10, 0.5
12, 1.5
16, 5.0
18, 3.0
and for point 2 you have:
0, 1.0
10, 4.5
15, 3.0
The entity will not print for point 1 but will print for point 2 (ie the first depth (minimum) where recovery exceeds 4 is 16 for point 1 which is not less than 15 so false is returned. The first depth where recovery exceeds 4 for point 2 is 10 which is less than 15 so true is returned). You can get as complicated as you want to using aggregate functions or sql functions and it is only evaluated once per point.
If this is not what you are looking for, please provide specific details on what you are trying to accomplish.
Phil,
I've had a look at this. Yes we can do very interesting things with them. Unfortunately, I think it doesn't apply to my case because the variable I want is not only Point dependent but also Depth dependent...
Hi Phil,
thanks for your reply.
I think I understand what you mean, let me try again... I'll let you know
Thank you Szang,
I have no bitmaps, etc... so it's definitely my SQL queries on the output conditions that take this time, which I can understand, I am asking the software a ridiculous amount of times the same question!
I'm aware of item 1, it cannot help here.
I have set up in the past such a field as the one fo your item 2 (at POINT level), that help a lot. But now I filter at depth level so it doesn't work I think