Interface
The script allows you to compose the filter table and the report display table.
The report interface consists of two tables. The first is the one where the filters are shown, while the second is the one that will display our filtered data.
Reporttable
The reporttable object represents the data display table.
reporttable.clearcolumns()
Deletes all columns from the data view table.
reporttable.clearrows()
Deletes all rows from the data view table.
reporttable.addtextcolumn(*fieldname*,*caption*,*width*,*visible*)
Adds a text type column to the display table.
reporttable.addcheckcolumn(*fieldname*,*caption*,*width*,*visible*)
Adds a check type column to the display table.
reporttable.adddatecolumn(*fieldname*,*caption*,*width*,*visible*)
Adds a date type column to the display table.
reporttable.adddatehourcolumn(*fieldname*,*caption*,*width*,*visible*)
Adds a date and hour type column to the display table.
reporttable.addnumbercolumn(*fieldname*,*caption*,*width*,*visible*,*precision*,*sum*)
Adds a number type column to the display table. It is possible to set the number of decimals (precision) and if the column must display a total at the bottom (sum)
reporttable.addcurencycolumn(*fieldname*,*caption*,*width*,*visible*,*precision*,*sum*)
Adds a currency type column to the display table. It is possible to set the number of decimals (precision) and if the column must display a total at the bottom (sum)
*value* = reporttable.countrows()
Returns the number of rows within the data display table.
*datarow* = reporttable.adddatarow()
Adds an empty datarow object to the data display table.
Filtertable
The object represents the report filter table.
filtertable.clear()
Clears all filters from the table
filtertable.addcategoryrow(*caption*)
Adds a category row to the filter table
filtertable.adddaterow(*key*,*caption*)
Adds a filter row for dates
filtertable.addcheckrow(*key*,*caption*)
Adds a filter line for checks
filtertable.addintegerrow(*key*,*caption*)
Adds a filter row for integers
filtertable.addnumberrow(*key*,*caption*,*precision*)
Adds a filter row for numbers with decimals, you can indicate the number of decimals (precision)
filtertable.addtextrow(*key*,*caption*)
Adds a filter row for free text
filtertable.addsubtablerow(*key*,*caption*,*tablename*,*filter*)
Adds a filter row by inserting a selection subtable
filtertable.addlistrow(*key*,*caption*,*values*)
Adds a filter line by inserting a list of values
*value* = filtertable.getvalue(*key*)
Retrieves a value from a filter based on its key
filtertable.setvalue(*key*,*value*)
Sets the value of a filter row based on its key