Skip to main content
Skip table of contents

TBeAltGrid

TBeAltGrid

Control zum Anzeigen der Datensätze einer Datenbank-Tabelle oder einer Memory-Table.

Eigenschaften


AutoCalcSum:L

(default) True = Summen-Funktion ausführen und in der Fuß-Zeile (falls vorhanden) anzeigen

AutoRefreshTime:N

Gibt das Aktualisierungs-Intervall (in Sekunden) des Browsers an, 0 = keine Aktualisierung

Columns:O

Eine Liste mit Elementen vom Typ TBeColumn. Über die Funktion CollAdd(...) ist es möglich im Codeblock Browser-Spalten der Liste hinzuzufügen.

DataSource:O

Standard Datenquelle für die Anzeige im Grid

DbRelList:O

Datenbank-Relationen

DeleteLock:L

(default)
False = Browser akzeptiert keine Eingabe von [Entf] der Tastatur
True = Aktueller Datensatz kann gelöscht werden

InsertLock:L

(default)
False = Browser akzeptiert keine Eingabe von [Einfg] der Tastatur
True = Ein Datensatz kann hinzugefügt werden

ExecLoaded:L

(writeonly) Initialisiert Popup-Menü und Image-List

ExecRefreshSortMarks:L

Aktualisiert die Sortierung der Browser-Spalten abhängig von der aktuellen Sortierung der Datenquelle

GridOrder:C

Sortierung der Browser-Spalten

ID:C

Identifiziert die Browser-Definitionen

Hinweis: Es können während der Laufzeit auch andere vordefinierte Browser-Definitionen geladen werden, indem man die gewünschte ID setzt und anschließend die Browser-Definitionen durch setzen der Eigenschaft ReadWriteProps auf 0 neu lädt.

ReadWriteProps:N

0 = Browser-Definitionen laden
1 = Aktuelle Browser-Definitionen in die DabFIL speichern

Hinweis: Vor dem Setzten dieser Eigenschaft muss die ID der Browser Definitionen gesetzt werden und das registrierte Dataset auf Active gesetzt werden, da dieser sonst keine Spalten anzeigt und auch keine Einstellungen vorgenommen werden können.

RecalcSum:L

(readonly) Berechnet Summen-Codeblöcke neu

Refreshing:L

(readonly) Gibt an, ob sich das Grid im Refresh-Zustand befindet

RegisterDataset:O

Registriert das zugewiesene DataSet

UnRegisterDataset:O

Entfernt die Registrierung für das zugewiesene DataSet (falls vorhanden)

SelectedField:O

Bestimmt das aktuell ausgewählte Feld

SelectedIndex:N

Index der aktuell ausgewählten Spalte

ShowEditMenus:N

Bestimmt ob im Kontextmenü die Einträge "Neu" und "Löschen" angezeigt werden
0 = Kein Eintrag
1 = Eintrag "Neu"
2 = Eintrag "Löschen"
3 = Beide Einträge

ToggleBooleanOptions:L

Gibt an ob logische Felder im Browser per Mausklick umgeschalten werden können

CbChangeOrder:L

Sortierung per Spalten-Klick (nur wenn das DataSet eine Memtable oder Query ist)

CbPrimarySortField:C

Hier kann ein Name eines Feldes angegeben werden, das immer bei der Sortierung über einen Spalten-Klick berücksichtigt werden soll. Dieses Feld beeinflusst auch das OrderBy von MemTables und Querys die dem TBeAltGrid zugewiesen wurden.

UseOnlyRegisteredDataSets:L

Bei True werden nur noch Tabellen berücksichtigt die dem DataSource des Grids zugewiesen ist oder per RegisterDataset im Grid registriert wurden.
Erhöht die Performance bei der Anzeige des Grids.
Default = False


Funktionen und Methoden


CbRefreshDynamicCaption()

Aktualisiert Spalten-Überschriften

CbRefreshShowOnlyWhen()

Aktualisiert anzuzeigende Browser-Spalten

Beispiel

CODE
//##############################################################################
//##############################################################################
// Online-Hilfe Beispiel für die Klasse 'TBeAltGrid'
//##############################################################################
//##############################################################################

| oForm, oGrid, oPanel, oInfoPanel, oEditOutput, oButton, oDS, oQuery |

//##############################################################################
//##############################################################################
// Funktionen
//##############################################################################
//##############################################################################

//******************************************************************************
// Gibt den Wert der übergebenen Eigenschaft zurück.
// Ist die Eigenschaft ein Objekt wird nur der Klassenname zurückgegeben
// @Result: string
//******************************************************************************
function GetValStr(o)
   if IsObject(o) then
      Result := '[Object] ' + iif(o <> nil, ClassName(o), '<NIL>'),
   else
      Result := '[Value ] ' + ArrToStr({o}),
   endif,
end,

//##############################################################################
//##############################################################################
// Eventhandler
//##############################################################################
//##############################################################################

