Ubernahme von Datumsangaben aus Tabellen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Pfeiffer
***
Beiträge: 87
Registriert: Fr, 24.02.2006 23:05

Ubernahme von Datumsangaben aus Tabellen

Beitrag von Pfeiffer »

Hallo erst mal!
Wenn ich Geburtstagsdaten aus einer OO-Calc-Tabelle in eine Base Tabelle einfügen will setzt Base die Tage immer zwei Tage höher, z.B. wird aus dem 12.05.1978 der 14.05.1978. Das ist ein bisschen nervig - wie kann ich das abstellen??
Vielen Dank im Vorraus!
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Beitrag von Barlee »

Hallo Pfeiffer,

schreib doch mal ein wenig ausführlicher, wie Du z.B. Daten aus Calc in Base eingefügt hast und wie die Datentypen Deiner Base Tabelle sind.

Sonst läßt sich Dein Problem m.E. schlecht nachvollziehen

Gruß Barlee
Pfeiffer
***
Beiträge: 87
Registriert: Fr, 24.02.2006 23:05

Beitrag von Pfeiffer »

Also die Daten aus der Tabelle in Calc markieren und kopieren - dann in Base mit der rechten Maustaste auf die Tabelle klicken und "Inhalte einfügen"
wählen usw. Die Tabelle in Base ist vorher schon mit Feldnamen versehen und die Formate Text für Vor- und Nachname und Datum für Geburtstag eingestellt.

Gruß
Pfeiffer
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Beitrag von Barlee »

Hallo Pfeiffer,

offensichtlich werden Daten aus Calc nur als Text interpretiert. Der Konflikt der verschiedenen Datentypen führt wahrscheinlich zu dieser Abweichung. Ändere den Datentyp für die Spalte "Geburtstag" von Datum auf Text.
Dann sollte es über den von Dir beschriebenen Weg:

Inhalte einfügen / [Formatierter Text] / Daten anhängen

funktionieren. Der Geburtstag an sich wird in der DB dann aber als Text verwaltet, jedoch korrekt dargestellt.

Gruß Barlee
Pfeiffer
***
Beiträge: 87
Registriert: Fr, 24.02.2006 23:05

Beitrag von Pfeiffer »

Hallo Barlee!
Vielen Dank für die Antwort. Wenn ich jetzt aber Abfragen auf der Datumsspalte aufbauen will - z.B. in welchem Monat hat wer Geburtstag oder so - kann ich das ja nicht, weil die Spalte wird ja nicht als Datum erkannt.
Es kann doch nicht normal sein, das , wenn ich ein Datumsfeld aus einer Tabellenkalkulation einer Office-Suite in ein Datumsfeld einer Datenbank der selben Office-Suit kopiere, die Leute automatisch 2 Tage jünger werden.
Gruß
Pfeiffer
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Beitrag von Barlee »

Hallo Pfeiffer,
Wenn ich jetzt aber Abfragen auf der Datumsspalte aufbauen will - z.B. in welchem Monat hat wer Geburtstag oder so - kann ich das ja nicht, weil die Spalte wird ja nicht als Datum erkannt.
Naja, über Textfunktionen wie z.B. substr(Geburtstag,4,6) as Monat könntest Du auch ans Ziel kommen
Es kann doch nicht normal sein, das , wenn ich ein Datumsfeld aus einer Tabellenkalkulation einer Office-Suite in ein Datumsfeld einer Datenbank der selben Office-Suit kopiere, die Leute automatisch 2 Tage jünger werden.
Nein, normal sollte das nicht sein. Es könnte aber an folgendem liegen:
Der Datumswert 0 entspricht in Calc standardmäßg dem 30.12.1899 während Base anscheinend 0 als den 01.01.1900 interpretiert (wie StarCalc1.0).
Wenn Du jetzt in Calc unter Optionen / Berechnen / Datum auf 01.01.1900 (StarCalc 1.0) stellst und anschließend Deine Geburtstagsdaten in deiner Calc Tabelle anschaust, wirst Du die zwei Tage Differenz erkennen.
Erstellst Du also mit diesen Calc Einstellungen Deine Ausgangsdaten in Calc, dann dürfte ein korrekter Export nach Base (auch mit Datumsfeld) möglich sein.

Probier mal, vielleicht geht's so

Gruß Barlee
Pfeiffer
***
Beiträge: 87
Registriert: Fr, 24.02.2006 23:05

Beitrag von Pfeiffer »

Hallo Barlee!
Das mit dem 01.01.1900 war der entscheidende Tip. Besten Dank. Für vorhandene Datenbanken zwar nicht so toll, weil sich ja auch das Datum mit der Umstellung ändert, aber für die Zukunft weiß ich wenigstens Bescheid!
Vielen Dank!
Gruß
Pfeiffer
Antworten