cancel
Showing results for
Did you mean:
Frequent Visitor

## RELATEDTABLE and distinct

HI,
I need some help here.

I have a simple powerbi model with 2 tables, Product and Sales.

The Sales table has fields: OrderNo, LineNo, ProductKey , Qty, etc
The Product table has ProductKey, ProductName, Description.

There is a 1 to Many relationship between Product and Sales table.

Now, On the Product table, in powerBI, i want to have a calculated Column called NumberofOrders.
NumberofOrders is the distinct count orders in which the product has been sold. Remeber a Product may appear more than one line items within an order, hence only the distinct count of orders.

How can i achieve this? I know we need to use RELATEDTABLE.

I am trying something like

=COUNTROWS(distinct(RELATEDTABLE(FactInternetSales)))

but this doesn't work/

Hww do i use a distinct in this case?
thanks

1 ACCEPTED SOLUTION
Resolver V

Hi @msprog,

you can use following DAX:

``NumberOfOrders = CALCULATE(DISTINCTCOUNT(sales[OrderNo]), RELATEDTABLE(sales))``
2 REPLIES 2
Resolver V

Hi @msprog,

you can use following DAX:

``NumberOfOrders = CALCULATE(DISTINCTCOUNT(sales[OrderNo]), RELATEDTABLE(sales))``
Frequent Visitor

Hi @vik0810

I have a followup question on this if it is ok.

``NumberOfOrders = CALCULATE(DISTINCTCOUNT(sales[OrderNo]), RELATEDTABLE(sales))``

The solution works fine but as i am reading more about PowerBI , a question arose  on the use of RelatedTable function in this solution, which i am hoping the  you/community can help clarify.  I am wondering why the below code is not working:

NumberOfOrders = CALCULATE(DISTINCTCOUNT(sales[OrderNo]), sales)

why do we need the RelatedTable when we are using Calculate?

THis is my thinking:

I read that the Calculate function converts Row into a filter context and the filter context filters the whole model based on the realtionships.  So we have a 1 to many relationship between Product and Sales.  we are creating a calculated column in Product.  So there is a row context.  Now the use of Calculate should convert the row context into filter, which means the Sales table should get filtered, automatically?  Please help clarify

thanks

Announcements

#### 2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

#### Microsoft named a Leader in The Forrester Wave

Microsoft received the highest score of any vendor in both the strategy and current offering categories.

#### Microsoft Dynamics 365 & Power Platform User Professionals

DynamicsCon is a FREE, 4 half-day virtual learning experience for 11,000+ Microsoft Business Application users and professionals.

Top Solution Authors
Top Kudoed Authors