Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more

Reply
jaryszek
Memorable Member
Memorable Member

Manage aggregations multiple fact tables DirectLake over OneLake

Hi Guys,

I want to use multiple fct_tables granularity like fct_table_daily, fct_table_monthly etc.

I am using DirectLake over OneLake remote semantic model. 

1. It is feasible to use this to autmatically fetch proper data from slicer? 
For example If user will select Month, visual will fetch data from  fct_table_monthly table? 

2. If it making sense to switch to aggregated tables using import mode over using direct lake tables directly and just switch visuals/measured based on selection? 
When to decide to choose one or second approach? 

Best Wishes,
Jacek

1 ACCEPTED SOLUTION

Hello Jacek,

 

In aggregatinos tables, the user cannot force which table is used. If they select “Month” in a slicer, the engine may still query the daily table if the visual structure doesn’t match the aggregation definition.

Aggregations are designed for performance optimization, not user-driven logic. But in calculation groups there is explicit user control, the slicer dictates exactly which table is queried.

 

Best,

Anıl

View solution in original post

5 REPLIES 5
anilelmastasi
Super User
Super User

Hello @jaryszek ,

 

You can create a composite  model with calculation groups. For this, you need Tabular Editor (or another TOM/ALM-based tool) to add a calculation group into your model. 

 

After that you can create a disconnected parameter table:

Granularity = DATATABLE(
    "Level", STRING,
    {
        {"Daily"},
        {"Monthly"}
    }
)

And then  you should define a calculation group like "Granularity Selection" with a calculation item like:

Selected Value =
SWITCH(
    SELECTEDVALUE(Granularity[Level]),
    "Daily", CALCULATE(SUM(fct_table_daily[Amount])),
    "Monthly", CALCULATE(SUM(fct_table_monthly[Amount]))
)

 

If this solved your issue, please mark it as the accepted solution.  

Hello,

why this is better than Aggregations tables?

Best,
Jacek

Hello Jacek,

 

In aggregatinos tables, the user cannot force which table is used. If they select “Month” in a slicer, the engine may still query the daily table if the visual structure doesn’t match the aggregation definition.

Aggregations are designed for performance optimization, not user-driven logic. But in calculation groups there is explicit user control, the slicer dictates exactly which table is queried.

 

Best,

Anıl

thank you. 

This is great answer!

You are welcome Jacek, could you please accept as solution 🙂

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.