Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   ClientDataSet Zuweisung fehlerhaft bei XE3? (https://www.delphipraxis.net/171660-clientdataset-zuweisung-fehlerhaft-bei-xe3.html)

HiWieGehts 17. Nov 2012 20:35

Delphi-Version: XE

ClientDataSet Zuweisung fehlerhaft bei XE3?
 
Hallo,
habe Delphi XE3. Ich verwende ein ClientDataSet zum Speichern von Daten. Es funktioniert soweit auch alles. Nur wenn ich 256, 65536 oder 16777216 (=256*256*256) zuweise, ist der Inhalt 0. Beispiel: DataSet.FieldByName('Ges').AsInteger := 256; Nach dieser Zuweisung steht in der Zelle 0. Jeder andere Wert funktioniert. Bitte dringend um Hilfe!
Anmerkung: habe das Programm ursprünglich unter Delph 6 geschrieben und in der Zwischenzeit unter verschiedenen Delphiversionen kompiliert - hat immer funktioniert, nur jetzt mit XE3 geht es nicht mehr.

Bummi 17. Nov 2012 20:58

AW: ClientDataSet Zuweisung fehlerhaft bei XE3?
 
ich kann es gerade wegen zuhause fehlendem XE3 nicht nachvollziehen, aber AFAIK hat das Clientdataset in XE3 an mehreren Stellen Schaden erlitten.

HiWieGehts 23. Nov 2012 19:45

AW: ClientDataSet Zuweisung fehlerhaft bei XE3?
 
Hallo,

habe das Problem jetzt genauer analysiert und festgestellt, der Fehler tritt in berechneten Spalten auf und betrifft alle Werte 2^x and >= 256. Hat jemand eine Lösung (ausser auf berechnete Spalten verzichten)?
EDIT:==> Habe gerade festgestellt, es funktionieren alle Werte 256 * x nicht.

himitsu 23. Nov 2012 19:49

AW: ClientDataSet Zuweisung fehlerhaft bei XE3?
 
Meinst du CalcFields?

Ich dachte denen kann man nichts zuweisen. :gruebel:



Nunja, du kannst gerne die DebugDCUs aktivieren und dann mal nachsehn wann und wo der Wert verschwindet.

HiWieGehts 23. Nov 2012 20:05

AW: ClientDataSet Zuweisung fehlerhaft bei XE3?
 
Hallo,
genau, die CalcFields meine ich. Und im Ereignis onCalcFields muss eine Procedure zugewiesen werden, welche die Berechnung durchführt und das Ergebnis dem CalcField zuweist. Funktioniert ja auch bis XE2 und bei XE3 bei allen werten ausser bei 2^x und >= 256.
EDIT:==> Habe gerade festgestellt, es funktionieren alle Werte 256 * x nicht.
Die DebugDCUs sind eingeschaltet, aber ob ich da was finde?

himitsu 23. Nov 2012 20:54

AW: ClientDataSet Zuweisung fehlerhaft bei XE3?
 
Achso, du meintest von Innen nach Außen ... hatte es andersrum verstanden :oops:
Ich hab grade kein XE3 hier, also wirst'e es wohl mal selber probieren müssen.

Haltepunkt in die Methode und dann versuchen rauszufinden wo der Wert verschwindet, bzw. bis wohin er noch vorhanden ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:41 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