Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
Sebx
Regular Visitor

Sum values which are not in another table

Hello,

 

I have datamodel with two tables - table with sales (id, amount) and second table with incorrect payments (id, reason). Tables are connected by relationship on Id in both tables (in other words sales table contains all ids and incorrect payments has some ids from sales). I want to create sum of amounts from sales table, with excluded payments from incorrect payments table.

 

I know that I could make join in powerquery, but I would like to use measure instead. I have tried something like below, but it didn't work. Any ideas?

 

CALCULATE(SUM('sales'[amount]),ISBLANK('incorrect payments'[Id]))

 

Thank you

1 ACCEPTED SOLUTION
Anonymous
Not applicable

I made 2 dummy tables to replicate the story you have provided. This essentially lets you search sum the Sales[Amount] by filtering out rows where the Sales ID exists in the Incorrect Payments table.

Sales

Sales IDAmount

1

$50
2$100
3$150
4$100
5$250
6$100
7$150
8$110
9$125
10$108

 

Incorrect Payment

Sales IDReason
4Declined Payment
8Invalid Payment Method
9Declined Payment
10Duplicate Payment

 

 

 

 

Sales Excluding Failed Payment = 
VAR _VariableTable =
    CALCULATETABLE (
        VALUES ( 'Incorrect Payments'[Sales ID] ),
        ALLSELECTED ( 'Incorrect Payments' )
    )
    
RETURN
    SUMX (
        FILTER ( ALLSELECTED ( Sales ), NOT ( Sales[Sales ID] ) IN _VariableTable ),
        Sales[Amount]
    )

 

 

 

 

transform99_0-1669940014464.png

 

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

I made 2 dummy tables to replicate the story you have provided. This essentially lets you search sum the Sales[Amount] by filtering out rows where the Sales ID exists in the Incorrect Payments table.

Sales

Sales IDAmount

1

$50
2$100
3$150
4$100
5$250
6$100
7$150
8$110
9$125
10$108

 

Incorrect Payment

Sales IDReason
4Declined Payment
8Invalid Payment Method
9Declined Payment
10Duplicate Payment

 

 

 

 

Sales Excluding Failed Payment = 
VAR _VariableTable =
    CALCULATETABLE (
        VALUES ( 'Incorrect Payments'[Sales ID] ),
        ALLSELECTED ( 'Incorrect Payments' )
    )
    
RETURN
    SUMX (
        FILTER ( ALLSELECTED ( Sales ), NOT ( Sales[Sales ID] ) IN _VariableTable ),
        Sales[Amount]
    )

 

 

 

 

transform99_0-1669940014464.png

 

That's exactly what I needed! Thank you so much!

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

Find out what's new and trending in the Fabric community.