![]() |
Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Hallo,
ich bin von Delphi 2010 auf XE5 umgestiegen. WIN 7 / 64 bit, BDE (noch). Es gibt in meinem Programm eine Auswertung die unter Delphi 2010 funktioniert, unter XE5 aber zur Laufzeit mit einer Fehlermeldung aufwartet: Zahl außerhalb des gültigen Bereichs. Ich habe darin eine Variable als Extended deklariert und gefunden, dass dieser Typ unter XE5 nur mit der Directive {$EXTENDEDCOMPATIBILITY ON} funktioniert. Bei mir leider nicht! Wo genau müsste ich das {$X+} genau hinschreiben? Oder muss ich einen anderen Datentyp nehmen? Double geht auch nicht. Ich habe den Extended-Typ jetzt herausgenommen und durch Integer ersetzt. Der Fehler ist nicht weg ... Danke für Eure Tipps. Harald |
AW: Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Wie groß ist denn die Zahl?
In Double passt ja immerhin eine 308-stellige Dezimalzahl. (mit 16 signifikanten Stellen an der Spitze) Extended gibt es praktisch nicht mehr ... es ist wird jetzt nur noch FPU-intern verwendet, aber extern gibt es eigentlich nur noch Single und Double. Extended als Typ blieb zwar vorhanden (damit alte Codes noch "funktionieren"), aber standardmäßig ist das jetzt nur noch ein Alias für Double. |
AW: Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Die Direktive {$EXTENDEDCOMPATIBILITY ON} ist nur für 64-Bit Compilate relevant, die du aber wegen der BDE nicht verwenden kannst. Daran wird es wohl nicht liegen. Ich vermute, du suchst noch an der falschen Stelle.
|
AW: Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Danke für Eure Antworten. Ich bin leider nicht mehr sehr geübt und mache nur ab und zu kleine Änderungen oder Erweiterungen an meinem Proggy. Was ich nun glaube herausgefunden zu haben ist, dass die nachstehende Zeile mit den Query-Values der Verursacher ist.
FData.FinStandQYMieteAnd_aP.Value := FData.MieteAndereQYMiete.Value * 0.85; Gibt Euch das eine Idee? Gruß Harald |
AW: Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Was sagt der Debugger oder weißt du es auch so .... Welchen Wert hat MieteAndereQYMiete?
Und wie ist FinStandQYMieteAnd_aP in der Datenbank definiert? |
AW: Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Hallo himitsu,
die Daten in dieser Tabelle sind in der BDE alle als BCD mit Größe 8 definiert. Der Wert liegt bei allen zwischen 0 und etwa 60000. z.B. 60.948,4 für FData.FinStandQYMieteAnd_aP.Value Um es nochmal zu betonen: Unter Delphi 2010 funktioniert das problemlos. Ich habe noch beide IDE's (2010 und XE3) auf dem Rechner. Gruß Harald |
AW: Von Delphi 2010 auf XE5: Zahl außerhalb des gültigen Bereichs
Was spricht dagegen deine "und mache nur ab und zu kleine Änderungen oder Erweiterungen an meinem Proggy" weiter mit D2010 zu machen?
Die BDE ist nunmal steinalt und wenn durch neuere Delphi-Versionen die BDE schrittweise kaputt geht - na und! Dafür ist sie schon ca. 15 Jahre abgekündigt und Emba hat besseres zu fixen als noch weiter unnötig Zeit mit der BDE zu verbringen. Also wenn du XEx verwenden willst: Schmeiß endlich die BDE raus oder bleib bei D2010! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz