Hallo Zusammen,
vielen Dank für Eure Anregungen. Ich habe daraufhin den Code etwas geändert und so scheint es jetzt zu funktionieren:
Delphi-Quellcode:
else if Methode = '
QUERY'
then begin
//MTable.Active;
MTable.FieldDefs.Clear;
MTable.Fields.clear;
LStream:=LService.Get_LifeMData(Maschinen_ID, RefreshData)
as TMemoryStream;
LStream.Position:=0;
//MTable.Open;
MTable.LoadFromStream(LStream, sfJSON);
end
Darüber hinaus habe ich Logic auch freigegeben
Zitat:
Laut deiner Beschreibung würde ich den Fehler eher in der Zeile MTable.LoadFromStream(LStream, sfJSON); //Daten in die TFDMemTable vermuten, nämlich dann wenn gar keine Daten im Stream vorhanden sind. Vielleicht solltest du das überprüfen bevor du das in MTable einliest.
Das habe ich geprüft, der Fehler tritt tatsächlich auf, wenn ich die TFDMemTable anfasse. Der Stream wird befüllt, was ich anhand der Größe (TStream.Size) geprüft habe.
Es scheint so, dass ich die TFDMemTable besser nicht anfasse, bevor die Daten reingeladen werden...
Vielen Dank
Patrick