Filters are used to control the context within a Form. When designing your Form it is important to be aware of the different options available for configuration on the Form.
Filter Configuration Options
Within the Form editor there is a Filter section that allows you to configure the dimension and attributes that you have selected in Layout.
|Header Display||This will override the display of the hierarchy name for the filter title. If you leave it blank, it will display the filter’s default header, which is set to the selected hierarchy/Member List name of the Dimension.|
|Default Member||For each filter, you can set a default starting member. It is recommended to default each member to the lowest member within a hierarchy to give better performance when the form is first opened. For more information on setting Default Members, check the section below.|
|Scope||A filter can contain a set of Dimension Members. Only members from that set will be allowed for selection by end users.|
|Read Only||Filters can also be set to read only mode. When a filter is set to read only, users will not be allowed to change the value of the filter.|
|Multi-Select||Determine whether this filter allows selecting multiple members at a time.|
|Ensure Selection||This property will enforce selection of at least a single member by a user.|
|(Leaves-Only) Selectable||This will show a check-box beside each member in the hierarchy without any children, with the parent members being non-selectable.|
|(All) Non-Selectable||This will remove the checkbox from the “All” member, preventing it from being selected.|
|Expand All||If the Form is configured with an Advanced Relationship, then the filter will show only valid members based on the relationship. The Expand All option is to override the show valid member relationship behavior by always showing the full definition of the hierarchy.|
|Auto Refresh||When checked, the Form will be automatically refreshed every time the filter selection is changed.|
|Explicit Security||Only members that the user has explicitly been granted access to via security will be shown. For example, when the user only has security to leaf members of a PC hierarchy, the filter will only show those members and not any of the parents.|
|Level Mode||With Level Mode enabled, the filter will provide each level of a Level Hierarchy as members to select. This is useful in conjunction with a Filter Variable as you allow the user to view different granularity on rows and columns based on selection of this filter.|
Select the icon to change the Default Member configuration.
There are four types of default members you can set:
- Selected Member - This is the default setting. You can pick a Default Member from the Member List by clicking the icon and selecting from the list.
- Custom Member - Click on the settings button and select Custom Member. You can enter any display text in this field, such as “Please select…”
- Member Variable - Rather than hard-coding a specific default member, you can set a Member Variable to be the default as an easy way to update default filters across many forms. Note, this will still only affect the default behavior. Users will be able to save APPs with a different filter selected. Refer to the Member Variables article for more information on defining Member Variables.
- Member Variable (Dynamic) - Selecting a Member Variable here will have the same effect as setting a Member Variable in the option above, however a Dynamic Member Variable will ensure user-saved apps always open with the filter set to the current Member Variable setting in Modeler, regardless of what the filter was saved with.
To understand relationship, please refer to the Using Linked Models article before reading below.
A Form can make use of one or more relationship to define the valid combination of members across dimensions within a model. For instance, there might be a set of products that are sold in certain countries, or a relationship that defines which accounts are valid for a set of departments. You can configure relationship on a Form by using the measure from a Linked Model of the Parent Model.
In the ‘By Metric’ form in the Workforce Sample Application, there are three restrictions that will be applied:
- When a user selects a department, the employee type will only show the options that the department has. For example, there is no Contract employee in AMERICAS, so when Department Filter is set to AMERICAS, Contract will be hid from the candidate list.
- The form will only display the employees that belong to that department.
- Certain Employee Types have their own group of Metrics, so the candidate list of the Metric filter will be dynamically adjusted based on the selection of Employee Type filter.
These restrictions can be realized by two relationships, as shown below.
The first relationship is from the Dep-Emp-Type Validation model. We have applied this relationship to Row for the first restriction and to Employee Type filter for the second restriction.
Below is an example of some records in this model:
For example, the first record validates the 709-80000-Hourly relationship. Therefore Employee 80000 will show in the form when the Department filter is set to 709 and Hourly is selected for the Employee Type filter.
It’s easy to understand how the second relationship (Emp Type-Metric Validation_Validation) applies to the third restriction. However, if we apply this relationship to Rows, it works just as well. The main purpose for this is to avoid invalid input when the selection values of Employee Type and Metric are not valid. The following video shows what happens if the Row box is unchecked.
In this case, since the Hourly-Base Annually Rate is not valid, the relationship does not apply its effect to the row axis of the form. Therefore the form will still be rendered.
On the other hand, let’s take a look at the scenario when the Row box is checked.
Now the relationship will pose its validation to the row axis, which results in a blank canvas to avoid invalid input.
Lastly, filters in different forms can be linked together. This can be configured in ADMINISTRATOR. See details in the Filter Groups Section in the Kepion Administrator Guide.