Navigation:  Klassen > bBrowser >

bBrowser:RecordGroup

Diese Seite drucken    Vorherige SeiteZurück zum Anfang des KapitelsNächste Seite

Zweck

Datensatzgruppen, mit deren Hilfe die Datensätze im bBrowser gruppiert werden.

Klasse

bBrowser

Typ

Access

Datentyp

bRecordGroup

Beschreibung

Mit der Definition von Datensatzgruppen können die Datensätze im bBrowser gruppiert angezeigt werden. Voraussetzung ist, dass die Datensätze nach dem Gruppenmerkmal sortiert sind. Die Datensätze werden beim Durchlaufen des Datenserver automatisch den definierten Datensatzgruppen zugeordnet.

 

Die Datensatzgruppen können in der Datensatzgruppenspalte mit der Maus geöffnet und geschlossen werden. Zusätzlich können Datensatzgruppen mit der Tastenkombination STRG + '+' geöffnet und mit der Tastenkombination STRG + '-' geschlossen werden.

 

RecordGroupsInBrowser

bBrowser mit Datensatzgruppen

 

Die Datensatzgruppenspalte wird automatisch eingeblendet, wenn Datensatzgruppen definiert sind. Innerhalb der Datensatzgruppenspalte kann für jede definierte Ebene (bRecordGroupLevel) ein Info-Wert eingeblendet werden. Der Info-Wert kann mit dem Zugriff bRecordGroupLevel:GroupInfo definiert werden.

 

RecordGroupInfo

bBrowser mit Datensatzgruppen und Info-Werten

 

Wenn der Datenserver keine Datensätze für Gruppenköpfe enthält, dann können virtuelle Gruppenkopfzeilen mit dem Zugriff bRecordGroupLevel:GroupHeader definiert werden. Eine virtuelle Gruppenkopfzeile erstreckt sich über die gesamte Breite einer Datenzeile. Mit Hilfe der Option BRGHO_SCROLLHORIZONTAL kann die Gruppenkopfzeile so eingestellt werden, dass diese beim horizontalen Scrollen ebenfalls gescrollt wird. Als Vorgabe wird die Gruppenkopfzeile horizontal nicht mit gescrollt.

 

RecordGroupHeader

bBrowser mit Datensatzgruppen und virtuellen Gruppenkopfzeilen

 

Anmerkungen

Nachdem Datensatzgruppen im bBrowser definiert wurden, muss die Methode bBrowser:Recalculate() aufgerufen werden. Sofern dem bBrowser bereits ein Datenserver zugewiesen ist, muss zusätzlich noch die Methode bBrowser:Refresh() aufgerufen werden.

Beispiele

In dem folgenden Beispiel wird eine Datensatzgruppe definiert, mit der die Nachnamen (Feld LASTNAME) alphabetisch nach dem ersten Buchstaben gruppiert werden. Vorausgesetzt wird, dass der bBrowser bereits initialisiert ist und im Datenserver eine Sortierung auf das Feld LASTNAME aktiv ist.

 

LOCAL oBrowser           AS bBrowser
LOCAL oRecordGroupLevel  AS bRecordGroupLevel
LOCAL cGroupKey          AS STRING
LOCAL ocbGroupHeader     AS bCodeblock
LOCAL oGroupHeader       AS bRecordGroupHeader
LOCAL oFont              AS Font
LOCAL oGrid              AS bGrid
 
// Datensatzgruppierung initialisieren
oBrowser:RecordGroup:LevelList:Clear()
 
// Datensatzgruppierung: Level 1 initialisieren
cGroupKey := "SubStr(Server:LASTNAME, 1, 1)"
oRecordGroupLevel := bRecordGroupLevel{bCodeblock{cGroupKey, oBrowser:Server},;
                                       ,;
                                       NIL,;
                                       _Or(BRGLO_AUTOOPEN, BRGLO_GROUPLEASH, BRGLO_SERVERSEEK)}
oRecordGroupLevel:GroupRowHeight := 24
 
ocbGroupHeader := bCodeblock{"'Nachname ' + SubStr(Server:LASTNAME, 1, 1)",;
                             oBrowser:Server}
oGroupHeader := bRecordGroupHeader{ocbGroupHeader}
oRecordGroupLevel:GroupHeader := oGroupHeader
 
oGrid := bGrid{BGRID_OUTLINEHORIZONTAL, , , , , Color{COLORBLACK}}
oFont := self:oDCBrowser:GetDefaultFont()
oFont:Bold := True
oRecordGroupLevel:GroupView := bViewStyle{ ,;
                                           ,;
                                           BALIGN_LEFT + BALIGN_BOTTOM,;
                                           oFont,;
                                           oGrid}
 
self:oDCBrowser:RecordGroup:LevelList:Add(oRecordGroupLevel)
 
// Datensatzgruppierung: Browser neu berechnen und Daten einlesen,
// damit die Levels berücksichtigt werden
oBrowser:Recalculate()
oBrowser:Refresh()

Siehe auch

bBrowser:Recalculate()

bBrowser:Refresh()

bCodeblock

bGrid

bSample - RecordGroups

bRecordGroupHeader

bRecordGroupLevel

bViewStyle

 


Page url: http://www.YOURSERVER.com/index.html?bbrowser_recordgroup.htm