AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datum und Zeit internationalisieren

Ein Thema von emsländer · begonnen am 29. Mär 2006 · letzter Beitrag vom 29. Mär 2006
Antwort Antwort
Benutzerbild von emsländer
emsländer

Registriert seit: 21. Aug 2004
Ort: Lengerich
658 Beiträge
 
RAD-Studio 2009 Ent
 
#1

Datum und Zeit internationalisieren

  Alt 29. Mär 2006, 17:13
Moin,

ich hab ein Problem mit den Datums, Zeit und Währungsfunktionen.

Ein von mir entwickeltes Programm fürs Finanzwesen wird auch auf Rechnern mit holländischem und engl. XP genutzt. Nur wenn die Anwender die Regionsoptionen nicht auf Deutsch stellen, knallt mein Proggi mit "ungültiger Integerwert", "ungültiger Datumswert" etc. weg. Wenn das aber auf Deutsch steht, laufen andere Applikationen nicht mehr.

Hilfääääääää!!! - Wer hat nen heissen Tip?


Gruss

EL

PS.: Ich nutze Delphi 2005 Enterprise


Narben am Körper sind ein Zeichen dafür, das man gelebt hat.
Narben auf der Seele sind ein Zeichen dafür, das man geliebt hat.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: Datum und Zeit internationalisieren

  Alt 29. Mär 2006, 17:32
Hallo

Um die Anwendung unabhaengig von regionalen Einstellungen zu machen, weise Default-Werte den Date/Time Format Variablen zu.

Bsp:

Delphi-Quellcode:
  DateSeparator := '/';
  TimeSeparator := ':';
  DecimalSeparator := '.';
  ThousandSeparator := ' ';
  ShortDateFormat := 'dd/mm/yyyy';
Thomas
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

Re: Datum und Zeit internationalisieren

  Alt 29. Mär 2006, 18:27
Grundsätzlich:
Datumswerte niemals in string-Variablen speichern.
Datumswerte werden nur als TDateTime (bzw TDate) im Programm gespeichert.
Erst wenn der Datumswert an die Benutzeroberfläche tritt, wird er in einen String gewandelt.
Wenn das Datum in die Bestandteile Tag, Monat und Jahr getrennt werden muss:
nur die Funktion DecodeDate verwenden, keinen Umweg über einen String nehmen!

Zur Eingabe & Anzeige eines Datums die DateTimePicker oder ähnliche Controls verwenden. (keine normalen Edit-Felder!)
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von emsländer
emsländer

Registriert seit: 21. Aug 2004
Ort: Lengerich
658 Beiträge
 
RAD-Studio 2009 Ent
 
#4

Re: Datum und Zeit internationalisieren

  Alt 29. Mär 2006, 20:00
Zitat von shmia:
Grundsätzlich:
Datumswerte niemals in string-Variablen speichern.
Datumswerte werden nur als TDateTime (bzw TDate) im Programm gespeichert.
Erst wenn der Datumswert an die Benutzeroberfläche tritt, wird er in einen String gewandelt.
Wenn das Datum in die Bestandteile Tag, Monat und Jahr getrennt werden muss:
nur die Funktion DecodeDate verwenden, keinen Umweg über einen String nehmen!

Zur Eingabe & Anzeige eines Datums die DateTimePicker oder ähnliche Controls verwenden. (keine normalen Edit-Felder!)

Danke!

Und wie erkenne ich nun die aktuelle Ländereinstellung, damit ich in der Form:

Delphi-Quellcode:
  case ländercode of ...
    DE :
    NL :
    GB :
  end;
agieren kann?`


Gruss

EL


Narben am Körper sind ein Zeichen dafür, das man gelebt hat.
Narben auf der Seele sind ein Zeichen dafür, das man geliebt hat.
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Datum und Zeit internationalisieren

  Alt 29. Mär 2006, 20:18
Die aktuelle Einstellung ermittelst Du mit GetThreadLocale. Vielleicht am besten vorher Sysutils.GetFormatSettings aufrufen, dann sind die Einstellungen automatisch drin. Es gibt da auch eine Windows-Nachricht (wahrscheinlich WM_LOCALECHANGED) auf die Du reagieren kannst.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz