Limitations when filtering dimensional data sources
Dimensional data sources provide implicit rollup at all levels of each dimensional hierarchy. Context filters and slicers with more than one member invalidate any pre-computed rollup of members at hierarchy levels before the level at which the filter applies.
The following types of filtering are safe for dimensional reporting:
- Context filters (slicers) with one or more explicit, non-calculated members per hierarchy, if those hierarchies are not used elsewhere in the report.
- Expressions that use the
filter
function (not in a slicer), comparing measure, tuple, or attribute values.
Nesting Incomplete Sets
When you nest sets (especially sets of explicit members, and sets that result from the functions
such as filter
and intersect
), there may be members at one nesting
level that have no corresponding members that can appear nested after them. In such cases, filtering
results may not be what you expect: the higher-lever members may or may not appear in the
result.
While this is most commonly seen within a single hierarchy, it can also happen across different hierarchies and dimensions.
To avoid this problem, ensure that the sets are constructed to ensure that they are never empty for any of the members in the higher-level set. For example, you could filter only the high level set and nest only the complete set of descendants at the desired levels after that one.