Überlegungen zu 'set' für Text-UI

Im Kontext von Text-UI erlaubt die EGL-Anweisung set, dass Sie alle Felder in einem Text- oder Druckformular zurücksetzen oder, alternativ, dass Sie Eigenschaften und Merkmale eines Felds in einem Textformular ändern.

Syntax

Text-UI-Syntax für Anweisung 'set'
formName
Der Name eines Druckformulars, dessen Felder Sie zurücksetzen möchten, oder der Name eines Textformulars, für das Sie eine bzw. mehrere Feldeigenschaften ändern möchten.
formFieldName
Der Name eines Felds in einem Druck- oder Textformular.
value
Verschiedene verfügbare Werte für Formulare und Formularfelder.
Für Druckformulare ist der einzig gültige Wert empty wie unten beschrieben. (Wenn Sie ein Feld explizit auf NULL setzen möchten, verwenden Sie eine Zuordnungsanweisung wie myField = null.)
Für Textformulare sind die folgenden Werte verfügbar:
alarm
Bewirkt, dass das Terminal ein Tonsignal abgibt, wenn das Formular im Anschluss an die nächste converse-Anweisung angezeigt wird.
empty
Löscht das gesamte Formular:
  • Numerische Felder werden auf NULL gesetzt.
  • Zeichenfelder werden geleert.
  • Datum-/Uhrzeitfelder werden auf das aktuelle Datum bzw. die aktuelle Uhrzeit gesetzt und INTERVAL-Felder werden auf NULL gesetzt.
  • Felder vom Typ ANY werden entsprechend des Typs ihres aktuellen Werts festgelegt. Falls sie aktuell keinen Wert enthalten, sind sie von der Anweisung set nicht betroffen.
initial
Setzt das gesamte Formular auf den ursprünglichen Inhalt und die ursprünglichen Attribute zurück, wie in der Formulardeklaration angegeben, unabhängig von den Änderungen, die von dem Programm vorgenommen wurden.
Für Formularfelder sind die folgenden Werte verfügbar:
blink
Bewirkt, dass der Text wiederholt blinkt. Dies ist nur bei der COBOL-Generierung verfügbar.
bold
Bewirkt, dass der Text in Fettdruck angezeigt wird.
cursor
Positioniert den Cursor am Anfang des angegebenen Felds.
dim
Bewirkt, dass das Feld mit einer geringeren Intensität angezeigt wird. Setzen Sie diesen Effekt ein, um Feldinhalte in den Hintergrund zu rücken. In COBOL-Umgebungen hat dieser Wert denselben Effekt wie normalIntensity.
empty
Löscht das angegebene Feld:
  • Numerische Felder werden auf NULL gesetzt.
  • Zeichenfelder werden geleert.
  • Datum-/Uhrzeitfelder werden auf das aktuelle Datum bzw. die aktuelle Uhrzeit gesetzt und INTERVAL-Felder werden auf NULL gesetzt.
  • Felder vom Typ ANY werden entsprechend des Typs ihres aktuellen Werts festgelegt. Falls sie aktuell keinen Wert enthalten, sind sie von der Anweisung set nicht betroffen.
