Forsta Visualization articles are now available from a new location  

Please be aware that we will soon remove this page.

The Dynamic filter is in some systems, named Data-driven filters or Associated Filters. The general principle will be familiar from many e-commerce sites with large catalogs organised in hierarchical categories. Below we see a very basic example of the Dynamic filter functionality, in this example, the variables Country and City are applied as standard filters, not hierarchical filters. When the user selects “US” in the Country filter the City filter is updated so only US cities are available in the city list.

The Dynamic filtering is purely based on the data in the project so no relations between filter options need to be predefined.

The Dynamic filter function is an optional setting, off by default and it is set per filter. It is necessary to support turning the Dynamic Filtering logic on/off per filter, instead of per report, to support projects which contain multi data sources. As an example: StoryTeller could have ten filters while nine of those are connected to the survey data and the tenth one belongs to a second data source, like for example, Media Investments. In this use case, all filters cannot be dynamic as there are respondents don't have data for all filters. In a case like this care must be taken to apply the dynamic filtering to the survey data filters and not to the media investment filter.

The Dynamic filtering can be applied to the items listed below:

  • Hierarchical filter
  • Regular filters
  • Time period filters

It is not currently supported to apply dynamic filters to Variable subsets. They are not filtering the respondent data, the Variable Subsets are effectively only hiding questions and answers.

Supported with in-memory options only:

The Dynamic filtering logic is only supported when the “In-memory data model” is used due to the need for high performance. This means that Filters based on Input variables will not support Dynamic filtering as Input variables are not yet stored in the in-memory data model.