//******************************************************************************
// Zeigt eine Liste der wichtigen Grid-Eigenschaften an
// @Result: null
//******************************************************************************
function QueryProperties(Sender)
   startseq,
      oEditOutput.Text := 'Columns:              ' + GetValStr(oGrid.Columns)              + crlf +
                          'DataSource:           ' + GetValStr(oGrid.DataSource)           + crlf +
                          'DbRelList:            ' + GetValStr(oGrid.DbRelList)            + crlf +
                          'DataModule:           ' + GetValStr(oGrid.DataModule)           + crlf +
                          'ShowEditMenus:        ' + GetValStr(oGrid.ShowEditMenus)        + crlf +
                          'AutoRefreshTime:      ' + GetValStr(oGrid.AutoRefreshTime)      + crlf +
                          'Refreshing:           ' + GetValStr(oGrid.Refreshing)           + crlf +
                          'GridProp:             ' + GetValStr(oGrid.GridProp)             + crlf +
                          'RowColorBlock:        ' + GetValStr(oGrid.RowColorBlock)        + crlf +
                          'DeleteLock:           ' + GetValStr(oGrid.DeleteLock)           + crlf +
                          'InsertLock:           ' + GetValStr(oGrid.InsertLock)           + crlf +
                          'ExecLoaded:           ' + GetValStr(oGrid.ExecLoaded)           + crlf +
                          'RegisterDataset:      ' + GetValStr(oGrid.RegisterDataset)      + crlf +
                          'UnRegisterDataset:    ' + GetValStr(oGrid.UnRegisterDataset)    + crlf +
                          'ExecRefreshSortMarks: ' + GetValStr(oGrid.ExecRefreshSortMarks) + crlf +
                          'SelectedField:        ' + GetValStr(oGrid.SelectedField)        + crlf +
                          'SelectedIndex:        ' + GetValStr(oGrid.SelectedIndex)        + crlf +
                          'AutoCalcSum:          ' + GetValStr(oGrid.AutoCalcSum)          + crlf +
                          'RecalcSum:            ' + GetValStr(oGrid.RecalcSum)            + crlf +
                          'ToggleBooleanOptions: ' + GetValStr(oGrid.ToggleBooleanOptions) + crlf +
                          'GridOrder:            ' + GetValStr(oGrid.GridOrder)            + crlf +
                          'CbChangeOrder:        ' + GetValStr(oGrid.CbChangeOrder)        + crlf +
                          'ID:                   ' + GetValStr(oGrid.ID)                   + crlf +
                          '',
   onerror,
      Meld(GetErrorText()),
   stopseq,
end,

//##############################################################################
//##############################################################################
// Oberflächen-Funktionen
//##############################################################################
//##############################################################################

//******************************************************************************
// InitForm lädt das Formular in Abhängigkeit des Owners
// @Result: null
//******************************************************************************
function InitGui()
   oForm                          := CreateObject('TFormEx', 'GridTestForm'),
   oForm.Width                    := 800,
   oForm.Height                   := 600,

   oQuery                         := CreateObject('TBeAdsQuery', 'Query', oForm),
   oQuery.SQL                     := 'SELECT TOP 100 * FROM "DAB065.ADT"',
   oQuery.Active := True,

   oDS                            := CreateObject('TDataSourceEx', 'DataSource', oForm),
   oDS.DataSet                    := oQuery,

   oPanel                         := CreateObject('TPanel', 'PanelLeft', oForm, oForm),
   oPanel.Width                   := 400,
   oPanel.Align                   := alRight,
   oPanel.Caption                 := '',
   oPanel.BevelOuter              := bvNone,

   oInfoPanel                     := CreateObject('TBeInfoPanel', 'InfoPanel', oForm, oPanel),
   oInfoPanel.Align               := alTop,
   oInfoPanel.Caption             := 'Eigenschaften / Werte des Grids',

   oEditOutput                    := CreateObject('TBeEdit', 'EditOutput', oForm, oPanel),
   oEditOutput.Align              := alClient,
   oEditOutput.AlignWithMargins   := True,
   oEditOutput.Margins.Top        := 0,
   oEditOutput.Font.Name          := 'Lucida Console',
   oEditOutput.WantReturns        := True,
   oEditOutput.WordWrap           := True,
   oEditOutput.Text               := '',

   oButton                        := CreateOBject('TBeBitBtn', 'Button', oForm, oPanel),
   oButton.Align                  := alBottom,
   oButton.AlignWithMargins       := True,
   oButton.Margins.Top            := 0,
   oButton.Caption                := 'Auswerten',
   oButton.ImageIndex.IndexNormal := 148,
   AssignEvent(oButton, 'OnClick', 'QueryProperties'),

   oGrid                          := CreateObject('TBeAltGrid', 'GridMain', oForm, oForm),
   oGrid.Align                    := alClient,
   oGrid.CbChangeOrder            := True,       // Sortierung per Spalten-Klick aktivieren
   oGrid.DataSource               := oDS,
   oGrid.RegisterDataset          := oQuery,
   oGrid.ExecLoaded               := True,       // Damit im Kontextmenü Icons angezeigt werden
   oGrid.Id                       := '@BRO_TES',
   oGrid.ReadWriteProps           := 0,          // Browser-Definitionen laden
end,

//##############################################################################
//##############################################################################
// Hauptprogramm
//##############################################################################
//##############################################################################

startseq
   InitGui(),
   ShowModal(oForm),
onerror
   MessageDlg(GetErrorText()),
   DestroyObject(oForm),
stopseq,

oForm

Weitere Verknüpfungen


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.