Skip to main content
Announcements
Qlik Connect 2025: 3 days of full immersion in data, analytics, and AI. May 13-15 | Orlando, FL: Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
stabben23
Partner - Master
Partner - Master

Problem with Join

I have a problem to do a join, my problem is this:

left_Join.png

invoiced amount is -56200, but this invoice has been payed at two different times. So when I do a left Join it will duplicate the row with amount -56200. I have try to sum(Supplier Pay_Amount_LOCAL) and group by on Invoice No before i Make my Join, but without result, what i'm I missing here?

//Stabben

10 Replies
swuehl
MVP
MVP

If i just keep the tables assosiated i will still be two lines and two amount with -56200. if I sum all transactions on this invoice it should be 0, but it doesen't. I do need this fields in the same fact table on the same aggregated level, for ex Invoice No. The whole modell is about if the supplier are due or not or if they have payed the whole amount.

Hm, I think it should work with the linked tables. Maybe your data model is different than I am assuming. Please note that the way you aggregate may influence the results (i.e. just aggregating fields from the one linked SupplierAmountLocal table should only aggregate the one line).

Here is an example of both methods, first using a linked table, second a concatenated fact table:

OUT:

LOAD * INLINE [

InvoiceNo, SupplierAmountLocal

90520783, -56200

];

IN:

LOAD * INLINE [

InvoiceNo, SupplierPayAmountLocal, Date,

90520783, 21515, 2013-09-01

90520783, 34685, 2013-09-02

];

CONCAT:

LOAD InvoiceNo,

    SupplierAmountLocal as Value,

    'OUT' as DIR

Resident OUT;

CONCATENATE

LOAD InvoiceNo,

    SupplierPayAmountLocal as Value,

    Date as Date2,

    'IN' as DIR

Resident IN;

Doing the aggregation not in the load script has the advantage that you don't lose details (i.e. the single date balances).

Check attached.