Simplicty and flexibility!


DataEase 8.5 - Simple ExecDQL Report, Groups explained!

Started by DataEase
You will need to Sign In to be able to comment on the Blog!

DataEase 8.5 - Simple ExecDQL Report, Groups explained!

Download Sample!


NB! This sample use LabelExecDQL but it will be the same in MemoExecDQL. 


ExecDQL Layout is a NEW functionality but it is created along the line "if it works don't change it".

It is no secret that DFD DQL was a powerful tool so when we are re-implementing DQL formatting we thought we could adopt as much as possible and practical.

It is still a "Beta" feature and there is some well know weaknesses in the implementation.

We reverse engineer the layout from the underlying  Multiview generated by the script.

Contrary to "common" belief, all multiviews are generated dynamically based on the query so the only fixed thing about them is the code that generate them i.e. the Script saved in a document but even then the multiview is dynamic. based on the limitations given in filtering the multiview will change...

The body in ExecDQL is based on this multiview and we have discovered that it can be a handful to keep up with:

The simplest DQL will create one level in a multivew (List)

For Table ;
List Records
Field1 ;
Field2 .

Mutliview

Field1~field2

But if you add Groups, you will add another level (which is logical) ...

But what is not so "Logical" is that you add a new level if you use statisticals like :sum

And you also "mess" with the multiview if you use ANY, ALL, COUNT OF etc.

But to make a long story short.

For now avoid using any in ExecDQLs you are using for reporting, use virtual fields in the tables instead.

When you use SUM etc, you need to add and extra .footer

If you get problem with your formatting simply play with the number of .header .footers. ;-)

This DQL format is again not DFD it is just inspired by DFD.

You can use .group and  you can actually write whatever you like behind it.... .group FirstGroup

but it is exactly the same as .header (always was it turns out...)

.group trailer does not exist in ExecDQL that is simply .footer

So the format is:

Report header text i.e. anything you like.

.header
Header 1
.header 
Group header
.items
items here
.footer 
Group footer
.footer 
ekstra footer to take up slack when you use :sum etc.
.end
Report  trailer i.e anything you like that come at the end of the report.





Written by DataEase 27/11/15 at 10:15:23 Dataease [{8}]FIVE
DG3_BlogList