Forum Discussion
Anonymous
6 years agoNot applicable
count multiple rows together
Hi !
I have a table named ShipDetails that looks like this :
| DROP | ON_TIME_DELIVERY | ORDERED_PRODUCT |
| Client 1 - Order 1 | OK | Product 2 |
| Client 1 - Order 1 | OK | Product 4 |
| Client 2 - Order 1 | KO | Product 1 |
| Client 2 - Order 1 | KO | Product 2 |
| Client 2 - Order 1 | KO | Product 3 |
| C1 - O2 | KO | Product 3 |
| C1 - O3 | OK | Product 3 |
| C1 - O3 | OK | Product 4 |
I would like to create a measure that count the percentage of on time delivery.
In order to do that, I have to count 1 if ON-TIME_DELIVERY is "OK" and 0 if it's "KO", FOR EACH DROP (and then divide by the number of distinct drops).
It's easy to do it for each row, but, here, rows of the same drop have to be counted only as 1.
How could I do it ?
(I tried several measures like this one but it doesn't work at all : On time delivery (%) = CALCULATE(SUMX(ShipDetails,IF(ShipDetails[ON_TIME_DELIVERY]="OK",1,0)),ALLEXCEPT(ShipDetails,ShipDetails[DROP]))/DISTINCTCOUNT(ShipDetails[DROP]))
Thank you for your help,
Regards,
Marion
Hi Anonymous
Try this.
On time delivery (%) = DIVIDE( CALCULATE( DISTINCTCOUNT( ShipDetails[DROP] ), ShipDetails[ON_TIME_DELIVERY] = "OK" ), DISTINCTCOUNT ( ShipDetails[DROP] ) )Best Regards,
Mariusz
If this post helps, then please consider Accepting it as the solution.
Please feel free to connect with me.
LinkedIn
1 Reply
- MariuszCommunity Champion
Hi Anonymous
Try this.
On time delivery (%) = DIVIDE( CALCULATE( DISTINCTCOUNT( ShipDetails[DROP] ), ShipDetails[ON_TIME_DELIVERY] = "OK" ), DISTINCTCOUNT ( ShipDetails[DROP] ) )Best Regards,
Mariusz
If this post helps, then please consider Accepting it as the solution.
Please feel free to connect with me.
LinkedIn