full
Legt ein leeres Feld, ein Feld mit Leerzeichen oder ein Nullfeld auf eine Serie von identischen Zeichen fest (basierend auf der Feldeigenschaft fillCharacter), bevor das Formular dargestellt wird. Der Benutzer muss alle Füllzeichen entfernen, um zu verhindern, dass das Formular diese an das Programm zurückgibt. Um den Änderungswert full zu verwenden, muss die Formulargruppe mit der Erstellungsdeskriptoroption setFormItemFull generiert werden.
Ein MBCHAR-Feld wird als leer angenommen, wenn es nur Einzelbyte-Leerzeichen enthält, und der Änderungswert full füllt so ein Feld mit Einzelbytezeichen.
initial
Setzt das Feld auf den ursprünglichen Inhalt und die ursprünglichen Attribute zurück, wie in der Formulardeklaration angegeben, unabhängig von den Änderungen, die von dem Programm vorgenommen wurden.
initialAttributes
Setzt das Feld auf die ursprünglichen Attribute zurück, wie in der Formulardeklaration angegeben. Weder der Wert noch der Typ des Felds sind betroffen.
invisible
Macht das Feld unsichtbar.
masked
Wird gemeinhin für Kennwortfelder verwendet. In der COBOL-Generierung entspricht dies invisible. In Java™ wird eingegebener Text in Form von Sternchen angezeigt.
modified
Legt das Tag für modifizierte Daten fest, wie unter Tag für modifizierte Daten und modifizierte Eigenschaften beschrieben.
noHighlight
Entfernt die Effekte der Änderungswerte blink, reverse und underline.
normal
Hat denselben Effekt wie die kombinierten Änderungswerte normalIntensity, unmodified und unprotected.
normalIntensity
Bewirkt, dass das Feld sichtbar ist und der Feldinhalt nicht fett angezeigt wird.
protect
Bewirkt, dass der Benutzer den Inhalt eines Felds nicht überschreiben kann. Siehe auch skip.
reverse
Kehrt die Text- und Hintergrundfarben um.
selectedColor
Legt die feldspezifische Eigenschaft color auf den angegebenen Wert fest. Gültige Werte für selectedColor sind:
  • black
  • blue
  • defaultColor
  • green
  • magenta
  • red
  • cyan
  • white
  • yellow
In COBOL-Umgebungen ist der Wert black nicht verfügbar und defaultColor (üblicherweise green) wird stattdessen verwendet. Weitere Informationen zu Standardfarben finden Sie unter color.
skip
Bewirkt, dass der Benutzer den Wert eines Felds nicht überschreiben kann und dass das Feld mit der Tabulatortaste übersprungen wird.
underline
Zeigt die Zeichen in dem Feld mit Unterstrichen an.
unprotect
Bewirkt, dass der Benutzer den Wert eines Felds nicht überschreiben kann.

Werte kombinieren

Sie können Werte von set-Anweisungen kombinieren, indem Sie ein Komma einfügen, um Optionen wie cursor und full voneinander zu trennen. Achten Sie darauf, dass sich manche Werte widersprechen oder möglicherweise redundant sind und dass EGL jeden Änderungswert in der vorgegebenen Reihenfolge, von links nach rechts, ausführt.

Voraussetzungen für das Kombinieren von Werten:
  1. Wenn Sie ein Feld initialisieren, sollten Sie immer nur einen der folgenden Werte auswählen:
    • initial
    • initialAttributes
    • normal
    Sie können anschließend eine beliebige Anzahl der folgenden Werte hinzufügen (obwohl empty redundant ist, wenn Sie oben initial ausgewählt haben):
    • cursor
    • empty
    • full
  2. Für andere Felder können Sie folgende Werte beliebig kombinieren:
    • Wählen Sie eine beliebige Anzahl der folgenden Optionen aus:
      • cursor
      • full
      • modified
    • Wählen Sie immer nur eine Farboption aus:
      • black
      • blue
      • defaultColor
      • green
      • magenta
      • red
      • cyan
      • white
      • yellow
    • Wählen Sie immer nur eine Hervorhebungsoption aus:
      • blink
      • reverse
      • underline
      • noHighlight
    • Wählen Sie immer nur eine Schutzoption aus:
      • protect
      • skip
      • unprotect

Beispiel

Im folgenden Beispiel wird die Eigenschaft cursor für das Feld customerName auf den Anfangswert zurückgesetzt.

set myTextForm.customerName initial, cursor;

Kompatibilität

Tabelle 1. Hinweise zur Kompatibilität für 'set' und Textformulare
Plattform Problem
COBOL-Generierung
  1. Die Farbe black ist nicht verfügbar. Stattdessen wird defaultColor verwendet.
  2. Der Änderungswert dim hat denselben Effekt wie normalIntensity.
  3. Der Änderungswert masked hat denselben Effekt wie invisible.
  4. Für Druckformulare wird die Anweisung set formFieldName full ignoriert, es sei denn, die Erstellungsdeskriptoroption setFormItemFull ist auf YES gesetzt.
Java-Generierung Der Änderungswert blink ist nicht verfügbar.

Feedback