Forum Discussion

lchaplen's avatar
lchaplen
Helper II
4 years ago
Solved

Using Dax Variables to identifying same value in multiple tables/conditions

I am trying to identify "house ID" that appear in two separate tables and then a third and only count them if the "house ID" appears in all three tables.  I am using variables and using Intersect but...
  • bcdobbs's avatar
    bcdobbs
    4 years ago

    I wrote this before you sent the diagram. See if it works. If not will study your model and have a think!

     

    Test =
    
    //Household Codes for clients with active non cash benefits.
    VAR NonCasha =
    	CALCULATETABLE(
    		VALUES( 'rpt vw_Client_Households'[Household_Code] ),
    		'rpt vw_Client_Non_Cash_Benefits'[Client_Active] = 1 
    		)
    
    //Household Codes for clients on Low Income Heating Entery Assistance.
    VAR LIHEAPa =
    	CALCULATETABLE(
    		VALUES( 'rpt vw_Client_Households'[Household_Code] ),
    		'rpt vw_Client_Programs'[Program] = "Low Income Heating Energy Assistance"
    	)
    
    //Get household codes for clients who either have active non cash benefits or are 
    // in low income energy program.
    VAR Combined_NonCash_LIHEAP = 
    	UNION(NonCasha,LIHEAPa)
    
    VAR Unique_NCandLIHEAP = 
    	DISTINCT(Combined_NonCash_LIHEAP)
    
    
    // Get household codes from employment table that were found above and are active and who do
    // have another income source and whose income type is
    // wages or self-employment.
    // Use TREATAS to switch the above list from 'rpt vw_Client_Households'[Household_Code] to 
    // 'rpt vw_Client_Household_Employment'[Household_Code]
    VAR Employ =
    	CALCULATETABLE(
    		VALUES ( 'rpt vw_Client_Household_Employment'[Household_Code] ),
    		'rpt vw_Client_Household_Employment'[Client_Active] = 1, 
    		NOT ( ISBLANK ( 'rpt vw_Client_Household_Employment'[HH_Other_Income_Source] ) ),
    		'rpt vw_Client_Household_Employment'[Income_Type] IN { "Wages", "Self-employment" }
    		TREATEAS ( Unique_NCandLIHEAP, 'rpt vw_Client_Household_Employment'[Household_Code] )
    	)
    
    
    
    RETURN COUNTROWS ( Employ )