Re: Grid und RecordSource Zuweisung
- From: Bernhard Sander <fuchs@xxxxxxxxxxxxxx>
- Date: Mon, 26 Jun 2006 15:52:33 +0200
Hallo Roland,
die Tabelle erstelle ich das erste mal beim ThisForm.Load trotzdem stimmenDas überblicke ich von hier aus nicht, warum es da nicht funktioniert, da müsste
die Zuordnungen nicht.
man tiefer in deinen Quellcode schauen.
In der Form selber kann der Benutzer dann Filtervorgaben ändern.Wenn die Abfrage erneut ausgelöst wird, dann ist für einen kurzen Moment die Tabelle komplett weg. Die RecordSource zuzuweisen baut zwangsläufig das Grid wieder neu auf. Wenn die Spalten zufällig in der gleichen Reihenfolge sein sollten, wie die Felder in der Tabelle, übernimmt Foxpro die Spalteneinstellungen. Ansonsten werden die Spalten frisch verteilt. (Zumindest so ähnlich. Im wesentlichen macht Foxpro ziemlich viel eigene Sachen an dieser Stelle.) Wenn du mal ein Grid hast, bei dem du mit den Spalten zufrieden bist, dann kannst du die Tabelleninhalte dadurch austauschen, dass du die Tabelle ZAPs und die SQL-Ergebnisse an die Tabelle wieder anfügst und auf keinen Fall eine Zuweisung an grid.RecordSource machst! Die Zuweisung an grid.RecordSource ist sehr häufig tödlich für die Spaltenaufteilung.
Dann wird die Abfrage erneut ausgelöst. Dem GRID wird zuvor die RecordSource
entzogen und nach der Erstellung der Tabelle wieder zugewiesen.
Das geht.
Siehe auch die Hilfestellung, "RecordSource property":
When you want to preserve the previous settings, for example, in scenarios when the new record source has the same structure as the previous one, you can use the SPACE( ) function set the RecordSource property temporarily to SPACE(0).
Using SPACE(0) might not preserve all the grid settings that you want. You might need to reset some settings in code after setting the RecordSource property.
Da hab ich mich auch schon viel geärgert. Mittlerweile hab ich das Problem dadurch in den Griff bekommen, dass ich eine Zuweisungsmethode für die Recordsource angelegt hab (RecordSource_assign). Wenn die RecordSource gelöscht wird, dann speichert das Grid die Spaltenaufteilung. Wenn die Recordsource gesetzt wird, dann baut das Grid mit Hilfe einer geeigneten Spaltendefinition das Grid wieder zusammen und restauriert die Spaltenaufteilung. Meine Versuche, mit im Designer erstellten Grids glücklich zu werden, sind im wesentlichen fehlgeschlagen. Ich arbeite nur mit remote-Daten und da werden die Cursor laufend neu aufgebaut.
Gruß
Bernhard Sander
.
- References:
- Re: Grid und RecordSource Zuweisung
- From: Holger Vorberg
- Re: Grid und RecordSource Zuweisung
- From: Bernhard Sander
- Re: Grid und RecordSource Zuweisung
- Prev by Date: Re: FULL OUTER JOIN funktioniert nicht
- Next by Date: Re: Session-Objekt im Class-Designer
- Previous by thread: Re: Grid und RecordSource Zuweisung
- Next by thread: Re: Grid und RecordSource Zuweisung
- Index(es):
Relevant Pages
|
Loading