Forum: Datenbanken
by himitsu,
28. Mär 2015
Wenn eine Variable nicht erfasst werden kann, dann mit einer TempVariable dazwischen arbeiten.
Mit Owner meinte ich das so
oQuery := TFDQuery.Create(nil); // in der Methode mit Try-Except gesichert und danach wird DateSnap der Owner des Result
oConn := TFDConnection.Create(oQuery); // die FDQuery übernimmt die Kontrolle der Freigabe
Hier kommt doch nur noch ConnectionDefName von...
Forum: Datenbanken
by himitsu,
27. Mär 2015
Jupp, mit 32 Bit ist nach 2 GB Schluß (3,8 GB mit entsprechenden Hacks und wenn alles dafür kompatibel ist)
Hier ist nur der Zugriff auf GetBauDataSet abgesichert, aber der Zugriff auf das DataSet ist nicht sicher, da der erst nach dem Function-End im Code vom DataSnap für eine ungewisse Dauer auftritt. (mindestens solange die Übertragung dauert und maximal, solange die Kopie im Client...
Forum: Datenbanken
by himitsu,
26. Mär 2015
Jupp, daher machen wir das übertragen der DataSets halt "manuell".
CriticalSections und Dergleichen bekommt man nicht in den Code, da die Daten erst nach Ende der Servermethoden übertragen werden und bei DataSets auch noch stückchenweise. (nur so viel, wie der Client grade braucht)
Daher erstellen wir und ein ClientDataSet/MemDataset, nutzen den DataSnapReader zum Kopieren der FeldStruktur...
Forum: Datenbanken
by himitsu,
26. Mär 2015
Nein, in den ServerMethods steckt ja erstmal nur der Zugriffscode für die Clientenanfragen-
Von wo letztendlich die ausgelieferten Daten kommen, ist dabei erstmal egal.
Du mußt nur eventuell auf das Threading achen, also daß alles Threadsave ist,
Ich hatte damals den autogenerierten Servercode genommen, das selber in eigene Klassenstrukturen umkopiert und bissl angepasst. (genauso...