none
Datumsfeld Eingabeformat führt zu Fehler auf Windows mit Gebietsschema Deutsch(Schweiz)

    Frage

  • Hallo zusammen,

    auf einem Formular liegt ein Datumsfeld. Das Format ist "Standarddatum". Als Eingabeformat wurde "00.00.0000\ 00:00:0;0;_" definiert. Läuft die Anwendung jetzt auf einem Windowssystem mit Gebietsschema "Deutsch (Schweiz)", erhält der Anwender bei Eingabe einer Datum samt Uhrzeit die Fehlermeldung "Sie haben einen Wert eingegeben, der für dieses Feld nicht gültig ist.", weil die Eingabe in z.B. "05'03'2013 12:03:0" konvertiert wird. Bei der Eingabe werden die "." anscheinend für Tausendertrennzeichen gehalten, die bei den Schweizern "'" sind.

    Wie kann ich das Problem umgehen? Gibt es für die Schweizer bspw. ein anderes Eingabeformat?

    Für jede Hilfe im voraus vielen Dank.

    Viele Grüße,
    Michael Schörner

    Mittwoch, 6. März 2013 16:00

Antworten

  • Hallo Michael

    Es gibt ja nicht viele Länder, die , als Dezimaltrennzeichen verwenden. Eines davon ist Deutschland. Die Schweiz gehört wie die meisten anderen Länder der Erde nicht dazu.

    Um das Datum landesabhängig eingeben zu können, solltest Du auf Eingabeformate verzichten. Durch die Angabe des Formates "General Date" (Standard Datum) wird sichergestellt, dass immer nur ein Datum, allenfalls mit Uhrzeit eingegeben werden kann. Damit funktioniert das selbst in den USA, wo MM/DD/YYYY hh:nn:ss AM/PM verwendet wird. In der Datenbank speicherst Du das ja hoffentlich als Date Datentyp ab. Damit ist das intern in allen Ländern gleich behandelt.

    Falls Du noch prüfen willst, ob auch eine Zeit eingegeben wurde, dann kannst Du das beim Control_AfterUpdate oder Form_BeforeUpdate tun und dann allenfalls die Änderung/Eingabe zur Nachbesserung zurückweisen.

    Gruss
    Henry

    "Michael Schörner" schrieb im Newsbeitrag news:7b24a8b4-9c29-42a0-ac39-398b9cbda944@communitybridge.codeplex.com...

    auf einem Formular liegt ein Datumsfeld. Das Format ist
    "Standarddatum". Als Eingabeformat wurde "00.00.0000\ 00:00:0;0;_"
     definiert. Läuft die Anwendung jetzt auf einem Windowssystem mit
    Gebietsschema "Deutsch (Schweiz)", erhält der Anwender bei Eingabe
    einer Datum samt Uhrzeit die Fehlermeldung "Sie haben einen Wert
    eingegeben, der für dieses Feld nicht gültig ist.", weil die Eingabe in
    z.B. "05'03'2013 12:03:0" konvertiert wird. Bei der Eingabe werden die
    "." anscheinend für Tausendertrennzeichen gehalten, die bei den
    Schweizern "'" sind.

    Donnerstag, 7. März 2013 04:27