-
Hallo,
kleiner Irrtum.
Ein Datum wird immer ohne Format erstellt, d.h. ein Datum ist ein 4-stelliger Binär-Wert, der die Anzahl der Tage seit Zeitpunkt x representiert. (Mit der Funktion HEX() kannst Du Dir mal die Hex-Werte anzeigen lassen.)
Das Datums-Format macht diesen Binär-Wert lediglich lesbar.
In welchem Datums-Format der Binär-Wert ausgegeben wird ist vom aktuellen Job abhängig.
Wenn Du mit interaktivem SQL arbeitest, kannst Du das Datums-Format über F13, Auswahl 1 einstellen.
Wenn Du mit dem iNavigator - Eine SQL Prozedur arbeiten/Run an SQL Script arbeitest, kann das Datums-Format über JDBC-Setup festgelegt werden.
In embedded SQL kann das Datums-Format im Compile-Befehl oder über ein SET OPTION-Statement festgelegt werden (Unterlassungs-Wert ist das Format des aktuellen Jobs).
In der SQL-Programmierung kann das Datums-Format ebenfalls über ein SET OPTION-Statement festgelegt werden.
Sollte das Ganze immer noch nicht ausreichen, kann man ein Datum über die Funktion CHAR in eine alphanumerische Darstellung in (fast) jedem beliebigen Format konvertieren:
PHP-Code:
Select Char(MyDate, EUR), a.*
From MyTable a
Vielleicht noch eine Anmerkung:
Im Gegensatz zu SQL werden in RPG Datums-Felder IMMER konvertiert und erst vor dem Fortschreiben wieder in echte Datums-Formate ungewandelt.
Probleme mit dem europäischen Format kann es dann geben, wenn Datums-Felder im "falschen" Format an ein Programm oder eine Prozedur überegeben werden. Deshalb sollte man soweit möglich die Parameter-Felder mit dem Schlüssel-Wort CONST definieren und das Datums-Format im Prototpyen angeben.
Ansonsten hilft in RPG nur konvertieren:
--> Hilfs-Felder mit Datums-Format *EUR anlegen und umladen.
Übrigens in SQL ist das Format egal, da das Datum nicht konvertiert wird!
SQL kann sogar alphanumerische Darstellungen mit den Formaten 'JJJJ-MM-DD', 'TT.MM.JJJJ' und 'MM/TT/JJJJ' als Datum erkennen und automatisch in den Binär-Wert konvertieren.
Schlägt ein RPG-Programm mit embedded SQL mit einem Datums-Format-Problem auf, liegt es daran, dass der SQL-Precompiler für jede Hostvariable eine zusätzliche Variable anlegt. Bei Datums-Feldern erhält das Datum das Format, das im Compile-Befehl oder in der SET OPTION-Anweisung angegeben wurde. Der Abbruch erfolgt beim MOVE der Host-Variablen in die zusätzlich gebildeten Hilfs-Variablen.
Birgitta
Similar Threads
-
By Nils_V in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 18-07-16, 09:49
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 14:53
-
By Kaufmann in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 28-06-06, 14:11
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
-
By N.Welp in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 03-11-05, 14:50
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks