Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello at all,
I've got the following import script:
LIB CONNECT TO 'MUCOBSPSQL001 (root_schecka)';
Auftraege:
LOAD AUFTRAG_ID AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR AS [AUF.AUFTRAG_NR],
PA_START AS [AUF.AUFTRAG_START],
PA_ENDE AS [AUF.AUFTRAG_ENDE],
PAUSEN_DAUER AS [AUF.PAUSEN_DAUER],
AUSSCHUSS_KG AS [AUF.AUSSCHUSS_KG],
ABFALL_KG AS [AUF.ABFALL_KG],
ZWEITE_WARE_KG AS [AUF.ZWEITE.WARE_KG],
PERSONEN_ANZAHL AS [AUF.PERSONEN_ANZAHL],
AUFTRAG_ZEILE AS [AUF.AUFTRAG_ZEILE],
[PA_ENDE]-[PA_START] AS [AUF.auftragsdauer]; //Berechnet die Auftragsdauer durch Ende Zeitstempel - Start Zeitstempel
[E_AUFTRAEGE]:
SELECT "AUFTRAG_ID",
"AUFTRAG_NR",
"PA_START",
"PA_ENDE",
"PAUSEN_DAUER",
"AUSSCHUSS_KG",
"ABFALL_KG",
"ZWEITE_WARE_KG",
"PERSONEN_ANZAHL",
"AUFTRAG_ZEILE"
FROM "qlik_importer_db".dbo."E_AUFTRAEGE";
LIB CONNECT TO 'MUCOBSPSQL001 (root_schecka)';
Kisten:
LOAD KISTE_BRUTTO_KG AS [KIS.KISTE_BRUTTO_KG],
AUFTRAG_ID_ZIEL AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR_ZIEL AS [KIS.AUFTRAG_NR_ZIEL];
[E_KISTEN]:
SELECT "KISTE_BRUTTO_KG",
"AUFTRAG_ID_ZIEL",
"AUFTRAG_NR_ZIEL"
FROM "qlik_importer_db".dbo."E_KISTEN";
Here I make a calculation with two table fields: [PA_ENDE]-[PA_START] AS [AUF.auftragsdauer];
How can I make a calculation like this, with two or more table fields, which are on different tables?
("AUSSCHUSS_KG",
"ABFALL_KG",
"ZWEITE_WARE_KG",
and
"KISTE_BRUTTO_KG")
Thanks for help
Alex
If you want to do this in script, then try like this. The only risk is that you have to make sure both table have a 1:1 association (a 1:M or M:1) association will create issues.
LIB CONNECT TO 'MUCOBSPSQL001 (root_schecka)';
[E_AUFTRAEGE]:
LOAD
num(trim(AUFTRAG_ID)) AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR AS [AUF.AUFTRAG_NR],
PA_START AS [AUF.AUFTRAG_START],
PA_ENDE AS [AUF.AUFTRAG_ENDE],
PAUSEN_DAUER AS [AUF.PAUSEN_DAUER],
AUSSCHUSS_KG AS [AUF.AUSSCHUSS_KG],
ABFALL_KG AS [AUF.ABFALL_KG],
ZWEITE_WARE_KG AS [AUF.ZWEITE.WARE_KG],
PERSONEN_ANZAHL AS [AUF.PERSONEN_ANZAHL],
AUFTRAG_ZEILE AS [AUF.AUFTRAG_ZEILE],
[PA_ENDE]-[PA_START] AS [AUF.auftragsdauer]; //Berechnet die Auftragsdauer durch Ende Zeitstempel - Start Zeitstempel
SELECT "AUFTRAG_ID",
"AUFTRAG_NR",
"PA_START",
"PA_ENDE",
"PAUSEN_DAUER",
"AUSSCHUSS_KG",
"ABFALL_KG",
"ZWEITE_WARE_KG",
"PERSONEN_ANZAHL",
"AUFTRAG_ZEILE"
FROM "qlik_importer_db".dbo."E_AUFTRAEGE";
join ( [E_AUFTRAEGE] ) //You can use left,right or inner join based on your data
[E_KISTEN]:
LOAD
KISTE_BRUTTO_KG AS [KIS.KISTE_BRUTTO_KG],
num(trim(AUFTRAG_ID_ZIEL)) AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR_ZIEL AS [KIS.AUFTRAG_NR_ZIEL];
SELECT "KISTE_BRUTTO_KG",
"AUFTRAG_ID_ZIEL",
"AUFTRAG_NR_ZIEL"
FROM "qlik_importer_db".dbo."E_KISTEN";
Noconcatenate
Mastertable:
Load *,
[KIS.KISTE_BRUTTO_KG] + [AUF.ZWEITE.WARE_KG] as NewCalculatedField
resident [E_AUFTRAEGE];
Drop table [E_AUFTRAEGE];
Hi Alex,
If you want to make the calculations in the script, then you will have to join these tables and make it as one table based on the keys or you will have to make a bridge table between these tables and gets these fields into bridge table and do the calculation.
If you cannot join the tables and only a simply association is the only possibility, then you will have to do this calculations in the front end directly (fields from different table)
Hi KC,
Thank you for the answer. I tried to join the to tables, but this won't work.
(See Screenshot)
How can I make a bridge table for the calculation?
Thank you for your help.
regards Alex
Hi,
Can you please share a snapshot of your data model.
Also try the expression like this:
Aggr(sum("KISTE_BRUTTO_KG"),[auftrag_id]) //the same goes for other fields
Hi, here is a screenshot of my data model:
I also tried your suggested expression with this result:
Thank you for your help.
regards Alex
Try this, It seems the key are not matching because of format issue:
LIB CONNECT TO 'MUCOBSPSQL001 (root_schecka)';
Auftraege:
LOAD
num(trim(AUFTRAG_ID)) AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR AS [AUF.AUFTRAG_NR],
PA_START AS [AUF.AUFTRAG_START],
PA_ENDE AS [AUF.AUFTRAG_ENDE],
PAUSEN_DAUER AS [AUF.PAUSEN_DAUER],
AUSSCHUSS_KG AS [AUF.AUSSCHUSS_KG],
ABFALL_KG AS [AUF.ABFALL_KG],
ZWEITE_WARE_KG AS [AUF.ZWEITE.WARE_KG],
PERSONEN_ANZAHL AS [AUF.PERSONEN_ANZAHL],
AUFTRAG_ZEILE AS [AUF.AUFTRAG_ZEILE],
[PA_ENDE]-[PA_START] AS [AUF.auftragsdauer]; //Berechnet die Auftragsdauer durch Ende Zeitstempel - Start Zeitstempel
[E_AUFTRAEGE]:
SELECT "AUFTRAG_ID",
"AUFTRAG_NR",
"PA_START",
"PA_ENDE",
"PAUSEN_DAUER",
"AUSSCHUSS_KG",
"ABFALL_KG",
"ZWEITE_WARE_KG",
"PERSONEN_ANZAHL",
"AUFTRAG_ZEILE"
FROM "qlik_importer_db".dbo."E_AUFTRAEGE";
LIB CONNECT TO 'MUCOBSPSQL001 (root_schecka)';
Kisten:
LOAD
KISTE_BRUTTO_KG AS [KIS.KISTE_BRUTTO_KG],
num(trim(AUFTRAG_ID_ZIEL)) AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR_ZIEL AS [KIS.AUFTRAG_NR_ZIEL];
[E_KISTEN]:
SELECT "KISTE_BRUTTO_KG",
"AUFTRAG_ID_ZIEL",
"AUFTRAG_NR_ZIEL"
FROM "qlik_importer_db".dbo."E_KISTEN";
Now I have this result:
But, how can I make a calculation with fields of both tables?
I need the calculation in the import script. Is it possible to combine the to tables for a calculation?
If you want to do this in script, then try like this. The only risk is that you have to make sure both table have a 1:1 association (a 1:M or M:1) association will create issues.
LIB CONNECT TO 'MUCOBSPSQL001 (root_schecka)';
[E_AUFTRAEGE]:
LOAD
num(trim(AUFTRAG_ID)) AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR AS [AUF.AUFTRAG_NR],
PA_START AS [AUF.AUFTRAG_START],
PA_ENDE AS [AUF.AUFTRAG_ENDE],
PAUSEN_DAUER AS [AUF.PAUSEN_DAUER],
AUSSCHUSS_KG AS [AUF.AUSSCHUSS_KG],
ABFALL_KG AS [AUF.ABFALL_KG],
ZWEITE_WARE_KG AS [AUF.ZWEITE.WARE_KG],
PERSONEN_ANZAHL AS [AUF.PERSONEN_ANZAHL],
AUFTRAG_ZEILE AS [AUF.AUFTRAG_ZEILE],
[PA_ENDE]-[PA_START] AS [AUF.auftragsdauer]; //Berechnet die Auftragsdauer durch Ende Zeitstempel - Start Zeitstempel
SELECT "AUFTRAG_ID",
"AUFTRAG_NR",
"PA_START",
"PA_ENDE",
"PAUSEN_DAUER",
"AUSSCHUSS_KG",
"ABFALL_KG",
"ZWEITE_WARE_KG",
"PERSONEN_ANZAHL",
"AUFTRAG_ZEILE"
FROM "qlik_importer_db".dbo."E_AUFTRAEGE";
join ( [E_AUFTRAEGE] ) //You can use left,right or inner join based on your data
[E_KISTEN]:
LOAD
KISTE_BRUTTO_KG AS [KIS.KISTE_BRUTTO_KG],
num(trim(AUFTRAG_ID_ZIEL)) AS [auftrag_id], //Verknüpfung mit anderen Tabelle über Auftrags ID
AUFTRAG_NR_ZIEL AS [KIS.AUFTRAG_NR_ZIEL];
SELECT "KISTE_BRUTTO_KG",
"AUFTRAG_ID_ZIEL",
"AUFTRAG_NR_ZIEL"
FROM "qlik_importer_db".dbo."E_KISTEN";
Noconcatenate
Mastertable:
Load *,
[KIS.KISTE_BRUTTO_KG] + [AUF.ZWEITE.WARE_KG] as NewCalculatedField
resident [E_AUFTRAEGE];
Drop table [E_AUFTRAEGE];
You can also add two fields on the frontend as well.
Measure = sum([KIS.KISTE_BRUTTO_KG] )+ sum([AUF.ZWEITE.WARE_KG] )
Hey, I think with this variant it will work as I thought it would.
Thank you very much for your help.
regards Alex