Struktur aus flachen Datensätzen aufbauen
Zeigen Sie eine Sicht oder eine Pass-Through-Abfrage ohne übergeordneten Schlüssel als Struktur an, gruppiert nach den Werten einiger ihrer Felder.
Voraussetzungen: WKL Forms Object Library 1.23 oder höher.
Lösungsüberblick
GroupFields listet die Felder auf, nach denen gruppiert wird, das äußerste zuerst, getrennt durch Semikolons. Die
Liste legt auf jeder Ebene je eindeutigem Wert einen Gruppenknoten an; die Datensätze werden zu den Blättern.
ParentField darf leer bleiben.
Umsetzung
With Me!List1.Object
.RecordSource = "ptqAufgabenFlach" ' pass-through query to SQL Server
.KeyField = "AufgabeID"
.ParentField = ""
.TextField = "Anweisung"
.GroupFields = "Standort;Gebaeude;Etage"
End With
Hinweise
- Jeder Gruppenknoten zeigt seinen Wert als Text (
(leer)für Null oder leeren Text) und die Anzahl seiner Datensätze als QuickInfo. - Die Gruppen einer Ebene stehen nach ihrem Wert geordnet, verglichen nach seinem Typ: Datumswerte und Zahlen als solche, nicht als Text. Die Richtung bestimmt
SortOrderfür alle Ebenen: MitwsoAscending(Vorgabe) steht der älteste Tag oben, mitwsoDescendingder neueste. Eine sortierte Spalte (SortDirection) ordnet nur die Datensätze innerhalb einer Gruppe, weil Gruppenknoten in den Spalten keinen Wert haben. Ausnahme ist die Spalte vonTextField, die den Gruppenwert als Text zeigt: Ab Release 1.62 ordnet eine Sortierung dieser Spalte die Gruppen nach ihrem Wert in der Richtung der Spalte. Eine verborgene Spalte mit dem Gruppenfeld ändert die Reihenfolge der Gruppen nicht. - Gruppen stehen für keinen Datensatz: Sie lassen sich nicht bearbeiten, umbenennen oder löschen; Hinzufügen, Kopieren und Verschieben sind abgeschaltet; Summen der Fußzeile zählen nur Datensätze.
- Gruppierte Datensätze werden immer vollständig geladen; die Suche läuft daher über die geladenen Knoten, ohne die Quelle erneut abzufragen. Ein
Filterfragt die Datenherkunft weiterhin ab. - Ist zusätzlich
ParentFieldgesetzt, bleibt ein Datensatz mit einem vorhandenen übergeordneten Datensatz unter diesem. - Aufgeklappte Gruppen und die Auswahl überstehen
Requery, weil Gruppenschlüssel aus den Werten ihres Pfads gebildet werden. - Den größten Teil der Zeit von
Requerybei gruppierten Datensätzen beansprucht das Lesen der Abfrage; das Bilden der Gruppen fügt wenig hinzu.
Verwandte Themen
de/wiki/msaccess/comctl/how-to/group-flat-records.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille