Parameter Control Types
The Control type selected for a report parameter determines how the user will be able to specify the parameter when the report is run. Each available control type is discussed below, with information on the settings that must be configured for each type.
ComboBox
Displays a dropdown list that is used to select a single option:
The Parameters Editor window must be set up carefully to ensure that the parameter behaves as expected:
- The SQL statement in the Default SQL for Keyfield area determines which item will be selected by default.
- The SQL statement in the Source SQL area is used to populate the combo box.
- The selections in the Display Fields area determine which of the fields set up by the Source SQL will appear in the combo box. (After entering a Source SQL statement, double-click on it to populate the Display Fields area.)
The combo box in the screenshot above was defined with the following settings:
ListBox
Displays a list of options with check boxes, allowing multiple items to be selected:
ListBox parameters are set up in the same way as ComboBox parameters. An extra Visible lines setting is available for ListBoxes - this controls how many lines tall the box will be (in the screenshot above, this is set to 7.)
Note: If the data is too wide to fit in the list box, there will be a horizontal scrollbar at the bottom of the list - this will take up one of the available lines.
CheckBox
Displays a checkbox that can be ticked or cleared:
A Checkbox parameter returns a boolean value that is true if the box is ticked. CheckBox parameters are not used to filter the report results; they are intended to be used in code on the Calc tab. For this reason, you don't need to configure any other settings on the Clarity Report Parameters window.
Note: Parameter values are available under the "plParams" data source on the Calcs tab.
TextBox
Displays a field where text can be entered:
Like the CheckBox, this control type is not bound to a data field and does not filter report results, but is available for use by data-aware components and in calculations. For example, you could add a DBText component to a report that takes its value from the value of a TextBox parameter.
You can set default text for the parameter by entering it into the Default SQL for Keyfield field.
Date
Displays a standard date selection control that can be used to filter report results by date:
The Table Alias, Key Field and Operator settings let you control how results will be filtered, e.g. the following configuration will return all Debtor transactions from today or earlier:
OrderBy
Displays a dropdown that lets the user choose which field to order report results by, including a Desc. box to set whether ordering should be in ascending (unticked) or descending (ticked) order:
When a parameter is set to "OrderBy", the Default SQL for Keyfield field becomes the "Order By" Fields field - this is where you enter the options for the dropdown. Enter fields from the selected table, separated by commas. These fields are not validated - any field that doesn't exist in the selected table will simply not appear in the dropdown. You can specify the default option in the Default field.
Search
Several control types are available for searching different type of records:
- DebtorSearch
- CreditorSearch
- StockSearch
- GLAccSearch
- GLAccGroupSearch
- AnalysisCodesSearch
Each of these control types displays a text box where the user can enter search terms (or enter "?") and press ENTER to open a search window for the appropriate record type.
When a search control type is selected, the Source SQL field becomes the Filter SQL field, where you can enter conditions to filter the search results on, e.g. for a DebtorSearch parameter, enter ACCGROUP = 1 to filter search results to include only Debtor accounts that belong to Account Group 1.
DateRange
Displays a date range control that allows you to select one of a group of pre-set ranges relative to today's date, e.g. To Yesterday, From Today, This Week, Next Month.
Note: If you want to be able to specify a range between two specific dates, you will need to use two Date parameters: one for the From date and one for the To date.
Spacer
This control type can be used to control the layout of the Clarity Report Parameters window. It leaves a blank space at the position indicated by its Control Number - no other settings are needed.
Line
This control type can be used to control the layout of the Clarity Report Parameters window. It draws a straight horizontal line at the position indicated by its Control Number - no other settings are needed.
Period
Several control types are available for selecting an accounting period:
- DebtorPeriod
- CreditorPeriod
- StockPeriod
- GLPeriod
These control types display a period selection control for the appropriate ledger:
These control types are not bound to a data field and do not filter report results, but they available for use by data-aware components and in calculations, e.g. when setting up parameters to use the global Financial Period selection in the Exo Accountant’s Assistant module.
Note: Period section controls always use the period ID (SEQNO). This means that it is not possible to enter a simple age (e.g. 1) in the parameter’s Default SQL For Key Field field; instead a short SQL query must be entered, such as: SELECT SEQNO FROM Period_Status WHERE Ledger = 'D' and AGE = 1