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

Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more

Reply
Anonymous
Not applicable

Loop-like feature in Power BI?

Dear all

 

I am trying to return different value in a new column if I find a specific value in several rows.

 

For example, I am trying to return the earliest view date when I found "Contact Customer Service" for each case and return, and if there is no any "Contact Customer Service" for a case, return the last view date.

 

Is it possible to have this loop funtion in Power BI? 

 

CaseTime_StampActionFirst or Last View
X0012/1/2021View2/1/2021
X0012/3/2021View2/1/2021
X0012/18/2021Place into Cart2/1/2021
X0012/19/2021Contact Customer Service2/1/2021
X0012/22/2021Cancel2/1/2021
X0021/3/2021View1/3/2021
X0021/19/2021Place into Cart1/3/2021
X0022/3/2021Purchase1/3/2021
X0022/7/2021Paid1/3/2021
X0033/2/2021View3/6/2021
X0033/4/2021View3/6/2021
X0033/5/2021Place into Cart3/6/2021
X0033/6/2021View3/6/2021
X0033/11/2021Paid3/6/2021

 

Thank you in advance!

1 ACCEPTED SOLUTION

View Date CC = 
VAR __v =
    FILTER(
        'CASE',
        'CASE'[Case] = EARLIER( 'CASE'[Case] ) && 'CASE'[Action] = "View"
    )
RETURN
    IF(
        ISEMPTY(
            FILTER(
                'CASE',
                'CASE'[Case] = EARLIER( 'CASE'[Case] ) && 'CASE'[Action] = "Contact Customer Service"
            )
        ),
        MAXX( __v, 'CASE'[Time_Stamp] ),
        MINX( __v, 'CASE'[Time_Stamp] )
    )

Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

View solution in original post

4 REPLIES 4
CNENFRNL
Community Champion
Community Champion

CNENFRNL_0-1655871958709.png


Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

Anonymous
Not applicable

Thanks for your answer! Yet, there is an error "A circulated dependency was detected..." now.  

 

In your file, this error is not found, but the result seems different. 😞

 

column.JPG

 

Could you kindly take another look? Much appreciated!

View Date CC = 
VAR __v =
    FILTER(
        'CASE',
        'CASE'[Case] = EARLIER( 'CASE'[Case] ) && 'CASE'[Action] = "View"
    )
RETURN
    IF(
        ISEMPTY(
            FILTER(
                'CASE',
                'CASE'[Case] = EARLIER( 'CASE'[Case] ) && 'CASE'[Action] = "Contact Customer Service"
            )
        ),
        MAXX( __v, 'CASE'[Time_Stamp] ),
        MINX( __v, 'CASE'[Time_Stamp] )
    )

Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

Anonymous
Not applicable

The 

MAXX( __v, 'CASE'[Time_Stamp] ),
        MINX( __v, 'CASE'[Time_Stamp] )

The MINX should come first and MAXX come second, but this DAX and logic work for me. Thanks again! 

Helpful resources

Announcements
March PBI video - carousel

Power BI Monthly Update - March 2025

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

March2025 Carousel

Fabric Community Update - March 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors