WINGEN [:name:] TABLE=winattr, line-var1, line-var2, arb, header [, { int-var | line-var | string-var } [{,PROCn | ,PROCint-var | ,INPUT='file' [(params)]} ,retcode ]
Eine Tabelle ist eine Darstellung von mehreren Zeilen und Spalten. Sie wird z.B. vom Windows-Explorer im rechten Fensterteil verwendet, um Dateiname, Größe, Typ, Änderungsdatum und Attribute darzustellen. In der Regel hat eine Tabelle eine Kopfzeile mit den Spaltenüberschriften.
In der Tabelle werden Sätze des Arbeitsbereiches arb dargestellt, beginnend mit der Zeile in line-var1 und endend mit der Zeile in line-var2. Die Einteilung der Spalten sowie die Festlegung der Spaltenüberschriften erfolgt durch die Daten in header.
line-var1 Zeilennummer der ersten Zeile, die in der Liste angezeigt werden soll.
line-var2 Zeilennummer der letzten Zeile, die in der Liste angezeigt werden soll.
arb Arbeitsbereich, in dem die Daten für die Listbox/Combobox stehen.
header Für eine Spalte sind zwei Angaben erforderlich: die Spaltenüberschrift und die Spaltenbreite, getrennt durch das Zeichen "~" (Tilde). Als Trennzeichen zwischen den Spalten ist ebenfalls das Zeichen Tilde anzugeben. Am Ende darf keine Tilde angegeben werden.
Die Sätze, mit denen die Tabelle aus dem Arbeitsbereich gefüllt werden soll, müssen einen festgelegten Aufbau haben: Die Felder sind durch das Zeichen Tilde zu trennen. Nach dem letzten Feld darf keine Tilde vorhanden sein.
Referenzvariable bei Doppelklick:
Als Referenzvariable kann eine Integer-Variable, eine Line-Variable oder eine String-Variable angegeben werden.
int-var Die Referenzvariable enthält die Position des selektierten Eintrags. Der erste Eintrag befindet sich auf Position 0.
line-var Die Referenzvariable enthält die Zeilennummer (im Wert zwischen line-var1 und line-var2) des selektierten Eintrags.
string-var Die Referenzvariable enthält den Inhalt des selektierten Eintrags.
Wenn vor Ausgabe der Dialogbox ein unzulässiger Wert in der Referenzvariablen angegeben wird (zu hoher Index in int-var, Zeilennummer nicht im Bereich von line-var1 bis line-var2, Zeichenfolge in string-var ist nicht in der Box enthalten), so wird der erste Eintrag in der Box selektiert.
Aktion bei Doppelklick:
PROCn Bei einem "Doppelklick" wird die EDT-Prozedur n mit dem EDT-Kommando DO aufgerufen.
PROCint-var Bei einem "Doppelklick" wird die EDT-Prozedur in int-var mit dem EDT-Kommando DO aufgerufen.
INPUT='file' Bei einem "Doppelklick" wird die INPUT-Prozedur file mit dem EDT-Kommando INPUT aufgerufen.
Die Prozedur kann durch Versorgung eines Rückgabewertes in der Integer-Variablen #I99 den weiteren Ablauf wie folgt beeinflussen:
#I99=0 Das Fenster wird nicht neu aufgebaut.
#I99=-1 Das Fenster wird mit den Daten aus den Referenzvariablen neu aufgebaut.
#I99> 0 Das Fenster wird geschlossen und nach dem Kommando WINGEN OUT fortgefahren. Die Integer-Variable #I99 behält diesen Wert.
retcode Vor dem Aufruf der Prozedur wird in die Integer-Variable #I99 der Wert retcode geladen. Damit kann für mehrere Schaltflächen dieselbe Prozedur aufgerufen werden. Anhand des Übergabecodes ist feststellbar, welche TABLE ausgewählt wurde.
Beispiel:
@set #l10=1
@set #l11=5
@wingen :f12:table=(10,10,100,48),#l10,#l11,11,'PLZ~40~Ort~120',#s5,proc11,38
Datensätze in Arbeitsbereich 11:
80331~München
23669~Timmendorfer Strand
13088~Berlin
21073~Hamburg
56729~Langscheid