Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TMSFMGrid Columns (https://www.delphipraxis.net/171500-tmsfmgrid-columns.html)

stahli 8. Nov 2012 23:46

TMSFMGrid Columns
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich binde ein ClientDatset (das an FB gebunden ist) an ein TMSFMGrid.
Nun möchte ich die Spalte ID ausblenden und habe im CDS das Feld Visible=False gesetzt.

Im Designer hat das einen Effekt auf die Beschriftung.
Zur Laufzeit keinen.

Man kann zwar einzelne Felder in das Grid binden, aber das kann doch nicht der einzige Weg sein - oder?
Außerdem gibt es dann einen Zugriffsfehler wegen dem Blobfeld.

Kann jemand helfen?

blondervolker 9. Nov 2012 07:21

AW: TMSFMGrid Columns
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo,

wenn es ein DBGrid sein sollte,mache ich es ganz einfach.
Ich entferne lediglich Column0,oder2,3 usw.

Hab mal 2 Bilder mit drangeklatscht...:-D

Union 9. Nov 2012 07:27

AW: TMSFMGrid Columns
 
Willkommen in der wunderbaren Welt von FM und LiveBindings :(

blondervolker 9. Nov 2012 07:37

AW: TMSFMGrid Columns
 
Hab meine "Links" mal durchgeschaut...

http://www.youtube.com/watch?v=4Id4fHgNIdo

Delphi Programming Tutorial #78 - FireMonkey: Visual LiveBindings:thumb:

stahli 9. Nov 2012 18:40

AW: TMSFMGrid Columns
 
Liste der Anhänge anzeigen (Anzahl: 1)
Oh Mann! :shock:

Man muss also über die BindingList, die Bindung zum Grid auswählen und über den Objektinspektor "Columns" auswählen.
Dann kann man persistente "Felder" (bzw. Links) anlegen und die nicht benötigten wieder löschen. Dann wird das Ganze schon mal ziemlich unübersichtlich im Binding-Designer (siehe Bild).
Warum werden nicht einfach Visible=False-Felder ignoriert???

(Nachträglich Links hinzufügen wird schon wieder umständlich.)

In meinem Beispiel gibt es dann Schutzverletzungen wegen dem BlobFeld.
Kommischerweise funktioniert es mit dem Feld, wenn man den normalen Link auf alle Felder ("*") verwendet.

Die Beispiele von Emba sind ja nett, aber praxistauglich scheint das Ganze wirklich nicht zu sein wenn man auch auf ein paar Details achten muss und die Satndardbindung nicht reicht.

Kann ja sein, dass ich bei meinen Tests nicht alles ganz richtig versuche, aber so eine Menge Schutzverletzungen...??? :wall:

Union 9. Nov 2012 20:58

AW: TMSFMGrid Columns
 
Naja, wenn Du bei der CR7 nicht dabei warst dann kannst Du Dir ja die Videos dazu in ca. 2 Wochen mal reinziehen. Ich hab zwar fast alle Sessions live miterlebt, aber diesbezüglich auch nichts erfahren können.

Sir Rufo 9. Nov 2012 23:09

AW: TMSFMGrid Columns
 
Bislang habe ich von denen (Emba) auch nur Beispielcode gesehen, der irgendwie nach Mockup aussieht, aber mit der Realität nichts zu tun hat.

Geht man etwas tiefer fällt auch auf warum: Dann würde man nicht die tollen Features, sondern die doofen Bugs präsentieren.

Gerade aktuell von der CR7 gibt es ja u.a. Beispielcode von Malcolm Groves
http://www.malcolmgroves.com/blog/?p=1340

Den habe ich dann doch mal geladen und kompiliert. Hmmm, komisch dass der Navigator dort gar nicht aktiv ist. Ok, er hat einen eigenen DataAdapter implementiert, aber warum ist der Navigator da, wenn der gar nicht gebraucht wird?
Ich war ja jetzt nicht dabei und erklärt wird bislang auch nichts.

@Union Evtuell kannst du mir ja erklären, wie Malcolm es verkauft hat, dass da ein Navigator ohne Funktion auf der Form ist.

Was ich auf jeden Fall weiß, dass eine Liste mit 0 oder 1 Eintrag gebunden an ein Grid eine üble Exception raushaut, wenn man mit dem Navigator einen Eintrag hinzufügt (das ist schonmal komisch, denn der erste Datensatz ist nicht sichtbar) und dann mit dem Navigator zum nächsten/vorherigen Eintrag gehen möchte.

Das würde ich auch nicht zeigen wollen :roll:

Union 9. Nov 2012 23:20

AW: TMSFMGrid Columns
 
Da ging es um MVVM. Dass dann auch was visuell zu sehen war ist mir gar nicht so aufgefallen. Absolute Trennung von UI, Code und Daten mit klaren Schnittstellen und stark eingeschränkter Visibilty. Theoretisch wieder mal eine Super-Methode für Multiplatform-Entwicklung. In der Praxis natürlich irrsinnig aufwändig. Zum Schluss war ich enttäuscht, weill das eigentlich Ziel, die UIs beliebig einzusetzen und auszutauschen, gar nicht demonstiert wurde. Ich glaube die mussten alle in FM präsentieren, auch wenn es nix damit zu tun hatte.

Am Besten hat mir Brian Long gefallen, der einige alte und neue IDE-Shortcuts präsentierte: IDE Productivity Tips & Techniques. Der war als einziger ehrlich. "Das erste was ich bei einer neuen RAD-Version mache, ist das Error-Insight auszuschalten. Es funktioniert nämlcih von Anfang an nicht, obwohl es vielleicht eine nette Idee war." usw.

Ich dachte die drehen dem gleich den Ton ab ;)

stahli 11. Nov 2012 18:28

AW: TMSFMGrid Columns
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier gibt es ein interessantes Video, das doch wieder Lust darauf macht, FM und das TMSGrid einzusetzen: http://edn.embarcadero.com/article/42666

(Meine in der ersten Verärgerung entstandene Überlegung, den Kauf rückabzuwickeln, verwerfe ich mal wieder. Allerdings besteht wohl noch einiger Bedarf an guten Tutorials (die auch mal etwas tiefer gehen!)) und Updates, die die gröbsten Fehler abstellen. Ich hoffe, dass wir damit nicht allein gelassen werden und die neue Arbeitsweise so effektiv wird, wie es immer angedeutet wurde...)

