27.12.2012 Aufrufe

SChWERPUNKT - Midrange Magazin

SChWERPUNKT - Midrange Magazin

SChWERPUNKT - Midrange Magazin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

40<br />

TEChNIK & INTEGRATION<br />

Datums- und Zeitwerte aufbereiten<br />

Skalare Funktionen<br />

je vielschichtiger die IT-Welt wird, desto wichtiger ist der Datenaustausch zwischen den<br />

einzelnen Systemen. Alphanumerische oder numerische Daten sind noch recht einfach zu<br />

konvertieren und übertragen. Schwieriger wird es mit Datums- und Zeit-Informationen,<br />

da es sich bei diesen i. d. R. um fortlaufende numerische Werte handelt, die mit hilfe eines<br />

Datumsformats lesbar gemacht werden.<br />

Mit Release 6.1 werden einige skalare<br />

Funktionen eingeführt, mit<br />

deren Hilfe Datums- und Zeitwerte in<br />

fast jedem beliebigen Format aufbereitet<br />

werden können bzw. mit deren<br />

Hilfe aus fast jeder alphanumerischen<br />

Darstellung eines Datums- oder eines<br />

Zeitwertes eine echte Zeitmarke gebildet<br />

werden kann.<br />

Skalare Funktion<br />

Timestamp_Format()<br />

Mit der skalaren Funktion Timestamp_<br />

Format() können alphanumerische Darstellungen<br />

von Datums- und Zeitwerten<br />

in eine Zeitmarke konvertiert werden.<br />

Vor Release 6.1 gab es für Zeitmarken<br />

nur zwei gültige alphanumerische<br />

Darstellungen:<br />

ó ISO-Format:<br />

YYYY-MM-DD-HH.MM.SS.MSMSMS<br />

ó ANSI-Format:<br />

YYYY-MM-DD HH:MM:SS.MSMSMS<br />

(Verarbeitung seit V5R4)<br />

Die Funktion Timestamp_Format() erfordert<br />

zwei Parameter. Im ersten Parameter<br />

wird eine alphanumerische<br />

Darstellung eines Datums, einer Zeit<br />

oder einer Zeitmarke angegeben. Das<br />

Format des übergebenen Datums- oder<br />

Zeitwertes wird in dem zweiten Parameter<br />

hinterlegt. Das Format muss<br />

sich aus einer Kombination aus den in<br />

Tabelle 1 gezeigten Zeiteinheiten und<br />

Trennzeichen zusammensetzen.<br />

Großschrift ist für die Angabe der<br />

Zeiteinheiten nicht unbedingt notwen-<br />

MIDRANGE MAgAZIN · 10/2010<br />

dig, d. h. auch die Formatangabe Dd.mM.<br />

yyyy liefert das gewünschte Ergebnis. In<br />

dem alphanumerischen String müssen<br />

nicht alle für eine Zeitmarke erforderlichen<br />

Zeiteinheiten enthalten sein. Fehlende<br />

Einheiten werden durch Default-<br />

Werte ersetzt. Damit kann auch eine<br />

alphanumerische Darstellung eines<br />

Datums oder einer Zeit mit der Funktion<br />

Timestamp_Format() in eine Zeitmarke<br />

konvertiert werden.<br />

Für die Konvertierung von alphanumerischen<br />

Strings bestehen die folgenden<br />

Einschränkungen:<br />

ó Die einzelnen Zeiteinheiten müssen<br />

durch Datumsseparatoren voneinander<br />

getrennt werden. Es ist also<br />

nicht möglich, eine numerische Datumsangabe,<br />

die durch eine der skalaren<br />

Funktionen DIgITS oder CHAR in<br />

eine alphanumerische Darstellung<br />

konvertiert wurde, mit Hilfe der<br />

skalaren Funktion Timestamp_Format()<br />

in eine echte Zeitmarke zu konvertieren.<br />

ó Datumswerte mit alphanumerischen<br />

Monatsangaben (z. B. JAN oder Januar<br />

oder January) können mit der skala-<br />

ó<br />

ó<br />

ó<br />

ó<br />

ó<br />

ren Funktion Timestamp_Format() nicht<br />

konvertiert werden.<br />

Im folgenden Beispiel werden einige<br />

zulässige alphanumerische Strings in<br />

echte Zeitmarken konvertiert.<br />

Der erste String besteht aus einem<br />

Datum im Format Tag, Monat und<br />

zweistelliger Jahresangabe. Die Zeiteinheiten<br />

werden durch einen Punkt<br />

getrennt. Die Zeit wird als Stunden<br />

und Minuten, die durch einen Doppelpunkt<br />

getrennt wurden, angegeben.<br />

Der zweite String enthält lediglich<br />

ein Datum im Format TT-MM-JJ. Bei der<br />

Konvertierung wird die fehlende Zeitangabe<br />

durch 00:00:00 ersetzt.<br />

Im dritten Fall wird eine Zeitangabe<br />

bestehend aus Stunde und Minute in<br />

eine Zeitmarke konvertiert. Der Datumsanteil<br />

wird durch das Tagesdatum<br />

ersetzt.<br />

Beim letzten String wird ein Datum<br />

im Format MM/TT/JJJJ und eine Zeit<br />

im Format HH:MM SS konvertiert. Der<br />

Tag, der Monat sowie die Stunde,<br />

Minute und Sekunde werden dabei<br />

jeweils als einstelliger Wert übergeben.<br />

Tabelle 1:<br />

Zulässige Zeitein<br />

heiten und<br />

Trenn zeichen für<br />

Timestamp_<br />

Format()

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!