![]() |
TDBGrid unter FireMonkey
Hallo,
ich bin gerade daran das Konvertieren eines internen Buchhaltungsprojektes auf Firemonkey für die Verwendung unter OSX vorzubereiten. In dem Projekt werden ausser den WPTools für das Reporting nur standard Komponenten verwendet, hauptsächlich DBEdits und DBGrids. (Der wichtigste Code ist in dem Projekt sowieso nur das Reporting und die Kalkulation, Steuer etc) Als grösstes Problem sehe ich die TDBGrids. Unter FireMonkey wird hier ja ein standard Grid mit DataBinding verwendet. Ist das empfehlenswert? Was mir nämlich daran nicht gefällt, ist die Tatsache, dass das Binding script von einer Art Wizard in der IDE erstellt wird und sich dann nicht mehr ändern kann. An ein DBGrid kann ich aber einfach jede Datasource "anhängen" und es geht - und stabil ist das auch? Wie löst Ihr das Problem? (Bin schon am überlegen ein TDBGrid zu programmieren ...) Grüsse, Julian |
AW: TDBGrid unter FireMonkey
Dann besser eine alternative Art der Datenanbindung oder etwas "Fertiges".
|
AW: TDBGrid unter FireMonkey
Grids sind echt so eine Sache unter FMX.
Ich habe schon einiges im Einsatz: TMS (geht so); WolltoWoll kostet viel und ohne Quellcode -> bis ich soweit war gabs schon wieder ein Delphiupdate und die Komponente ging nicht mehr .... Mach ein schönes Grid inclusive Spalteneditor und ohne Visuell Bindung und ich bin dein erster Kunde! |
AW: TDBGrid unter FireMonkey
Ja das ist leider eine Art Vor- und Nachteil, wo die Nachteile erstmal zu überwiegen scheinen.
Man kann, und ich finde man sollte, das durchaus per Code machen, und nicht im Designer. Nur für sehr simple Anbindungen habe ich den Designer benutzt, Alles was der kann geht auch per Code. ![]() Rollo |
AW: TDBGrid unter FireMonkey
Vielen Dank für die Anregung. Für mich käme auch nur das Erstellen der Bindings im Code in Frage - doch für ein Grid ist das echt uferlos.
Ich habe vor einem Jahr mal weiter in dem Binding code geforscht, da ich ein Tool bauen wollte, das mittels dieser Technologie eine Tabelle in einem Textdokument an eine Datenbank anhängt - das geht leider nicht. Im Gegensatz zu den guten alten DataLinks - damit war es möglich. Das Problem mit DataBindings sehe ich darin, dass der Datenempfänger nicht das Datenfeld "sieht" und properties dort auslesen kann. Das originale DBGrid nutzt diese Möglichkeit u.a. zur Anpassung der Spaltenbreite und zur Anzeige des Titels. Ich werde probieren ein einfaches DBGrid zu programmieren, welches dann unter FMX und VCL läuft. Viele Grüsse Julian |
AW: TDBGrid unter FireMonkey
Ich würde kein spezielles DBGrid entwickeln, sondern eher eine flexible Lösung um Datenmengen allgemeiner Form (z.B. auch Collections u.ä.) anzubinden.
|
AW: TDBGrid unter FireMonkey
Das FMX Binding funktioniert schon ganz gut, das ist aber dann für das Standard-Grid ohne Sonderfunktion.
Die Frage wäre eigentlich wie sieht der Performance aus ? Wenn du große Datenmengen hast würde ich es vielleicht auch mit 3rd Party Komponenten machen. Rollo |
AW: TDBGrid unter FireMonkey
Das FMX-Grid ist einfach klasse...
Außerdem kann es Deine Daten auch darstellen, wenn die Datenbank zu ist... Deine Datenbank kann einfach die Daten in das Grid.Model laden und nach einem EndUpdate - Peng alles dar... Viel schneller... Mavarik |
AW: TDBGrid unter FireMonkey
Hallo,
Zitat:
Aber ja, ich stimme Dir da zu, das FMX Grid ist ziemlich gut. Daher beruht meine Neuimplementierung eines DBGrids auch auf dem FMX Grid und einem minimal angepassten GridModel sowie einem passenden DataLink. Sie ist inzwischen fast einsatzbereit. Das DataBinding sehe ich zwiespältig. Der Aufwand, der für das Anbinden eines Grids (bei einer Auswahl an Feldern) intern getrieben werde muss, ist meiner Meinung nach zu hoch. Einerseits ist es zwar toll Daten an irgendwelche Eigenschaften zu übergeben, auf der anderen Seite merke ich aber auch, dass die Daten eines TEdits z.b. nicht gleich nach Eingabe und Verlassen des Feldes übergeben werden. Möglicherweise mein Fehler.... Ich plane "mein" DBGrid in seiner Basis Ausstattung über ![]() Viele Grüsse, Julian |
AW: TDBGrid unter FireMonkey
Heute eingebaut:
- Möglichkeit um Indikator Spalte anzuzeigen die nicht horizontal scrollt, sondern nur vertikal - Möglichkeit Grids zu verknüpfen, sie scollen dann synchron - diverse Optimierungen damit Das Grid mit dem DataSet und per data binding angebundene Edits synchronisiert. Für das 1. Release fehlt noch die Registrierung sowie Designtime Editor. Grüsse, Julian |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:56 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