In an effort to further optimize our application we have been exploring the use of “record-level variables”. Our testing has shown that the potential speed increase in our application is very significant.
These have been mentioned in the past and are included in the Servoy 6.0 docs:
http://wiki.servoy.com/display/public/D … elVariable
This gives the developer absolute control over when and why a calculation is fired. We use some calculations for reporting and only need to use them when the reports are specifically called. All other times it is just wasted overhead.
We’ve found that these record level variables work very nicely… with one exception. We can use them to calculate and display html snippets for various report sections:
– title headers
– headers
– body elements
– trailing subsummary(s) (titles and graphics leaving the math and aggregation to non record-level calcs and aggregations)
– trailing grand subsummary
– footers
What we have not been able to get to work is to get them to display on a leading subsummary. The pre calculated html values fail to render in a leading subsummary. The section appears but the record level variable does not render. The correct subtotal record level variables do render on the trailing subsummary.
What we do is load the foundset for the report into the report form in the correctly sorted order, spin through the found set and set the record level variables, sort the form’s foundset (on a true database field), force the foundset to be recalculated and then display the print preview. We have separate variables for title, header, leading subsummary, body, trailing subsummary, grand totals and footer. Data for a summary is replicated in each record to be included in a subtotal summary.
We are doing this in Servoy 5.2.10 smart client and it fails consistently only on the leading subsummary sections.
Has anybody else seen this or have any suggestions on why this happens?