Die Probleme, die ich bei der Verwendung habe liegen weniger beim FM als viel mehr beim DataBinding, das ich für einen generell fragwürdigen und derzeit viel zu fehlerbehafteten Ansatz halte.
Dass es bei den FM-Controls an ein paar Stellen noch hakelt, ok damit kann man notfalls leben.

Aber wie viel Lust soll man denn bekommen, mit dem DataBinding zu arbeiten, wenn man ständig Fehler wie im Bild bekommt (mit den mitgelieferten Demoprojekten!)?
Wenn man mit FM arbeiten will, gibt es ja aber keine sinnvolle Alternative zum DataBinding. Also ist das Gesamtpaket eigentlich so mangelhaft, dass man es zurückgeben müsste.

Ist mit einer kurzfristigen Fehlerbereinigung zu rechnen???
Emba müsste ja nur mal die eigenen Demos auf Herz und Nieren testen und die dabei entstehenden Fehler bereinigen!


Mal einige Fragen in dem Zusammenhang:

- FireBird unterstützt ja noch keine logischen Felder... Kann ich im ClientDataSet dennoch ein logisches Feld vorgaukeln (1=True), so dass DataBinding und das Grid von einem logischen Feld ausgehen?
- Liege ich richtig, das Binding von "Visible=False"-Feldern als Bug zu bezeichnen (Logisch ist das komische Verhalten jedenfalls nicht)? Kann man von einem zeitnahem Bugfix ausgehen? In einem Demo setzt TMS die ID-Spalte einfach auf ReadOnly, (automatisches) ausblenden wäre aber m.E. sinnvoller.
- In der TMS-Demo LiveBindingsLookupXE3 sind die Binding-Controls in der DFM nicht vorhanden (nur in der Pas). Kann das jemand bestätigen oder ist das nur bei meiner Installation?

stahli 13. Nov 2012 23:33

AW: TMSFMGrid Columns
 
Liste der Anhänge anzeigen (Anzahl: 3)
:wall::wall::wall:

Ich habe mal versucht, das Problem einzugrenzen und ein CDS mit einem logischen Feld erstellt.
Das Databinding scheitert, wenn man einen Wert in dem Feld speichern will (CheckBox).

In der Data.DBConst sind die Ressourcen auf deutsch hinterlegt.
TBooleanField.SetAsString in Data.DB prüft auf englische Wertebezeichner.
Nun habe ich in in dem persistenten BooleanField DisplayValues auf "TRUE;FALSE" gesetzt, was an der Stelle schon mal hilft.

Allerdings kann ich im Feld rechts neben der Checkbox jetzt keinen Text eintragen bzw. speichern, da dieser dem BooleanField zugeordnet wird!!!???

Ich könnte echt :kotz:

Hat jemand bei Emba das DataBinding überhaupt mal ernsthaft getestet???

Matthias hatte auch keine Zeit, vernünftig auf meine Fragen zu antworten. Ich soll einen Eintrag in der QC schreiben oder mich an den Support wenden.

In der QC habe ich zumindest einen Eintrag geschrieben, finde das aber unübersichtlich insbes. bei geringen Englischkenntnissen.
Einen Supportvertrag habe ich auch nicht. Gibt es da einen deutschkundigen Ansprechpartner?
Aber überhaupt ist das Blödsinn, da man dann eine Standleitung bräuchte und die Fehlerbereinigung bestimmt Monate oder Jahre braucht.
Einige Fehlerberichte habe ich auch schon gesendet, wenn die IDE darum gebeten hat.

Ich werde den Vertrag doch rückabwickeln. Schade eigentlich!

So. Ich nehme jetzt erst mal meine Tropfen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:18 Uhr.
Seite 1 von 2  1 2      

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