Hallo Stefan,
Am 12. Jan 2006 um 20:49 Uhr schrieb Stefan Sicurella:
wo kommt cdbl(7,6) denn her? hast Du das hart codiert im Code?
ne, aus einem Eingabefeld das der Benutzer eingibt, in dem Fall die
MwSt der Schweiz
Aha. Und in der Schweiz ist das Format wirklich XXX.XX und der . ist
der Dezimaltrenner, oder hat der User das so eingestellt oder ein US-
System aktiviert?
wenn ich es auf Schweiz umstelle ergibt
cdbl(7,6) ergibt 7
der Grund ist einfach, in der Schweiz is er . was bei uns , ist
und umgekehrt
Nur wird mein Programm in beiden Ländern benutzt und ihr könnt
euch vorstellen welche Probleme das mit sich bringt.
Weiß jemand wie ich das umgehen kann außer den Eingabestring zu
zerlegen und nach dem . zu schauen oder wie ich feststellen kann
welches Format gewählt ist???
Wenn ich etwas in ein Textfeld schreibe, dann liegt es in RB in RB
Format vor, also 7.6. In die Applikationsoberfläche wandert es
dann mit format(XXX,"###,###,###.##") dadurch wird schon das
eingestellte Landesformat genommen. Lese ich es dann aus der
Oberfläche wieder aus, dann nehme ich cdbl(XXX) und bekomme intern
wieder eine RB-Standardzahl.
der Benutzer gibt aber 7,6 ein...
Also ich sehe es so. Dein Programm arbeitet hervorragend und richtig.
Der User hat sein MacOS X so eingestellt dass der . der
Dezimaltrenner ist. Dann muss er auch 7.6 und nicht 7,6 eingeben.
Solltest Du dieses Fehlverhalten abfangen wollen, besteht die Gefahr,
dass Du Dir wo anders Probleme einhandelst.
Ich würde erst einmal fragen welches Setup der User auf seiner
Maschine hat, wenn es sich um Zahlen handelt, denn auf dieses Setup
greift RB zurück. Dann den User bitten genau dieses Zahlenformat auch
in Deinem Programm zu nutzen.
Möglicherweise stehe ich jetzt auf dem Schlauch, aber das war so mal
meine Idee....
Ciao
Claudius
--
G4/733 QS / MacOS X 10.4de / RB 2006r1/ Valentina 1.10.0 & 2.1
Homepage http://www.ClaSai.de
iChat ryhoruk
RealBasic ListBoxes: [ I feel the need...the need for speed!!! ]