Base: Datumsformat wird nicht beibehalten

Hallo user,

beim praktischen Lernen in Base ist mir gerade aufgefallen, dass die Formatierung von Datums-Feldern in Tabellen nicht beibehalten wird.

Wenn ich in einer Tabelle ein Feld mit dem Typ Datum[Date] auf "01.01.1900" einstelle, die Tabelle und die Datenbank speichere, verlasse und wieder öffne, hat das Feld danach das Datumsformat "01.01.00".

Das ist zwar kein gravierender Fehler, kann aber dennoch nicht so gewollt sein...

Liegt das evtl. an irgendwelchen Voreinstellungen, die vielleicht irgendwo in LO gesetzt sind, oder ist das ein Fehler im Programm.

Gruß L-H

Hallo Leo,

habe heute V. 4.2.8 installiert. In dieser und der Vorgängerversion
tritt/trat bei mir der gleiche Fehler auf.

Ebenso wird das Format bei TEXT von "@" auf "0" gesetzt, wenn in der Tabelle ein Feld hinzugefügt wird.

Das Format lässt sich beim Text aber dann auch nicht zurücksetzen. Schade.

Bei mir WIN7/Sp1/64Bit.

Gruß Harald

Hallo Leo,

beim praktischen Lernen in Base ist mir gerade aufgefallen, dass die
Formatierung von Datums-Feldern in Tabellen nicht beibehalten wird.

Wenn ich in einer Tabelle ein Feld mit dem Typ Datum[Date] auf
"01.01.1900" einstelle, die Tabelle und die Datenbank speichere,
verlasse und wieder öffne, hat das Feld danach das Datumsformat "01.01.00".

Wo stellst Du ein? Es gibt teilweise Probleme mit dem Behalten des
Formates.
https://bugs.freedesktop.org/show_bug.cgi?id=87151

Das dürfte aber eher die Ausnahme, nicht die Regel sein.

Formate für Tabellen werden sowohl beim Erstellen der Tabellen als auch
bei der Dateneingabe über den Tabellenkopf mit gespeichert. Bei Abfragen
entfällt dies leider.

Das eigentliche Eingabemodul für Daten sind allerdings nicht die
Tabellenansichten. Die erreichen bei Datenbanken mit mehreren Tabellen
doch schnell ihre Grenzen. Greifst Du stattdessen zu einem Formular, so
hast Du (vor allem mit dem formatierbaren Feld) die Möglichkeit, alle
gewünschten Formate dauerhaft zu erstellen.

Gruß

Robert

Hallo L-H.

habe heute V. 4.2.8 installiert. In dieser und der Vorgängerversion
tritt/trat bei mir der gleiche Fehler auf.

Wo hast Du das entsprechende Format voreingestellt? Wo erhältst Du das
Format nicht.

Ebenso wird das Format bei TEXT von "@" auf "0" gesetzt, wenn in der
Tabelle ein Feld hinzugefügt wird.

Das Format lässt sich beim Text aber dann auch nicht zurücksetzen. Schade.

Doch, über die Spracheinstellungen (Button mit den 3 Punkten, Sprache
ändern, OK usw.)
Nimm stattdessen eine 4.3.2 oder höher. Da kommt zumindest bei
Textfeldern in Formularen die 0 nicht mehr. Was in den Tabellen an
Formaten steht interessiert die meisten Leute sowieso nicht, weil die
Eingaben über Formulare gemacht werden. Eingaben direkt in Tabellen
haben nur bei Datenbanken mit äußerst wenigen Tabellen einen Sinn.
Fremdschlüssel kannst Du so nicht verwalten.

Gruß

Robert

Hallo Robert

Hallo L-H.

habe heute V. 4.2.8 installiert. In dieser und der Vorgängerversion
tritt/trat bei mir der gleiche Fehler auf.

Wo hast Du das entsprechende Format voreingestellt? Wo erhältst Du das
Format nicht.

