Report Parameters

Modified on Thu, Mar 20 at 6:07 AM

Creating Report Parameters

Report parameters are questions that are asked the user (the person running the report) when they try to run the report.


Parameters are added to a report on the "Parameters" tab of the ReportWriter.  Initially, there are no parameters and the list is empty:



Adding a Parameter

To add a parameter, ggo to the "Parameters" tab of the ReportWriter and click the "Add Parameter" button.  This bring sup the "Add a Parameter" dialog:

This is the start of the process.   All fields on this dialog are requiried.


  • Code - This is the unique internal code that the parameter will be referenced by inside your report.  It cannot contain spaces, but can contain:  letters (preferrably upper case) and numbers and the '_' underscore.
  • Type - The "type" is essentially how the user answers the question:  do they type in a text field?  Do they pick from a drop down?   Something else.  How the data is entered is controlled by the "Type" of the parameter.
  • Prompt - The "prompt" is the question the user will be asked.  For example "Select the staff member".
  • The sequence # will place this question in the list of questions.  Like most sequence #'s in SchoolFi, it is incremented by 10 for each parameters (10, 20, 30, etc.).  You can change this before you create the parameter.


When you have filled out the Code and Prompt and selected the Type, click Add to actually add the parameter:


Adjusting Parameter Settings

Once you have added the parameter, it's properties can be updated directly on the Parameters screen.   It will have been added to the list of paramters:


You can alter the type, the question (or prompt), indicate whether it must be answered or not and provide a default value:


If "Required" is checked, the user must provide an answer or the report will not start.


Be sure to click "Save" once your changes are complete.


Parameter Types

This is the list of the paramter types available at the time this page was created.  Parameter types are frequently added to the system.  Most of these are things that populate drop downs.  Where the parameter is sometihng other than a drop down, it is noted:

  • Account Mask
  • Accounts (Expense)
  • Accounts (Revenue)
  • Att. Balance Bank (Sys. School Yr)
  • Attendance Codes
  • Balance Codes
  • Balance Sheets
  • Bank Accounts (Accts Payable)
  • Board Sec Report Funds
  • Calendar Year
  • Calendars
  • Casual Earning Code
  • Checkbox - A checkbox is presented.
  • Custom List - This creates a drop down filled with the custom items you - as the report's designer - decide to have in the list.
  • Custom List as Radio Buttons - This is the same as the above custom list option but instead of a drop down the options are presented as a set of radio buttons.
  • Date  - The user has a 'date chooser' with which to select a single date.
  • Deduction
  • Deduction (Elected)
  • Departments
  • Departments (PCR)
  • Employee Form
  • Emplyee Form Custom Status
  • Flow Forms - This is only available to districts with 'grandfathered' access to Flow Forms (removed in 2017).
  • Fund Codes (Multi Select) (Parent only)   - "Multi Select" means the user can choose more than one of the options in the drop down. 
  • Fund Codes (Parent only)
  • Funds
  • Funds (Multi Select)  - "Multi Select" means the user can choose more than one of the options in the drop down. 
  • Generic Code - A drop down filled with the values in a "Generic Codes" table (found under Setup->Codes).  You will need to know the "Code" for the Codes table to create this parameter.
  • Generic Code (Radio Buttons) - Same as the above Generic Code parameter type except the options are presented as radio buttons.
  • Health Plans (Current Year)
  • Locations
  • Locations (Budget)
  • Locations (Multi Select) - "Multi Select" means the user can choose more than one of the options in the drop down.
  • Locations (Personnel)
  • My Locations
  • NJ SMARTR SMID Snapshots
  • No Answer - No answer can be given by the user.  This is an "information only" parameter type.
  • Object Codes (Accounts)
  • Observation Period Cycles
  • Payroll Number
  • Payroll Year
  • Rubrics - Rubrics are used in the Evaluations system.
  • School Years
  • School Years (Old BSR)
  • Schools
  • Separator Line - A 'no answer' parameter type used to delineate the set of parameters to the user.
  • Staff (Active Observers) - All active staff members who are identified as Observers in the Evaluation system.
  • Staff (Active Teachers) - All active staff members with the "teacher" Category.
  • Staff (Active) - All active staff members.
  • Staff Category - Options found in the "Category" drop down on staff members.
  • Staff Category2  - Options found in the "Category2 drop down on staff members. 
  • String - A "String" is simply a textfield.  The user responds by typing into the text field.
  • Swipe Stations
  • Time - The user is presented with a 'time chooser'.
  • User Flag
  • Validation Tables
  • Vendor
  • Vendor (Payors)

What Do Paramters Look Like When the Report is Run?

When the report is run, the parameters appear immediatley above the "Schedule Report" button in a "Report Parameters" scetion:


When a paramter is required it will have a small red star next to it - it then must be answered or the report will not run.



Using Report Parameters

Simply adding a parameter to a report does nothing more than asking the user a question.  The reportWriter does NOT automatically "just know" how to use your parameter.   You must do something with it in the other parts of the report for it to have an effect.


Where are Report Parameters Used within a Report?

There are typically 3 places where a report parameter can be used:

  1. As a Filter on the Filters screen
  2. As a "link" on a Lookup Data screen
  3. In an Expression Column as part of the Expression.

Parameters as FIlters

The Filters screen has three sections and parameters can be used in any of the sections:

  • SQL Filtes: parameters can be used as part of the SQL filters which restrict what records are pulled from the database.  When "Add Filter" is clicked in this section an "Add SQL Filter" dialog is shown which specifically includes the option to use a Report Parameter:
  • Staff List Filter:  When a 'staff list' Parameter is created, it actually must be used in this part of the Filters screen to restrict which staff members become part of the report.
  • Expression Language Filters: Parameters can also appear in Expression Language expressions as part of the Expression Language Filters section of the Filters screen.Parameters can be easily added to Expression Filters.


The use and features of the Filters screen are explained in detail in the "Report Filters" article.


Parameters as Links on a Look Up Column

When a column is added from another (non-joined) table, a "Query" must be defined on the Lookup Data screen in order to successfully get the field from the new table.

Parameters can be used in the "Value Expression" side of the filter (the right side).   To add a filter that uses a parameter, click the "Add Filter" button.  This brings up the 'add filter' dialog:

The "Property" drop down contains the fields in the new table.   The "Use this column" drop down contains the list of existing Columns in the report.   To select a parameter, leave the Value Expression and the "Use this column" drop downs blank at this point.   Select the "Property" (i.e. field in the new table) you want link to.

Then click Add.  This creates the link with an empty right side:

To find the parameter you want to use, you will need to use the "Expression Builder".  The "Expression Builder" is hidden under the brown box icon.  Click the brown box.  This brings up the Expression Builder:

Scroll down in the Expression Builder until you find the "param" entry.  


Use the drop down to select the parameter you want to use as your link:

Then click the "Choose" button to select the chosen parameter:

Once you have clicked "Choose" the Expression Builder creates the final expression for you:

Now click "Save Changes" to store your change.


Find more about Lookup Columns in the Linking Data from Other Tables article and more about Expressions in the Expression Langauge in the  ReportWriter article.


Using Parameters in an Expression Column

Parameters can be quickly and easily added to the Expression text field in Expression Language columns by using the "Add this parameter to the expression" tool at the lower right of the Expression panel.

Once a parameter has been added to an Expression, it can be used like any other macro, column, etc.


Find more about Expression Language in general and how to use it in the ReportWriter in the Expression Langauge in the  ReportWriter article.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article