Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
buc_christian
Partner - Contributor III
Partner - Contributor III

Vorgänger Nachfolger Beziehung

Liebe Community,

könnt Ihr mir bei folgendem Problem helfen?

Meine Grunddaten sehen von der Struktur her so aus.

Maschine     Vorgänger     Menge     Zeitpunkt

A                                             10          1.1.2014

B                         A                    8          2.1.2014

C                         B                    7          3.1.2014

Dann mache ich die Auswahl auf Maschine C und mein Balkendiagramm soll folgendes Anzeigen (x Achse ist Zeit und Y Achse Menge):

1. Balken: Menge von C (das ist einfach, sum(Menge) also = 7)

2. Balken: Menge vom Vorgänger von C (in dem Fall wäre das die Maschine B, also =8)

Den 2. Balken bekomme ich nicht hin, sum(if ....) macht hier glaube ich keinen Sinn, weil ich ja nicht nur den Vorgänger ausweisen will, sondern die Menge und den Zeitpunkt.


Hat da vielleicht jemand eine Idee für mich?

Lieben Dank schon mal.

Chris

1 Solution

Accepted Solutions
buc_christian
Partner - Contributor III
Partner - Contributor III
Author

Hallo Community,

da sich keine neue Antwort mehr gegebn hat, habe ich weiter dran getüftelt und das Problem gelöst (falls es jemanden interessiert 😞

Ich habe den Datensatz einfach im Skript 2 mal reingeladen, das 2. mal nur mit den benötigten 3 Informationen. Durch die neue Tabelle kann ich zu vormals einer Zeile 2 unterschiedliche Zeitstempel verarbeiten.

Chris

View solution in original post

7 Replies
Gysbert_Wassenaar

Daten:

Load

     Machine,

     Vorgänger,

     Menge,

     Previous(Menge) as MengeVorgänger,

     Zeitpunkt

     Previous(Zeitpunkt) as ZeitpunktVorgänger

From .... etc;


talk is cheap, supply exceeds demand
buc_christian
Partner - Contributor III
Partner - Contributor III
Author

Hi Gysbert,

danke für die schnelle Antwort.

Zu Deiner Lösungsidee habe ich 2 Fragen.

Mein Datensatz sieht eigentlich etwas erweitert so aus

Maschine     Vorgänger     Menge     Zeitpunkt     Auftrag

A                           -                  10          1.1.2014     4711
B                         A                    8          2.1.2014     4711

C                         B                    7          3.1.2014     4711

A                         -                     12            8.1.2014     4812

B                         A                      11          9.1.2014     4812
C

...

usw.

Bei Deinem Lösungsvorschlag, hat Maschine A auch immer einen Vorgänger, was ja aber eigentlich nicht stimmt, da es ein anderer Auftrag ist.

Die zweite Frage ist, ob die Sortierreihenfolge der Grunddatei wichtig ist, oder ob man QV auch automatisch über die Auftragsnummer (hier 4711 und 4812) die Vorgänger <> Nachfolger Beziehung prüfen lassen kann. Z.B. mittels einer Laufenden-Nummer je Auftrag?

Danke für Deine Hilfe!

Chris

Gysbert_Wassenaar

Den Auftrag kann geprüft werden:

Daten:

Load

     Machine,

     Vorgänger,

     Menge,

     if(Auftrag=previous(Auftrag),Previous(Menge)) as MengeVorgänger,

     Zeitpunkt

     if(Auftrag=previous(Auftrag),Previous(Zeitpunkt)) as ZeitpunktVorgänger

From .... etc;

Die Sortierreihenfolge is wichting. Die Sortierreihenfolge wird am besten in den Grunddatie erstellt, aber es ist auch möglich sie zu korrigieren in Qlikview mit Order By.


talk is cheap, supply exceeds demand
buc_christian
Partner - Contributor III
Partner - Contributor III
Author

Hi Gysbert,

danke, dass hat schon mal gut funktioniert!

Eine Frage habe ich aber dennoch offen:

Jetzt habe ich die Daten wie gewünscht im QV drin. Aber mein 2. Balken, wie mache ich den.

Mit Sum(MengeVorgänger) habe ich die Menge des Vorgängers, diese soll aber zum ZeitpunktVorgänger als Balken erscheinen. wenn ich nur Sum(...) mache, dann habe ich zwar die beiden Mengen, aber nicht die beiden Zeitpunkte.

Hast Du dafür auch eine Idee?

Lieben Dank,

Chris

Gysbert_Wassenaar

Wie soll das Ergebnis aussehen?


talk is cheap, supply exceeds demand
buc_christian
Partner - Contributor III
Partner - Contributor III
Author

Hi Gysbert,

anbei: so sollte es aussehen, nur das die Blaue Linie Menge.Vorgänger nach links verschoben sein sollte. Nämlich auf dem Zeitpunkt.Vorgänger.

Ich habe das mal mit Sum({<Zeitpunkt(KW)={$(Zeitpunkt.Vorgänger(KW)}, Menge.Vorgänger) , aber das funktioniert leider nicht.

Hast Du eine Idee?

Danke,

Chris

buc_christian
Partner - Contributor III
Partner - Contributor III
Author

Hallo Community,

da sich keine neue Antwort mehr gegebn hat, habe ich weiter dran getüftelt und das Problem gelöst (falls es jemanden interessiert 😞

Ich habe den Datensatz einfach im Skript 2 mal reingeladen, das 2. mal nur mit den benötigten 3 Informationen. Durch die neue Tabelle kann ich zu vormals einer Zeile 2 unterschiedliche Zeitstempel verarbeiten.

Chris