Data filters (Top/BottomN, Sort, or Hide/Show) are persisted even after the members selected for the data filter are no longer in the query. As long as the overall dimension selections in the data layout are not modified, the data filter can still be applied. This behavior enables users to retain the data filter definition even when the query is modified or rebuilt. If the dimension selections in the data layout are changed and the data filter definition is not removed or modified, the results set may not be synchronized with what has been requested.
To alert users to pre-existing data filter definitions when the members selected for the data filter are not in the query, CubeQuery includes the prompt: “A Data Filter definition can no longer be applied. Would you like to Leave the definition, Remove or Update it?”
Valid responses include:
Leave—Preserves the data filter definition regardless of members that have been added or removed from the query.
Remove—Removes the entire data filter definition.
Update—Launches the Data Filter dialog box so that the user can update the data filter definition.
Under certain circumstances, the user may not be prompted:
the user removes the selected “Member” selection type (via Member selection dialog) from the axis in which the definition is defined
the user drills on a dimension axis in which the definition is defined and where the “Include selection” option is disabled (selected “Member” selection type is removed)
the user select to keep only the dimension on the axis in which the definition is defined (selected “Member” selection type is removed)
Members are added to the same dimensional rows and columns (all methods). For example, if members are added to a row axis where a Top/BottomN is defined for the Market dimension, and additional members are added to the Market dimension, then no prompt is displayed.
Members are removed from the same dimensional rows and columns (all methods). If a member selection change is made to the opposite axis in which the data filter is defined, there is no prompt as long as the selected member is not removed.
Member Selection (all methods including variables) changes are made from the same dimensional rows and column. If Member selection changes are made to an opposite axis, the prompt is not invoked unless the member is changed. For example, Year is the selected dimension, and Year is the selected member. In this case, Qtr1 and Qtr4 can be modified without a prompt, but if Year changed, the user is prompted.
Drilling (all methods) does not invoke the prompt if drilling on the dimension where the Top/BottomN definition is applied, only the members. If the drilling is performed on the dimensional axes with the selected member (for example “Year”) and the member remains, the prompt is not invoked.
Keep Only (all methods)—same as drilling
Remove Only (all methods)—same as drilling