Qlik Community

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

cancel
Showing results for 
Search instead for 
Did you mean: 
shawnklar
Contributor III
Contributor III

Only recent data show (by date) - Nur neuesten Datensatz zeigen (nach Datum)

Hello There,

I have a problem and I remember this time absolutely nothing a:

I have a file with multiple contracts. The contracts have a maturity date (LaufzeitBis) and among others a version of the (also a date).

I can select a specific contract with maturity date with YEAR, MONTH and DAY. (z. B .: All contracts with maturity date 31.12.2015).

Then I get:

Contract Period Date Version

1 31.12.2015 04.01.2015

1 31.12.2015 06.07.2015

1 31.12.2015 17.06.2015

I want now but displayed only the last (latest) version of get (ie from 17.06.2015), all others are not to be displayed.

This should be done more or less automatically, without further manual selection, since later a killer table with contracts is read.

Does anyone have a good idea?

greeting

Peter

Translated with Google Translate - Qlik Community Administrative Team

Hallo,

ich habe ein Problem und mir fällt diesmal absolut nichts ein:

Ich habe eine Datei mit mehreren Verträgen. Die Verträge haben ein Laufzeitdatum (LaufzeitBis) und unter anderem eine Version vom (ebenfalls ein Datum).

Ich kann mit YEAR, MONTH und DAY einen bestimmten Vertrag mit Laufzeitdatum selektieren. (z. B.: alle Verträge mit Laufzeitdatum 31.12.2015).

Dann bekomme ich:

Vertrag  Laufzeitdatum  Version

1               31.12.2015     01.04.2015

1               31.12.2015     07.06.2015

1               31.12.2015     17.06.2015

Ich möchte jetzt aber nur die letzte (aktuellste) Version angezeigt bekommen (also die vom 17.06.2015), alle anderen sollen nicht angezeigt werden.

Das soll quasi automatisch ohne nochmalige manuelle Selektion erfolgen, da später eine Mördertabelle mit Verträgen eingelesen wird.

Hat jemand eine gute Idee?

Gruß

Peter

1 Solution

Accepted Solutions
swuehl
MVP
MVP

Hab vielleicht noch eine einfachere Lösung gefunden:

INPUT:

LOAD KundeNr & Vertrag as Key,

  KundeNr,

     Vertrag,

     LieferungVon,

     Day(LieferungVon) as Tagvon,

     Month(LieferungVon) as Monatvon,

     Year(LieferungVon) as Jahrvon,

     LieferungBis,

     Day(LieferungBis) as Tagbis,

     Month(LieferungBis) as Monatbis,

     Year(LieferungBis) as Jahrbis,

     Wert,

     Version

FROM

Test.xlsx

(ooxml, embedded labels, table is Tabelle1)

;

LOAD *, Key as KeyChecked RESIDENT INPUT

WHERE NOT EXISTS(KeyChecked, Key)

ORDER BY KundeNr, Vertrag, Version desc

;

DROP TABLE INPUT;

View solution in original post

10 Replies
swuehl
MVP
MVP

Mir ist nicht ganz klar, was du genau willst.

Nach Selektion von Vertrag und Laufzeitdatum sollte

=Date(max(Version))

dir die letzte Version liefern.

alexandros17
Partner
Partner

You should do (in the script) something like

Load

...

Max(Version)

From

...

Where

...

Group by Laufzeitdatum

swuehl
MVP
MVP

Du willst das schon im Ladeskript filtern? Dann ähnlich wie von Alessandro vorgeschlagen, nur würde ich nach Vertrag (und Laufzeitdatum?) gruppieren:

LOAD

     Vertrag,

     Laufzeitdatum,

     Date(max(Version)) as Version,

     FirstSortedValue(WeiteresFeld, -Version) as WeiteresFeld,

     ...

FROM YourTableSource

GROUP BY Vertrag, Laufzeitdatum;

shawnklar
Contributor III
Contributor III
Author

Ich hänge die Testdatei mal an.

Vielleicht wird es dann etwas verständlicher.

Mit dem =Date(max(Version)) hatte ich es schon probiert, aber vielleicht habe ich den Befehl an einem völlig falschen Ende eingebaut.

shawnklar
Contributor III
Contributor III
Author

Kann man hier nichts hochladen?

Ich habe es noch nie gemacht, aber mir wird diese Gruppe nicht als Empfänger angeboten....

swuehl
MVP
MVP

Einfach den letzten Post editieren, dann sollte man direkt im 'advanced editor' landen, der hat rechts unten einen Button um Attachments anzuhängen. Oder den Link oben rechts im Editorfenster benutzen, um vom 'einfachen' Editor zum 'advanced' Editor zu gelangen.

shawnklar
Contributor III
Contributor III
Author

So, habe die beiden Dateien mal hochgeladen.

Ich bekam gestern hier im Forum nur Fehlermeldungen und sollte mich andauernd neu anmelden.

Eure Lösung hatte ich mal ausprobiert, aber es kam dauernd ein Fehler hoch.

Ich habe sie aus dem Dokument (dem Hochgeladenen) wieder entfernt.

So ganz scheine ich das noch nicht verstanden zu haben.

Peter

shawnklar
Contributor III
Contributor III
Author

Ich bekomme immer die Fehlermeldung "Invalid expression".

swuehl
MVP
MVP

Hab vielleicht noch eine einfachere Lösung gefunden:

INPUT:

LOAD KundeNr & Vertrag as Key,

  KundeNr,

     Vertrag,

     LieferungVon,

     Day(LieferungVon) as Tagvon,

     Month(LieferungVon) as Monatvon,

     Year(LieferungVon) as Jahrvon,

     LieferungBis,

     Day(LieferungBis) as Tagbis,

     Month(LieferungBis) as Monatbis,

     Year(LieferungBis) as Jahrbis,

     Wert,

     Version

FROM

Test.xlsx

(ooxml, embedded labels, table is Tabelle1)

;

LOAD *, Key as KeyChecked RESIDENT INPUT

WHERE NOT EXISTS(KeyChecked, Key)

ORDER BY KundeNr, Vertrag, Version desc

;

DROP TABLE INPUT;

View solution in original post