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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
CRN
Helper I
Helper I

Calculate function and direct

Hi all,

 

I'm trying to recreate a report. Right now I've made it with imported data from SQL but the new report is set to use Direct Query.

 

Previously I requested a solution for this issue: https://community.powerbi.com/t5/DAX-Commands-and-Tips/Retrieving-and-spreading-data-from-many-side-...

 

The solution: 

Earleist Start = 
CALCULATE(
	MIN('Table2'[Timestamp]),
	'Table2'[Timestamp Code] ="Start",
	ALLEXCEPT('Table1', 'Table1'[Prod No])
)

Latest End = 
CALCULATE(
	MAX('Table2'[Timestamp]),
	'Table2'[Timestamp Code] ="End",
	ALLEXCEPT('Table1','Table1'[Prod No])
)

 

But the formulas don't work when working with Direct Query.

 

Any ideas on how to solve the issues of not being able to use CALCULATE() and ALLEXCEPT() when using Direct Query?

 

Thanks!

 

6 REPLIES 6
tamerj1
Super User
Super User

Hi @CRN 
Plrease try

Earleist Start =
CALCULATE (
    MIN ( 'Table2'[Timestamp] ),
    'Table2'[Timestamp Code] = "Start",
    REMOVEFILTERS ( 'Table1' ),
    VALUES ( 'Table1'[Prod No] )
)

Hi @tamerj1 ,

 

Thansk for your response!

 

Unfortunately I'm not able to use the CALCULATE function when using Direct Query.

 

I get this error: "Function 'CALCULATE' is not allowed as part of calculated column DAX expressions on DirectQuery model".

 

Hence the issue as the first solution worked with imported data.

@CRN 

Please try

Earleist Start =
MINX (
    FILTER (
        ALL ( 'Table2' ),
        'Table2'[Timestamp Code] = "Start"
            && 'Table2'[Prod No] = SELECTEDVALUE ( 'Table2'[Prod No] )
    ),
    'Table2'[Timestamp]
)

Hi @tamerj1 

 

The MINX function is not supported either.

 

Unfortunately I still seem to be stuck.

 

Thanks for your help!

@CRN 
Please try

Earleist Start =
SELECTCOLUMNS (
    SUMMARIZE (
        FILTER (
            ALL ( 'Table2' ),
            'Table2'[Timestamp Code] = "Start"
                && 'Table2'[Prod No] = SELECTEDVALUE ( 'Table2'[Prod No] )
        ),
        'Table2'[Prod No],
        "@TimeStamp", MIN ( 'Table2'[Timestamp] )
    ),
    "@@TimeStamp", [@TimeStamp]
)

@tamerj1 

 

It seems that a lot of functions won't work with Direct Query. SELECTCOLUMNS isn't working either.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

Top Kudoed Authors