Version 6.3.8 für Windows
 —  Parameter-Referenz  —

SB - Selection Box

Auswahlfeld

Auswahlfelder stehen in einem INPUT-Statement ausschließlich auf Großrechnern zur Verfügung. Für andere Plattformen können Auswahlfelder nur im Map-Editor definiert werden.

Auswahlfelder können an Eingabefelder angehängt werden. Sie bilden eine komfortable Alternative zu an Feldern angehängte Helproutinen, da Sie ein Auswahlfeld unmittelbar in Ihrem Programm kodieren können. Sie brauchen kein zusätzliches Programm wie bei Helproutinen.

Sie können eine Auswahlfeld-Klausel für jede INPUT-Variable vom Typ Alpha definieren, ungeachtet der Tatsache, ob dieses Feld ein Eingabe- oder Ausgabefeld oder beides ist.

Hierzu sieht die Syntax wie folgt aus:

SB=operand1 [,operand1]...

wobei operand1 einen Wert-Operanden darstellt, der zum Auffüllen des Auswahlfeldes mit Elementen benutzt wird.

Operand Mögliche Struktur Mögliche Formate Referenzierung erlaubt Dynam. Definition
operand1 C S A       A                         yes no

Bei SB geben Sie die anzuzeigenden Werte innerhalb des Auswahlfeldes ein.

Um ein Auswahlfeld einem Feld zuzuweisen

geben Sie das Attribut SB für ein INPUT-Alphafeld in Ihrem Natural-Programm mittels der folgenden Beispiel-Syntax ein:

INPUT #FLD (SB='value1', #ITEM1, #ITEM2(1:3), #ITEM3(*))

Folgende Themen werden behandelt:


Anmerkungen zur Syntax

Es ist möglich, einem Feld sowohl ein Auswahlfeld als auch eine Helproutine zuzuweisen.

Auswahlfelder können für jedes Variablenfeld in einem INPUT-Statement definiert werden. Dazu gibt es folgende Ausnahmen:

Systemvariablen Zum Beispiel: *PROGRAM, *COM
Benannte Konstanten (nur auf Großrechnern) Definiert mit einer CONST-Klausel in DEFINE DATA-Statement.

Außer dem SB-Attribut können auch andere Attribute definiert werden, z.B.AD oder CD.

Das Auswahlfeld muss nicht änderbar sein, wie dies bei AD=A oder AD=M der Fall ist. Mit anderen Worten ist es möglich, auch für ein schreibgeschütztes Ausgabefeld wie AD=O ein Auswahlfeld zur Verfügung zu stellen (und Werte auszuwählen). Wenn Sie AD=O benutzen, ist der Benutzer dazu gezwungen, aus einer Reihe von vordefinierten Werten zu wählen, die ihrerseits in einem Auswahlfeld erscheinen.

Seitenanfang

Anmerkungen zur Laufzeitumgebung

Auswahlfeld-Position

Wenn ein ein Auswahlfeld enthaltendes Programm ausgeführt wird, wird das Auswahlfeld nach demselben Positionierungsalgorithmus auf dem Bildschirm positioniert, der für Hilfefenster verwendet wird, d.h. die Länge und Position des Auswahlfeldes wird automatisch festgelegt, in der Nähe des Feldes.

Auswahlfeld-Attribute

Die Farbe und die intensivierten Attribute, die dem Feld zugewiesen sind, werden auch für die in dem entsprechenden Auswahlfeld angezeigten Werte benutzt.

Editiermasken in Auswahlfeldern

Wenn für das Feld eine Editiermaske definiert worden ist, wird die Editiermaske für alle Auswahlfeld-Werte verwendet.

Um eine Editiermaske für ein Feld zu definieren, benutzen Sie das INPUT-Statement, damit Sie eine Editiermaske für ein Feld definieren können. Dies ist in dem folgenden Code-Beispiel veranschaulicht.

DEFINE DATA
LOCAL
1 A(A4)
END-DEFINE
MOVE 'ABCD' TO A
*
SET KEY PF1 = HELP
FORMAT KD=ON
*
INPUT A (AD=M EM=X.X.X.X SB='1234','WXYZ')
WRITE A
END

Zeilenlänge für Auswahlfelder

Die Zeilenlänge des Auswahlfeldes stimmt mit der Feldlänge überein, der das Auswahlfeld entspricht.

Wenn ein für das Auswahlfeld vorgesehener Wert die Zeilenlänge des Auswahlfeldes überschreitet, wird der Wert abgeschnitten.

Reihenfolge der Auswahlfeld-Werte

Auswahlfeld-Werte werden in der Reihenfolge angezeigt, in der sie im SB-Attribut erscheinen.

Seitenanfang