Filter Vergleich zweier Spalten

23. Oktober 2008 14:10

Hallo und guten Tag.

Ich will mit Hilfe eines Filters zwei Datumsspalten einer Liste vergleichen. Ist das Datum in der zweiten Spalte kleiner 1.Spalte dann zeige an, sonst nicht.

Leider finde ich keine Möglichkeit bei der Eingabe der Filterkriterien hier auch eine Spalte einzugeben.

Kennt jemand eine Möglichkeit?

Vielen Dank
Peter

Re: Filter Vergleich zweier Spalten

23. Oktober 2008 14:25

Hi Peter!

trading2007 hat geschrieben:Leider finde ich keine Möglichkeit bei der Eingabe der Filterkriterien hier auch eine Spalte einzugeben. Kennt jemand eine Möglichkeit?

Da muss programmiert und mit Satzmarkierungen gearbeitet werden.

Code:
WITH Record DO BEGIN
  RESET;
  IF FINDSET THEN BEGIN
    REPEAT
      MARK := ("Col 2" < "Col 1")
    UNTIL NEXT = 0;

    MARKEDONLY := TRUE;
  END;
END;

Gruß, Marc

Re: Filter Vergleich zweier Spalten

23. Oktober 2008 14:28

@ Marc

Danke, aber gerade das will ich nicht. Im Controlling musst du immer wieder mal verschiedene Vergleiche anstellen. Da will ich nicht jedesmal programmieren.
Eigentlich schade, das NAV nicht mal diese grundlegenden Sachen beherrscht.

Danke nochmals für deine Mühen
Gruß Peter

Re: Filter Vergleich zweier Spalten

23. Oktober 2008 15:11

Wenn ihr mit dem SQL-Server arbeitet, könnt ihr euch dort eine Sicht mit eben einem solchen Filter erstellen und das Ergebnis dieses Views in NAV verwenden.

Re: Filter Vergleich zweier Spalten

23. Oktober 2008 15:19

Ebenfalls möglich,bei beiden Servertypen, falls NAV Filtermöglichkeiten nicht ausreichen :
Forms können nach Excel exportiert werden (in Version 5 sogar Matrixforms wie Budget o.ä.), und dann mit den Excelformeln weiterverarbeitet werden.
Berichte können als HTML gespeichert und in Excel importiert werden.

Als "grundlegend" würde ich solche Filter aber nicht bezeichnen. Welches ERP-System kann das denn von Haus aus ?

Re: Filter Vergleich zweier Spalten

23. Oktober 2008 15:20

Hallo,

man könnte noch folgendes Versuchen:

Füge in die Tabelle mit beiden Datumsfeldern ein zusätzliches Feld Datumsdifferenz ein, das über einen Trigger mit der Differenz aus Datum1 und Datum2 gefüllt wird. Es genügt dann ein Filter auf ">0" um die gewünschten Zeilen zu selektiren.
Alternativ kann das Feld auch als Boolean 'Datum2 kleiner" deklariert werden, der durch den Trigger berechnet wird. Dann genügt ein einfacher Ja/Nein Filter in dieser Spalte.

Gruß

Re: Filter Vergleich zweier Spalten

23. Oktober 2008 16:11

fiddi hat geschrieben:Füge in die Tabelle mit beiden Datumsfeldern ein zusätzliches Feld Datumsdifferenz ein, das über einen Trigger mit der Differenz aus Datum1 und Datum2 gefüllt wird. Es genügt dann ein Filter auf ">0" um die gewünschten Zeilen zu selektiren.
Das wäre die eleganteste Methode, da damit sogar direkt die Datumsdifferenz gefiltert werden könnte (z. B. Differenz=7 für alles, was genau 7 Tage auseinander liegt).

fiddi hat geschrieben:Alternativ kann das Feld auch als Boolean 'Datum2 kleiner" deklariert werden, der durch den Trigger berechnet wird. Dann genügt ein einfacher Ja/Nein Filter in dieser Spalte.
Ein Boolean kann leider nur zwei Werte darstellen, ein Datumsvergleich jedoch drei Ergebnisse liefern:
Datum1 < Datum2
Datum1 = Datum2
Datum1 > Datum2

Somit wäre die Lösung mit dem Differenzfeld die (meiner Meinung nach) eleganteste bisher vorgeschlagene Lösung. (s.o.)