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