Die Voreinstellung habe ich in der/den Tabellen vorgenommen.

Ebenso wird das Format bei TEXT von "@" auf "0" gesetzt, wenn in der
Tabelle ein Feld hinzugefügt wird.

Das Format lässt sich beim Text aber dann auch nicht zurücksetzen. Schade.

Doch, über die Spracheinstellungen (Button mit den 3 Punkten, Sprache
ändern, OK usw.)

Muss ich noch testen.

Nimm stattdessen eine 4.3.2 oder höher. Da kommt zumindest bei
Textfeldern in Formularen die 0 nicht mehr.

Werde ich mal versuchen.

Was in den Tabellen an

Formaten steht interessiert die meisten Leute sowieso nicht, weil die
Eingaben über Formulare gemacht werden. Eingaben direkt in Tabellen
haben nur bei Datenbanken mit äußerst wenigen Tabellen einen Sinn.

Das sehe ich auch so und ist sicherlich richtig. Jedoch ist es schon irritierend wenn man in den Tabellen die Voreinstellungen vornimmt und plötzlich steht da etwas anderes, wenn man wieder hineinschaut bzw. ein Feld hinzufügt. Die Formatierungen im Formular sind mir schon bekannt.
Meine Befürchtung war auch zunächst, dass dadurch irgendwo Daten verloren gehen könnten.

Fremdschlüssel kannst Du so nicht verwalten.

Was sind jetzt Fremdschlüssel? Ich habe nur zwei Tabellen, die ich im Formular verknüpft habe von ID nach xID.

Es war ein langer Tag. Morgen werde ich mal ein wenig ausprobieren und mich dann wieder melden.

Danke für die Hinweise.

Gruß
Robert

Gruß Harald

Hallo Robert,

meine Datenbank sieht so aus:
Mehrere Tabellen, ein Formular mit mehreren Unterformularen in Tabellenform. In die Tabellen habe ich Daten im Datumsformat TT/MM/JJJJ aus Calc importiert.
Bei der Änderung des Datumsformats in den Tabellen innerhalb Base trat dieser besagte Fehler auf.

Gerade habe ich folgendes getestet:

1. Im Unterformular den Spaltenkopf des Datums auf TT/MM/JJJJ umgestellt.

Jetzt waren die Datumsinhalte im Unterformular auch in diesem Format zu sehen. In der Tabelle waren sie immer noch im Format TT/MM/JJ zu sehen.
Auch ein neuer Eintrag, den ich im Unterformular testweise hinzugefügt habe, war in der Tabelle im Format TT/MM/JJ dargestellt, obwohl er im Unterformular im Format TT/MM/JJJJ angezeigt wurde.
Dies war auch so nach dem Schließen und wieder Öffnen der Datenbank.

2. Danach habe ich auch in der Tabelle die Eigenschaft des Datums in TT/MM/JJJJ umgestellt.

Jetzt habe ich zum Test wieder einen Datensatz im Unterformular erfasst.
Dieser neue Datensatz und alle schon vorhandenen Datensätze werden jetzt auch in der Tabelle im Format TT/MM/JJJJ angezeigt.
Auch nach dem Schließen und wieder Öffnen der Datenbank.

Damit ist mein Problem behoben.

Es scheint so, als ob die Einstellungen im Unterformular, auch ohne dass es benutzt wird die Einstellungen in der Tabelle offensichtlich überschreibt, so als ob die Einstellungen im Unterformular Vorrang vor den Einstellungen in der Tabelle haben.

Vor meinen Versuchen hatte ich in die Datenbank keine neue Daten selbst eingegeben, es waren nur importierte Daten enthalten.

Ich gehe davon aus, dass ich das Unterformular erstellt habe, als die Tabelle noch das TT/MM/JJ - Format hatte.

