Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.095 Beiträge
Delphi 10 Seattle Enterprise
|
Bug in Delphi XE6 RESTResponseDataSetAdapter?
1. Sep 2014, 00:22
Hallo Zusammen,
ich habe einen zumindest bei mir reproduzierbaren Fehler entdeckt.
Ich hab ein neues Mobile Android Projekt angelegt die die Komponenten auf die Form gesetzt:
RESTClient, RESTRequest, RESTResponse, RESTResponseDataSetAdapter und ClientDataSet
Alles miteinander verbunden. Wenn ich RESTResponseDataSetAdapter.TFieldDefs öffne eine TFieldDef Item
hinzufüge und es gleich wieder lösche, so stürzt Delphi ab und meine Arbeit ist beim Teufel.
Kann das bitte jemand nachstellen ob nur ich das Problem habe oder ob es generell ein Problem ist.
ACHTUNG nur in einem neuen Projekt!
In diesem Zusammenhang suchte ich ursprünglich nach einer Lösung für das folgende Problem:
Ich habe einen DataSnap-Server erstellt welcher über eine Methode ein TDBXReader liefert.
Delphi-Quellcode:
function TServerMethods1.GetGruppen: TDBXReader;
var comm: TDBXCommand;
begin
EConnection.Open;
comm := EConnection.DBXConnection.CreateCommand;
comm.CommandType := TDBXCommandTypes.DbxSQL;
comm.text := 'SELECT * FROM GRUPPEN';
if (not comm.IsPrepared) then comm.Prepare;
result := comm.ExecuteQuery;
end;
In RESTClient habe ich die BaseUrl angegeben und in RESTRequest die resource. Wenn ich per
Rechtsklick auf RESTRequest- ausführen klicke, sehe ich unter RESTResponse.content die Jason Tabelle.
Code:
{"result":[{"table":[["GRUPPENID",6,0,0,0,4,4,0,false,false,0,false,false],["GRUPPENNAME",1,1,0,0,21,20,0,false,false,0,false,false]],"GRUPPENID":[14,10,11,12,16,17,18,21,26,25,27,28,29,30,32,34,37,38],"GRUPPENNAME":["05. Absetzer","03. Sattel","01. Dreiachser","04. Abroller","06. Radlader","07. Tankwagen","08. Bagger","10. Alle LKW","02. Vierachser","09. Kleintransporter","11. Dumper","12. Oldies","16. abgemeldet","14. Ersetzte Ger\u00E4te","13. PlanierRaupe","15. Puchheim","Container","Kipper"]}]}
RESTResponseDataSetAdapterResponse ist verbunden mit RESTResponse und mit ClientDataSet.
Jetzt hätte ich erwartet dass ich die Felder ClientDataSet.FieldDefs abrufen kann. Doch ich bekomme
immer nur ein Feld "result" vom Type TWideStringField auch über Live Binding sehe ich die Felder nicht.
Hat jemand eine Idee?
Gruß Kostas
|