Tim's avatar
Tim
Data Integration
09-22-2025
Status:
New Idea

Filter dim by aggregate

Summary:

New type of filter: Show members of dimX where MyFormula > Y. Similar to a Top filter. 

 

Details/Example:

I have dimRegion and factSales. I want to report only those regions that have more than 10 sales.

I can use a "top" filter to show "top 10 regions by Count(factSales)"

I could add a calculated column to dimRegion showing CountOfSales and filter on that.

In some cases, neither of the solutions above are appropriate. I want to create a dashboard filter on dimRegion.RegionName that shows only those regions where my measure formula is >10.

One use case is that my users might build a complicated aggregate formula, like "(Sum(Revenue)-Sum(Expense))/Sum(Revenue)". They could rebuild that formula as a calculated column, but it means translating it from a Sisense formula into SQL, and it means the formula needs to be updated in two places if it changes.

The user might even store the formula as a Saved Formula and re-use it across widgets; I don't want to have to understand the formula, re-implement it in SQL, and verify that my new one is correct, I just want to apply a filter "on the thing my widgets are showing".

Another use case is that the dimension might be a non-unique field in a larger table. E.g. If I filter on dimCountry.RegionName. I could add a calculated column "dimCountry.CountOfRegionSales", but it's confusing and risks getting used in a way that leads to double-counting. The "correct" solution would be to create dimRegion and do a field there, but this forces the user to do SQL and data model development, which they might not have the skills for. While I want to encourage best practice (dimRegion), I don't want to force it so aggressively that I'm the only one allowed to use the system.

No CommentsBe the first to comment