Der jetzige Datenbestand in den Tabellen ist nämlich bereits der Zweite, da ich nach meinen Anfangsversuchen mich entschlossen habe, meine neuesten Daten erneut zu importieren. Vorher waren dort veraltete Daten enthalten. Während des Imprts habe ich dann das Problem mit dem falschen Datenformat bemerkt und die aktuellen Datumsdaten alle mit dem Format TT/MM/JJJJ importert.

Gruß L-H

Hallo Leo,

die Formatierung hat nichts mit den tatsächlich abgespeicherten Werten
zu tun. Wenn Du in ein Datenbankfeld, das ein Datum speichern soll,
etwas eingibst, dann versucht die Datenbank daraus ein Datum zu machen.
Nur wenn das nicht gelingt, dann kommt eine (englischsprachige)
Fehlermeldung, dass die Datentypen nicht kompatibel sind.

In einer Tabellenkalkulation hast Du ja auch solche
Formatierungsmöglichkeiten des Datums. Nur ist es dort möglich, in jedes
Feld irgendetwas rein zu schreiben ohne Rücksicht auf eine entsprechend
gedachte Vorgabe zu nehmen. Du kannst in ein als "Datum" formatiertes
Feld ohne Probleme einen Text rein schreiben. Das würde eine Datenbank
einfach nicht zulassen.

In direktem SQL wird ein Datum in der Form '2014-12-22' gespeichert. In
der Benutzeroberfläche kann das dann unterschiedlich dargestellt werden.
Manchmal passiert es mir bei Abfragen, dass ein Datum nur als
fünfstellige Zahl dargestellt wird, weil die grafische
Benutzeroberfläche den Inhalt nicht mehr einem Datum einer Tabelle
zuordnen kann. Auch diese fünfstellige Zahl ist nur ein Erscheinungsbild
der Benutzeroberfläche. Ich kann aus so einem Datum ohne Probleme mit
YEAR("Datum") das vierstellige Jahr extrahieren.

Gruß

Robert

Hallo Robert,

bei meinen heutigen weiteren praktischen Übungen habe ich das mehrmals so erkennen können.

Meine Daten sind so in der Tabelle, wie ich sie eingefügt habe, werden aber immer wieder anders angezeigt. Eben je nach der jeweiligen Formatierung eines Feldes.

Aus der Vergangenheit war ich es nur nicht gewohnt, dass ich in einer Tabelle die Eigenschaft auf ...JJJJ einstelle, danach die Daten auch so angezeigt bekomme, nach dem Seichern, Schliessen und wieder Öffnen aber wieder die Darstellung ...JJ sehe.

Wenn diese "Unzuverlässigkeit" zuverlässig wäre, dann bräuchte man ja eigentlich die Möglichkeit der formatierten Darstellung gar nicht.

Das brauchen wir aber nicht weiter zu vertiefen denke ich...

Ich habe heute meine sieben Unterformulare mit den dazugehörigen Tabellen auf das von mir gewünschte Format umgestellt und wie es jetzt aussieht ist die Darstellung im Formular und der Tabelle beständig so, wie ich es eingestellt habe.

Ich musste nur zuerst immer das Unterformular umstellen (im Spaltenkopf) auf ..JJJJ, dann Speichern und Schließen, dann die Datenbank und danach die dazugehörige Tabelle (nicht die Entwurfsansicht) öffen und dort im Spaltenkopf auf ..JJJJ umstellen, wieder speichern und schließen. Ich glaube es war vor dem Speichern der Tabelle auch noch mal das Öffnen des umgestellten Formulars erforderlich. So genau weiß ich das jetzt gar nicht mehr weil ich die Vorgehensweise nicht mitprotokolliert habe.
Nach der ganzen Prozedur blieb die Darstellung in der Tabelle jedenfalls als ..JJJJ beständig erhalten.

Für mich ist das so jetzt auch akzeptabel, obwohl es sicher bei künftigen Base-Anfängern zunächst immer wieder zu Verwirrung führen wird.

Gruß L-H