Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Guten Tag und Hallo liebe Qlik Gemeinde,
ich wende mich mit einem Problem an euch, mit der Bitte um Rückmeldung.
Ziel:
Ich möchte aus einer Tabelle den Preisverlauf mehrerer Artikel vergleichen, und daraus eine Ergebnis errechnen, ob ich gespart od. mehr gezahlt habe. Dazu soll der Preis 2013 alle Selektionen zur Zeit ignorieren. Ebenso soll es sich für 2014 verhalten.
Der Preisvergleich soll in QV in einer Tabelle enstehen:
Artikel | Preis 2013 | Preis 2014 |
---|---|---|
XYZ | 1000 | 950 |
Datenbestand:
Aus SAP habe ich mir zwei tabelle geladen, die ich in zwei QVD umwandle.
Die eine Tabelle beinhaltet alle Daten aus 2013
die andere beinhaltet alle Daten aus 2014.
Diese könnte ich theoretisch "concat." da Aufbau / Struktur / usw. alles gleich, jedoch dann weiß ich nicht wie ich dem Feld 2013 mitgebe das er die Selektion ignorieren soll, das gleiche gilt für 2014-
Geholfen habe ich mir mit einem QUALIFY befehlt, jedoch finde ich die Lösung unsauber.
Da ich denke mit einem sum(setyear=2031), Preis) sollte es doch auch irgendwie gehen,
Danke im Voraus.
Gruss Michael
Grüß Dich Michael,
kannst Du die Tabellen nicht joinen (also quasi nebeneinander zampappen)? Es müsste doch irgendein ID-Feld geben, das in beiden Tabellen gleich ist - QlikView benutzt beim joinen automatisch das Feld/ die Felder, die gleich heißen -> Du solltest also etwas mit der AS-Fkt. arbeiten, damit idealerweise nur auf einem Feld gejoint wird, sonst kostet das unnötig Performance.
HTH
Gruß,
DataNibbler
Hallo Michael,
ich denke Du solltest die beiden Tabellen aneinander hängen (concatenate) und die gewünschte Information über einen zusätzlichen Load generieren, probier mal:
SAP_Table:
Load *, Artikel & '|' Jahr as KeyPreis From SAP_201*;
Preisentwicklung:
Load KeyPreis, concat(Preis, ' --> ', Datum) as Preisentwicklung Resident SAP_Table Group By KeyPreis;
Schöne Grüße
Marcus
Vielen Dank für die Antworten
Also wenn ich die Dateien lade verbinde ich diese über die Artikel Nr. das ist mir schon klar.
Wenn ich mit QUALIFY Befehl lade kann ich auch ein FELD 2013 Preis generieren.
Jedoch will ich eigentlich nicht zwei TAb. haben, sondern am besten wäre eine Tabelle und an der Oberfläche gebe ich mit das dass Feld erzeugte Feld: Preis 2013 nur die WErte für 2013 wiedergibt.
Hallo Michael,
ich meinte auch nur eine einzige Faktentabelle ohne Qualify und mit einer angehangenen Dimensions-Tabelle der Preisentwicklung. Du kannst concat(Preis, ' --> ', Datum) auch selbst als Formel in einer Pivot mit den Dimensionen Artikel und Jahr verwenden - ich persönlich mache ähnliches aber meist im Script.
Schöne Grüße
Marcus
Danke euch.
Habe es mit folgendem Befehl gemacht:
sum( {1<Jahr={2013}>} [Betrag Hauswähr])
D.h. SetAnalysis sei dank
Das ist aber nicht wirklich die Abbildung eines Preisverlaufes, sondern die Summe des Preises eines ausgewählten Jahres, sofern es hierfür mehrere Datensätze gibt, passt das nicht mehr.