PDA

View Full Version : Query/400 Frage



xcut
24-08-01, 08:53
Hallo...
Ich bin noch am lernen was die AS/400 angeht. Kann mir einer mal eine Frage zu Query beantworten?
Ich habe eine Datei in der z.B. das Feld Auftragsdatumstag steht. Dieses besteht aus 2 Stellen. In der Abfrage muss ich jeden Tag das Datum manuell auf das aktuelle Tagesdatum umstellen. Gibt es eine Lösung?
Ich habe versucht ein Ergebnissfeld zu definieren: AKTDAT CUERRENT(DATE)
Dann hat das Feld AKTDAT das aktuelle Datum. Nun dachte ich, ich könnte mit SUBSTR die ersten beiden Zahlen herauszeiehen und daraus ein neues Feld erzeugen das den aktuellen Tag ausgibt. Ich komm hier aber nicht weiter. Wer kann helfen?

mfg

XCUT

Fuerchau
24-08-01, 09:06
SUBSTR(DIGITS(CURRENT DATE), 1, 2)

zu beachten ist, dass das Datum im Job-Format dargestellt wird (z.B. *DMY = TT.MM.JJ)

oder

DAY(CURRENT DATE)

enthält nur den Tag.

[Dieser Beitrag wurde von Fuerchau am 24. August 2001 editiert.]

xcut
24-08-01, 09:13
Hallo...
Wenn ich das so eingebe:
SUBSTR(DIGITS(CURRENT DATE), 1, 2)

Die Klammer passt nicht mehr in die erste Zeile

dann bekomme ich die Fehlermeldung:Ausdruck nicht korrekt; Der Positionsanzeiger steht auf dem Fehler. Und der Cursor steht auf dem D von DATE.

Stefan_R
24-08-01, 09:14
Du hast doch sicher das Auftragsdatum!(ich gehe mal von 8-Stellig JJJJ/MM/TT aus.)

1. Du definierst folgende Ergebnisfelder:

AKTDAT char(current(date),iso)
DAT digits("Dein Auftragsdatum")
DAY substr(dat, 7, 2)
MM substr(dat, 5, 2)
JJ substr(dat, 1, 4)
DATE jj !! '-' !! mm !! '-' !! day

2. Sätze auswählen:
AKTDAT EQ date


und schon funktioniert's

Gruss Stefan

schreibr
24-08-01, 13:08
Oder ganz einfach in den Ergebnisfeldern wie folgt vorgehen:
FELD AUSDRUCK
DATUM CURRENT(DATE)
TAG DAY(DATUM)
Das Feld Tag enthält dann z. B. für heute den Wert 24.
Gruss Reinhold

[Dieser Beitrag wurde von schreibr am 24. August 2001 editiert.]