Forum Discussion

mocha911's avatar
mocha911
Frequent Visitor
2 years ago
Solved

Flag multiple actions in same day

Hi All,

 

I have tried to figure out this problem but have no success, hope someone can lend me their expertise in this problem. Thanks!

 

The problem-

If action "Sign Up" and (phone or email) happen in the same day, then show the flag for that member as 1, otherwise 0.

 

Data -

 

ClientDateAction
A1/01/2024Phone
A1/01/2024Email
A1/01/2024Sign up
A2/01/2024Phone
B1/01/2024Sign up
B2/01/2024Phone
C3/01/2024Phone
C3/01/2024Email
C4/01/2024Sign Up

 

Expected result -

Resulthave sign up and (email or phone) in same day
A1
B0
C0

 

A has sign up and phone/email on same day. 
B and C don't have the sign up in the same day as phone/email.

 

Thank you again in advance for all the assistance. 

  • Hi,

    I am not sure how your semantic model looks like, but I tried to create a sample pbix file like below.

    Please check the below picture and the attached pbix file.

    It is for creating a measure.

     

     

     

     

    expected result measure: =
    VAR _t =
        FILTER ( Data, Data[Action] = "Sign up" )
    VAR _signupdatelist =
        SUMMARIZE ( FILTER ( Data, Data[Action] = "Sign up" ), Data[Date] )
    VAR _condition =
        COUNTROWS (
            FILTER (
                Data,
                Data[Date]
                    IN _signupdatelist
                        && Data[Action] IN { "Phone", "Email" }
            )
        ) > 0
    RETURN
        IF ( _condition && HASONEVALUE ( Client[Client] ), 1, 0 )
    

     

2 Replies

  • Hi,

    I am not sure how your semantic model looks like, but I tried to create a sample pbix file like below.

    Please check the below picture and the attached pbix file.

    It is for creating a measure.

     

     

     

     

    expected result measure: =
    VAR _t =
        FILTER ( Data, Data[Action] = "Sign up" )
    VAR _signupdatelist =
        SUMMARIZE ( FILTER ( Data, Data[Action] = "Sign up" ), Data[Date] )
    VAR _condition =
        COUNTROWS (
            FILTER (
                Data,
                Data[Date]
                    IN _signupdatelist
                        && Data[Action] IN { "Phone", "Email" }
            )
        ) > 0
    RETURN
        IF ( _condition && HASONEVALUE ( Client[Client] ), 1, 0 )
    

     

    • mocha911's avatar
      mocha911
      Frequent Visitor

      Thanks Jihwan_Kim !!!!!

      You are a magician and life saver! Thank you so much. This works wonderfully.