Like nearly all report generators, it will be a banded report generator, i.e. with sections:
- Report Header
- Page Header
- Group Headers
- Detail
- Group Footers
- Page Footer
- Report Footer
There can be an unlimited number of nested groups, and the grouping conditions can be specified by JavaScript code. It will provide Sub-Totals and Grand-Totals and the usual aggregate functions (like sum, average, etc.). All formulas and complete code can be entered as JavaScript code.
Sections will provide properties like "Can grow" so they will resize with objects that do resize, and "Keep with previous section" to keep sections together on a page (if possible).
Furthermore it will provide a complete DOM (Document Object Model), and an event-driven model. I.e. for an event "BeforePrint" of a section, you can enter code like:
- Code: Select all
if (fieldSum < 0)
textSum.TextColor = clrRed;
which causes the text object "textSum" to be printed in red color, if the value of the field "fieldSum" is less than zero.
The first version will not support the creation of chart objects, this is planned to be implemented in the next release (next to-do after the first release is stabilized).
In a later release we also plan to make the full VPE API available to the JavaScript engine, so you can call VPE API functions from JavaScript like
- Code: Select all
for (n = 1; n <= Report.PageCount; n++)
{
Report.CurrentPage = n;
Report.Print(1, 1, "hello world!")
}
in an event handler. This basically means that you can code your entire reports with absolute freedom using JavaScript within dycodoc, without using VPE.
This is the reason why VPE and dycodoc are already shipped with vJavaScript3260.dll, which is the JavaScript engine. The engine is already embedded into VPE and dycodoc and handles fields.