Forum Discussion
Create a measure with LOOKUPVALUE
- Anonymous1 year ago
Hi liselotte ,
If you create the relationship between the table 'dim_country' and 'fact_amount' base on the field [Account UID], it will return the NULL value for Cust02. Please remove the relationship just as shown in below screenshot.
Best Regards
Hi liselotte ,
I created a sample pbix file(see the attachment), please check if that is what you want.
If you don't want to create the relationships among these tables, you can create a measure as below to get it:
Measure =
VAR _custname =
SELECTEDVALUE ( 'dim_customer'[Customer Name] )
VAR _custid =
SELECTEDVALUE ( 'dim_customer'[Customer UID] )
VAR _coutryid =
SELECTEDVALUE ( 'dim_country'[Country] )
VAR _date =
SELECTEDVALUE ( 'dim_date'[Date] )
VAR _accids =
CALCULATETABLE (
VALUES ( 'dim_country'[Account UID] ),
FILTER (
'dim_country',
'dim_country'[Country] = _coutryid
&& 'dim_country'[Customer Name] = _custname
)
)
RETURN
CALCULATE (
SUM ( 'fact_amount'[Amount] ),
FILTER (
'fact_amount',
'fact_amount'[Customer UID] = _custid
&& 'fact_amount'[Date] = _date
&& 'fact_amount'[Account UID] IN _accids
)
)
If the above ones can't help you figure out, could you please provide more details(sample data, screenshot etc.) and expected result base on my sample pbix file? Thank you.
Best Regards
- liselotte1 year agoAdvocate I
Hi Rena Anonymous ,
Thank you very much for your quick response.
The problem of my data is that column Account UID in table dim_country may contain missing data as NULLs. That's why I have a relationship based on Account UID to fact table but I want to calculate based on Customer UID instead.
I modified your file to make it similar to my real data with changing an Account UID to NULL in table dim_country, making Country to be unique, and establishing the relationship as follows:
After that, the resulted visual table doesn't show a row for Cust02 which is expected to show 5172.
Your resulted table is exactly what I wanna achieve. Could you please help me with it again? Thank you very much.
- Anonymous1 year agoNot applicable
Hi liselotte ,
I updated the sample pbix file(see the attachment), please check if that is what you want. You can update the formula of measure as below to get it:
Measure = VAR _custname = SELECTEDVALUE ( 'dim_customer'[Customer Name] ) VAR _custid = SELECTEDVALUE ( 'dim_customer'[Customer UID] ) VAR _coutryid = SELECTEDVALUE ( 'dim_country'[Country] ) VAR _date = SELECTEDVALUE ( 'dim_date'[Date] ) VAR _country1 = CALCULATE(MAX('dim_country'[Country]),FILTER('dim_country','dim_country'[Customer Name]=_custname&&'dim_country'[Country]=_coutryid)) RETURN if(_country1=_coutryid, CALCULATE ( SUM ( 'fact_amount'[Amount] ), FILTER ( 'fact_amount', 'fact_amount'[Customer UID] = _custid && 'fact_amount'[Date] = _date ) ))Best Regards
- liselotte1 year agoAdvocate I
Hi Rena Anonymous ,
Thank you for your kind support. When I set up relationships as I mentioned in your provided file. The table doesn't show the Country for Country2
Could you please make it show Country02?