View Full Version : Web Query
Hallo zusammen
Wie kann ich in einem Report ein Datum im Format jj.tt.yyyy darstellen. In der Datenbank ist das Feld als P7 im Format 1100801 gespeichert. Mit dem SUBSTR könnte ich ja einzelne Elemente definieren, kriege ich aber nicht ohne Fehlermeldung hin.
Vielen Dank für die Hilfe.
Hans
Hallo Hans,
am einfachsten und performantesten geht es mit einer Datumsdatei:
1.Feld P7, 2.Feld ISO-Datum (+ weitere Felder für andere Formate)
Jetzt brauchst du die Datei nur noch zu joinen oder über Foreign Key auf Metadatenebene einzubinden.
Damit kannst du das Problem "kein Datum" = Wert 0000000 erschlagen. Das mag WebQuery garnicht.
Ersetzte den Wert 0000000 durch NULL und schon funktioniert es wieder.
Die Story dazu:
Tech Tip: Converting Legacy Date Fields to DB2 Web Query Dates, Part II | DB2 (http://www.mcpressonline.com/database/db2/tech-tip-converting-legacy-date-fields-to-db2-web-query-dates-part-ii.html)
Grüße
Jürgen
Hallo Jürgen
Vielen Dank für die Antwort, werde das probieren. Hast du evtl. noch gute Seiten oder Literatur welche sich mit WebQuery befassen.
Gruss
Hans
Für dein Datum erstellst du dir am Besten eine SQL-Funtion, die das Feld umformatiert und ein Datum zurückgibt:
case MyField
when 0 then NULL
else
date('1899-12-31')
+ dec(substr(digits(MyField), 1, 3), 3, 0) years
+ dec(substr(digits(MyField), 4, 2), 2, 0) months
+ dec(substr(digits(MyField), 6, 2), 2, 0) days
end as MyNewDate
... und die packst du dann in eine View und das Problem ist keins mehr.
D*B
Für dein Datum erstellst du dir am Besten eine SQL-Funtion, die das Feld umformatiert und ein Datum zurückgibt:
case MyField
when 0 then NULL
else
date('1899-12-31')
+ dec(substr(digits(MyField), 1, 3), 3, 0) years
+ dec(substr(digits(MyField), 4, 2), 2, 0) months
+ dec(substr(digits(MyField), 6, 2), 2, 0) days
end as MyNewDate