Selection List Report Type
A selection list report is a list that is referenced in selection list dropdowns typically found in form questions, attributes, etc. It’s a simple way to create a dropdown menu that may include a large number of entries and may not be static.
The system-defined parent-child selection lists are available for use in report parameters, form answers, and attribute lists. These system-defined selection lists may be copied first and then configured to your specifications.
Parent-child selection lists are controlled to ensure correct relationships are captured. When the parent value is updated, the child value will be cleared.
For an improved user experience, Assetas recommends the following:
- Utilize hide/show logic to display the child question only when the parent question has been answered.
- Order parent-child selection list questions together; do not separate them within a form.
- Use tooltips to provide additional insight into the relationships.
Create a selection list report
- Expand “Reports” on the sidebar navigation.
- Select “Design” to design a new report.
- Populate the fields. Data fields with an asterisk (*) are required.
- Category*: The category grouping for this report. You can create your own categories by navigating to Report Categories under the Lists & Types menu under Configuration.
- Type*: Select the “Selection List” type of report.
- Name*: Enter the name of the report.
- Dashboard Control Name: When used as a control on a dashboard, this is the default name of the control. Leave blank to use the report name.
- Dashboard Refresh Interval*: When used as a control on a dashboard, this is the interval (in minutes) when the data is automatically refreshed. Toggle No Automatic Refresh to ‘On’ to only refresh data when the dashboard is reloaded. Toggle No Automatic Refresh to ‘Off’ to select the refresh interval.
- Icon*: Select an icon to represent the report.
- Datasource*: Select the underlying data for the report.
- Tags: Enter the list of tags for this report.
- Description: Enter a short description of the report.
- Managed By: The contact who manages this report.
- This field is hidden upon creation and visible when the record is edited. It is defaulted to the user who created the record.
- Allow Anonymous Viewing: Toggle on to allow anonymous (unauthenticated) users to view this report. It is recommended that you only enable this functionality when approved by your security department. Only users with the “Administer Report” function granted to their security role will see this toggle.
- When activated, the report will become public, allowing anyone with the link to the report to view it. Linked data is not recommended; links within the report will be redirected to the login page. Please ensure this selection aligns with your organization’s security requirements.
- When toggled on, an icon will appear on the report search page in the Tags column to indicate the report allows for anonymous viewing.
- When viewing the details of a report, there is a barcode icon within the Details header which will launch the Encoder tool. This tool will create a barcode with the link to the report embedded so public users may access this report without logging into the system.
- Archived: Toggle on to disable the usage of this report.
- This field is hidden upon creation and visible when the record is edited.
- Archiving a report will add a tag of “Archived” to the report.
- Archived reports are removed from dashboards when referenced as dashboard controls.
- The Report Administrators or the “Managed By” report contact can view archived form types by selecting the appropriate value from the Archived Status dropdown.
- External Identifier: Create a unique identifier for this report.
- Select “Save” upon completion.
Raw data
If you select ‘Raw Data’ as your Datasource in the Report Details section, you will see a new section to enter your raw data. You can use this field to create a Selection List report of items not found elsewhere in the system. You may enter a single value at a time by using the add button or you may enter your data as pipe-separated text (for example: Low|Medium|High) by using the edit button. Select the former to create a selection list of icons for use in forms.
- Locate the report and select the “Edit” button for the desired report.
- Select “Add” to enter a single item.
- Populate the fields. Data fields with an asterisk (*) are required.
- Position*: The position of the item in the list.
- Value*: The value of the item.
- Text: The display text of the item.
- Icon: The icon that is used to represent this item.
- Parent Value: The value of the parent that is used to filter this list.
- Select “Edit” within the Raw Data section to enter data as pipe-separated text.
- Populate the field. Data fields with an asterisk (*) are required.
- Raw Data: Enter the raw data.
- Select “Save” upon completion.
Selection list properties
- Locate the report and select the “Edit” button for the desired report.
- Select “Edit” within the Selection List Properties section.
- Populate the fields. Data fields with an asterisk (*) are required.
- Name: The name of the selection list when visible as a report filter. Leave blank to use the report name.
- This value is displayed in the ‘Filters’ section of a report when the selection list is used as a report argument.
- Value*: The column to use for the unique value identifier.
- Select an ID data element, such as Asset.Asset ID or Contact.Contact ID. This is the GUID (or Globally Unique Identifier) specific to each record, if the record is a Contact or an Asset.
- If you’ve entered Raw Data, this field will automatically populate.
- If a GUID is not available (for example, in the case of attributes), select the corresponding name.
- Text*: The column to use for the display text of the value.
- This is the text that will appear in the selection list dropdown, such as Asset.Name or Contact.Contact Name.
- Ensure that your Value and your Text data elements align and are sourced from the same data table (both from the Asset table, for example).
- If you’ve entered Raw Data, this field will automatically populate.
- Select the “Advanced Features.Calculated Fields” value to incorporate various data elements together. Please see Calculated Fields for more information.
- Selection lists will auto-sort by the Text field when the Group field isn’t used. If the Group field is used, it will sort by the Group field first, then by the Text field.
- Text Calculated Field: The expression to use for the display text of the value. This field is only visible if the “Text” value is “Advanced Features.Calculated Fields”.
- For example, Asset.Name + ‘ (‘ + AssetType.Name + ‘, ‘ + AssetStatus.Name + ‘)’ will render as “Generator XYZ (Engine, Active)”.
- When working with Contacts in a Calculated Field, please note that the correct syntax for the full name is Contact.DisplayName (not Contact.ContactName).
- When working with Models in a Calculated Field, please note that the correct syntax for the Model table is MModel, due to “Model” being a database reserved word. Examples may include MModel.Name and MModel.ModelID.
- Please note that any data elements included in a Calculated Field must also be explicitly included in either the Report Filters or in the Sorting (for example, sort by Asset Type.Name).
- Group: The value to use to visually group the items in the list. Selection lists will automatically sort by the Group field first (when used), and then the Text field.
- Parent Value: The value to use for the filtering of the list to only show items for the parent. This field is used to create dependent dropdown lists in forms.
- Enter the GUID (or Globally Unique Identifier) specific to each record, if the record is a Contact or an Asset. Select an ID data element, such as Asset.Asset ID or Contact.Contact ID.
- If a GUID is not available (for example, in the case of attributes), select the name.
- The Parent Value must align with the Filter selected in the Form Question when used to create a dependent dropdown list.
- Parent Text: The text to display for the associated parent value. Ensure that your Value and your Text data elements align and are sourced from the same data table (both from the Asset table or both from the Contact table, for example).
- Latitude: The value to use for the latitude. This will allow you to view items sorted by distance in Trek.
- Longitude: The value to use for the longitude. This will allow you to view items sorted by distance in Trek.
- Name: The name of the selection list when visible as a report filter. Leave blank to use the report name.
- Select “Save” upon completion.
Filters
Filters allow the report to dynamically return results based on defined logic, criteria, and order.
- Select “Add” or “Edit” within the Filters section.
- Populate the fields. Data fields with an asterisk (*) are required.
- Group*: The group of this filter. Groups are used in conjunction with logical statements where the entire group evaluates to true or false.
- If an OR statement will be included in the logic, the Group value defines the order of operations. Use additional groupings to ensure the filtering logic works as expected.
- If the logic does not use OR statements (the logic only uses AND statements), or there is only a single filter, Group 1 will be sufficient.
- For example, if your logic looks something like:
(A and B and C) OR (D and E), the filter elements within the first set of parentheses will be in Group 1, and the filter elements within the second set of parentheses will be in Group 2.
- Precedence*: The order of this filter in relation to the other filters in the report query.
- When adding, editing and deleting a filter, the system will automatically renumber the filters by increments of 5.
- Column*: The column that you will use to filter the data. The naming convention is: [Table.Element] (data type). For example, select Asset Type.Name to filter on the type of asset. There is a search box within the dropdown to help locate data elements within tables.
- Operator*: The operator to use for this filter.
- The Operator value of “contains any of these items” will return all results that meet the entries. For example, a filter to show only records that “contains any of these items” with “WELL,TANK” would return WELL0001, WELL0002, and TANK0001.
- If filtering on the presence of Form Tags, please use “contains” or “contains any of these items” as the operator.
- The Operator value of “is in the list” is appropriate for matching entire values.
- Value*: The value to use for this filter. There are several options:
- Enter a single numerical or text value (please note that text values are not case sensitive).
- Enter a semicolon-separated or comma-separated list of numerical or text values.
- Enter a GUID surrounded by single quotes.
- Use a variable. The Append Variable button allows you to quickly select a variable from a re-defined list, including {Today}, {CurrentUser}, {StartDate}, or {EndDate}. Variables are denoted with curly brackets. Certain variables require you to enter a variable’s unique identifier or external identifier to evaluate properly. For example, for {ContactID}, simply enter the Contact’s unique/external identifier within the curly brackets. For Selection Lists, enter the Selection List report’s external identifier within the curly brackets, like so: {SL:Assetas_SL_Active_Assets}. For a full explanation of variable formats, please reference the Variables page.
- The list of potential variables will depend upon the data type selected.
- For date fields, the two filters {StartDate} and {EndDate} must be applied together; you cannot reference only one of these two in the filters for a report.
- When timestamps matter, Assetas recommends using the DateAdd function (DateAdd(day, 1, {EndDate}) to add one day to the {EndDate} variable as the timestamp on the {EndDate} variable defaults to 12:00AM (the beginning of the day). For example: Telemetry.Active Date >= {StartDate} AND Telemetry.Active < DateAdd(day, 1, {EndDate}).
- If the filter is referencing one date, please use {AsOfDate}.
- For comparing telemetry timestamps with {Today} please use Telemetry.Active Date >= {Today} AND Telemetry.Active < DateAdd(day, 1, {Today}).
- Choosing from Selection Lists: To configure a filter to select a value from a selection list (as in the case of {SL:Assetas_SL_Active_Assets} above), you’ll need to set the Column value to an ID rather than a name. For example: Asset.Asset ID = {SL:Assetas_SL_Active_Assets} will allow you to run a report on a single asset chosen from the selection list of active assets.
- Choosing from County, Country, or State Lists: To configure a filter to select a value from a list of counties, countries, or states, you’ll need to set the Column value to an ID rather than a name. For example: Address.County ID = {CountyID}will allow you to filter by a single county chosen from the list of US counties. To hardcode the filter for a single county, use Address.County ID = ‘GUID’ where GUID is replaced by the 36-character GUID of the county (and retain the single-quotes on either end).
- Logical*: Defines how to relate this filter to the other filters. If the filter directly after this filter is in a different group, then the logical field will describe how the two groups interact.
- The AND logical has a higher precedence than the OR logical, See the table below for examples.
- Exclude: Toggles whether this filter will be applied.
- Group*: The group of this filter. Groups are used in conjunction with logical statements where the entire group evaluates to true or false.
- Select “Save” upon completion.
Manage filters
- Select the View/Edit button for the desired filter.
- To the right of each filter, under the Actions menu, you may edit the filter position or criteria or delete the filter from the report.
Additional filters
Additional Filters define the default maximum number of rows to return and sets how to handle distinct rows.
- Select “Edit” within the Additional Filters section.
- Populate the fields. Data fields with an asterisk (*) are required.
- Maximum Rows*: Sets the maximum number of rows returned in a report.
- For a Selection List report, please increase the Maximum Rows to exceed the maximum number of results returned by the Selection List.
- For reports that return a number of rows that exceeds the Maximum Rows value, the row count is displayed in yellow alongside a + icon.
- Distinct Rows*: Eliminates any duplicate rows if set to Yes.
- Maximum Rows*: Sets the maximum number of rows returned in a report.
- Select “Save” upon completion.
Sorting
Sorting criteria allow the report to display results in the expected order.
- Select “Add” or “Edit” within the Sorting section.
- Populate the fields. Data fields with an asterisk (*) are required.
- Column*: The column that you will use to sort the data.
- Position*: The position of this sort in the report.
- Order*: How to order the sorting of the column in the report.
- Select “Save” upon completion.
Manage sorting rules
- Select the View/Edit button for the desired sorting rule.
- To the right of each filter, under the Actions menu, you may edit the sorting rule position or criteria or delete the sorting rule from the report.
Security
In this section you may define which security roles have access to your report if the report is not set to be viewed anonymously.
By default, reports are not assigned to any security roles; only the user who created the report and anyone with the “Report Administrator” security function will be able to access the newly created report.
When a report is granted to one or more security roles, users of those security roles will also be able to access it. You can add single roles at a time, or all roles at once.
Add a security role
Reports are only available for use by users who have appropriate security roles.
- Locate the report record and select the View/Edit button for the desired record.
- Select the “Add” button in the Security section.
- Populate the field. Data fields with an asterisk (*) are required.
- Security Role*: Select the security role that allows the use of the report.
- Select “Grant” upon completion.
Add all security roles
Reports may be available to all users if all security roles are granted access.
- Locate the report record and select the View/Edit button for the desired record.
- Select the “Add All” button in the Security section.
- Select “Grant All” to confirm your selection.
Manage security roles
- Locate the report record and select the View/Edit button for the desired record.
- To the right of each record, under the Security menu, you may revoke this security role which will prompt you to confirm revoking access to any user with this security role.
Validate
- Locate the report and select the “Edit” button for the desired report.
- Select the “Validate” button to check the report for any issues and display any errors found.
A report without validation errors does not necessarily guarantee that the logic in the report is accurate or that the report will return data. It simply affirms that the way the mappings, filters, and sorting rules have been defined to generate the report.
Run
- Locate the report record and select the “Edit” button for the desired report.
- Select the “Run” button to run the report.
System-defined Parent-Child Selection Lists
The system-defined parent-child selection lists are available for use in report parameters, form answers, and attribute lists. These system-defined selection lists may be copied first and then configured to your specifications.
- Assets by Physical Location
- Assets by State
- Contacts by Company
- Contact by Contact Group
- Contacts by Manager
- Models by Manufacturer