Der Grid-Designer dient innerhalb der Tabellenpflegeprogramme zur Gestaltung des Tabellenaufbaus. Dazu gehören die Auswahl von Datenfeldern, das Festlegen der Spaltenreihenfolge und die Definition von Feldeigenschaften.
Der Designer ist in drei Bereiche aufgeteilt:
Der linke Auswahlbereich über die Datentabellen hat die Form einer Baumstruktur. Jede Tabelle ist hierbei als ein eigener Ordner aufgeführt. Die jeweilige Haupttabelle als rotes Ordnersymbol. Öffnest Du die Ordner, werden die Variablen einer Tabelle untereinander in alphabetische Reihenfolge aufgelistet. Felder, die im Tabellendesign verwendet werden, sind durch einen Haken gekennzeichnet.
Auf der linken Seite befinden sich die Datentabellen, mit den zur Verfügung stehenden Variablen.
Das geht auch mit Doppelklick auf eine gewünschte Variable.
Willst Du eine Variable wieder aus den Spalten entfernen, klicke auf den linken Pfeil < .
Über die Positionspfeile rechts neben den Spalten kannst Du eine ausgewählte Variable in der Reihenfolge nach oben bzw. nach unten verschieben - in der Anzeige bewegst Du eine Spalte so weiter nach vorne bzw. an das Ende der Tabelle.
Wählst Du in den Spalten eine Variable aus, kannst Du diese anschließend konfigurieren. Hierfür stehen verschiedene Register zur Konfiguration zur Verfügung.
Der Tabellenaufbau wird zum hier dargestellten Programm konfiguriert.
Anzeige der Maskenbezeichnung
Über die Maskenart erfolgt die Steuerung von unterschiedlichen Tabellenformaten. Die Maskenart ist im Fenster "Optionen" des aufrufenden Programms definiert.
Über die Combobox kann im Designer eine neue Maskenart erstellt werden. Dies wird in einem eigenen Beitrag zu Maskenart beschrieben.
Anzeige des Benutzernamens
Anzeige der Benutzergruppe
Die Reihenfolgenummer entspricht der Spaltennummer. Dieser Wert wird automatisch beim Hinzufügen eines Feldes ermittelt und kann über die Pfeilsymbole < > verändert werden.
Entspricht einer Variablen in einer Datentabelle bzw. einem programmspezifischen Feld (lokale Variable), welche über die Baumstruktur ausgewählt werden kann. Neben dem Feld wird der Status des Datenfeldes angezeigt.
Jedem Feld kann eine individuelle Bezeichnung zugewiesen werden. Sie entspricht der Spaltenüberschrift und der Bezeichnung in den Ausgrenzungen. Wird ein neues Feld hinzugefügt, wird die Bezeichnung aus dem "Data Dictionary" vorbelegt. Die maximale Anzahl Zeichen der Spaltenüberschrift wird durch die Definition der Feldlänge im Data Dictionary vorgegeben.
Der hier hinterlegte Wert entspricht der Spaltenbreite und wird durch das Data Dictionary vorbelegt. Eine Veränderung ermöglicht das Maskenlayout zu beeinflussen. Sie hat keine Auswirkung auf das Datenbankformat.
Die Breite der Spalte wird flexibel auf den Dateninhalt angepasst. Die festgeschriebene Breite der Spalten wird dabei ignoriert. Ist der tatsächlich aufbereitete Dateninhalt schmaler als die festgeschriebene Breite, wird die Spalte daher entsprechend schmaler aufbereitet.
Anzahl der Nachkommastellen. Vorbelegung des Wertes durch das Data Dictionary. Auch hier handelt es sich nur um eine Variation in der Anzeige.
Vorsicht: Bei Feldern mit gefüllten Nachkommawerten kann eine Fehldefinition zum Verlust der Daten führen!
Bei jedem alphanumerischen Feld kann eine abweichende Textlänge zur Begrenzung der Stellenanzahl angegeben werden.
Die abweichende Textlänge, sofern definiert, wird auch im Gridexport berücksichtigt.
Handelt es sich bei einem Designelement um ein Feld, welches nicht aus der Haupttabelle stammt, sollte hier das entsprechende Bezugsfeld aus der Haupttabelle eingetragen werden. Die Zuordnung ermöglicht eine korrekte Anzeige von Referenzdaten aus verknüpften Tabellen.
Diese Möglichkeit steht nur für Felder in der Postgre zur Verfügung und erlaubt eine Verbindung aller Schlüsselfelder über eine Kurznr.
Über die Funktion "nächstes Feld" kann festgelegt werden, welches Feld in der Gridanzeige als nächstes automatisch ausgewählt werden soll. Auf diese Weise kann, unabhängig von der Reihenfolge der Spalten, ein Sprung von Feld zu Feld in einer Kette festgelegt, und damit die Datenerfassung erleichtert werden.
In unserem Beispiel aus der Positionserfassung soll, nach Eingabe der Artikelnummer, als nächstes die Bestellmenge automatisch markiert werden. Die Bestellmenge ist entsprechend als "Nächstes Feld" für die Artikelnummer konfiguriert.
Die Auswahl des nächsten Felds öffnet sich mit Klick auf die Feldsuche.
Im Grid springt die Markierung nach Erfassung der Artikelnummer + Return automatisch weiter in die Bestellmenge.
Werden mehrere Felder auf diese Weise zu einem Ablauf verbunden, kann der Kreis am Ende geschlossen werden, indem das letzte Feld die Kennung "nächste Zeile" erhält. Hierdurch springt der Cursor in die nächste Zeile, in der die Verkettung wieder von vorne beginnt.
Ist diese Checkbox aktiv, springt der Cursor nach Eingabe in diesem Feld + Return in die nächste Zeile.
Die Eingabe alphanumerischer Felder kann einerseits auf Großbuchstaben (Upper) oder andererseits auf Kleinbuchstaben (Lower) gewandelt werden. Generell wird die Option jedoch mit "Keine" vorbelegt.
Grundsätzlich sind alle Felder für die Eingabe gesperrt, wenn sie dem Design hinzugefügt werden. Mit dieser Option kann ein Feld zum Editieren freigeschaltet werden.
In der Benutzerkonfiguration können über das Feld "Editierbare Felder" die editierbaren Spalten der Tabelle besonders farblich dargestellt werden.
Linksbündige Felder können durch die Auswahl rechtsbündig aufbereitet werden.
Ist diese Option aktiviert, wird das Feld entsprechend formatiert.
Beispiel: Das Datum ist in der Datenbank im Format "20080701" hinterlegt. Mit Hilfe dieser Funktion ändert sich die Darstellung auf 01.07.2008.
Mit Hilfe dieser Funktion wird die Darstellung als Uhrzeitformat angezeigt, z.B. 16:50:09.
Der Kundenname ku-name im Kundenstamm ist ein Mussfeld.
Auf der Maske werden Mussfelder farbig hervorgehoben.
Keine Anzeige von Nullwerten.
Beispiel: Wert "0,00" wird als Wert " " dargestellt.
Entsprechend der Auswahl werden die Daten des gewählten Datenfeldes in der Tabelle aufsteigend oder absteigend aufbereitet. Dies wird in der Tabelle durch das Symbol in der Tabellenschrift dargestellt. Die Sortierung dominiert die im Register Sortierung gewählten Einstellungen.
Hardcore-Funktion für eine dynamische Verdichtungslogik für Postgre-Tabellen. Mit dieser Funktion können mehrere Datensätze in der Gridanzeige zu einer Zeile verdichtet werden. Beispiel Bestandsanzeige: Verschiedene Bestandsdatensätze zu einem Artikel mit unterschiedlichen Chargen, Gebinden oder Lagerplätzen können so in eine Zeile verdichtet werden.
Die Anzeige numerischer Felder in der Verdichtung muss im Einzelfall geprüft werden.
Ist die Checkbox aktiv, wird in der Sortierung im Grid eine Trennzeile eingefügt. Die Farbe der Trennzeile kann über die Farbauswahl definiert werden.
Die Spalte wird fixiert.
Hier wird eingestellt, ob ein Feld in der Selektion und Anzeige aufgeführt wird.
Mit Bestätigen der Eingabe im von-Feld wird automatisch der Wert in das bis-Feld übernommen.
In Merkator ist es möglich, Feldwerte durch Icons grafisch darzustellen. Hierfür müssen im Vorfeld entsprechende Bitmaps erstellt und hinterlegt werden. In der Konfiguration im Designer kann ein Bitmap dann einem Feld zugeordnet werden. Dabei können verschiedene Einzelbilder für spezifische Feldwerte definiert werden, die zusammen in einem Bitmap gespeichert sind. In unserem Beispiel enthält das Bitmap led.bmp 20 Einzelbilder mit jeweils 5 farblich verschiedenen Ausführungen von LED-Icons in verschiedenen Formen. Wann welches Einzelbild angezeigt werden soll, wird über die Zuordnung zu spezifischen Feldwerten gesteuert (Siehe Bitmap Wert und Nummer).
In diesem Feld wird der Pfad für ein Bitmap hinterlegt. Die Bitmaps liegen im Merkator-Verzeichnis im Ordner "bitmap/grid". Bei der Zuordnung des Bitmaps wird der entsprechende Pfad vorbelegt.
Die Vergabe eines "Handles" ist ein wichtiger Aspekt bei der Nutzung von Bitmaps und erfolgt automatisch.
Über den "Handle" werden alle Bitmaps, die in einer Tabelle für die Anzeige von Variablen verwendet werden, fortlaufend und beginnend bei "1" durchnummeriert. Dabei kann ein Bitmap innerhalb einer Tabelle mehrfach für verschiedene Variablen zum Einsatz kommen. Die Handle-Nummer wird in diesem Fall für die Mehrfachverwendung nicht weiter hochgezählt.
Die Bitmap-Werte entsprechen den möglichen Werten eines Datenfeldes. Wenn zum Beispiel ein Feld die Werte 0 und 1 annehmen kann, müssen diese hier jeweils eingetragen und die restlichen Felder mit "9" aufgefüllt werden. In unserem Beispiel kann das Datenfeld die Werte 1-2 annehmen, die Bitmap-Werte sind entsprechend hinterlegt.
Zu einem Bitmap können mehrere Teil-Bilder gehören, die abhängig vom Feldwert angezeigt werden. Die Einzelbilder werden hierbei über die Nummer ihrer Position innerhalb des Bitmaps angesprochen und einem Bitmap-Wert zugeordnet.
In unserem Beispiel aus der Positionserfassung wird über ein LED-Bitmap signalisiert, ob ein Positionstext vorhanden ist (grün) oder nicht (rot). Die Variable kann die Feldwerte 1 und 2 annehmen. Die Bitmap-Nummern 1 und 3 entsprechen der roten und grünen LED.
Die Anzeige im Grid erfolgt zusammen mit dem Feldwert.
Je nach Kontext kann es Sinn machen, dasselbe Bild unabhängig vom Feldwert darzustellen, wie z.B. bei einem Pushbutton.
Bei aktivierter Checkbox werden Bitmaps im Grid in der Leerzeile bereits angezeigt.
Ist die Checkbox deaktiv, erscheint das Bitmaps erst mit Erfassung eines neuen Datensatzes.
WIP
Dieses Feld wird vom Datenimport ausgeschlossen.
Numerische/alphanumerische Leerfelder werden beim Datenimport nicht geladen.
Ist das Feld in der Datenbank gefüllt, erfolgt keine Aktualisierung des Feldes.
WIP Beim Import wird das Satzzeichen "Punkt" in ein Komma gewandelt (?)
WIP
WIP
Gibt die Achse an, auf welcher sich die Variable befinden soll (gilt nur bei zweidimensionalen Tabellen).
Die Variable ist ein fester Wert (gilt nur bei zweidimensionalen Tabellen).
Wert der Konstanten (gilt nur bei zweidimensionalen Tabellen).
Konstante wird nicht in der Tabelle angezeigt (gilt nur bei zweidimensionalen Tabellen).
Einblenden einer Summe am Tabellenende.
WIP
Ist die Checkbox aktiv, wird das Feld bei Ausdruck der designten Tabelle nicht mit angedruckt.
WIP
Ist diese Option aktiv, so kann bei entsprechender Parametersetzung ein in einer Spalte eingegebener Wert für mehrere Datenzeilen übernommen werden.
Achtung: Die Freischaltung dieser Option muss mit Bedacht gewählt werden. Für einmal überschriebene Daten besteht kein "Undo"-Button!
WIP
Die Farbe der Spalte kann angepasst werden.
In unserem Beispiel die Bestellmenge:
Hier kannst Du eine Zellfarbe in Abhängigkeit zu einem Schwellenwert im konfigurierten Feld festlegen. In unserem Beispiel wurde für das Feld vk2-vk eine Schwelle von 500 mit einer Zellformatierung "Farbe 299" konfiguriert.
Im Grid werden mit dieser Einstellung alle Werte > 500 entsprechend formatiert.
WIP