Mit diesem Session-Parameter können Sie den Namen einer Helproutine angeben, die einem Feld zugewiesen werden soll.
Mögliche Werte | Siehe HE-Parameter-Syntax weiter unten. | ||
---|---|---|---|
Standard-Einstellung | keine | ||
Spezifikation in Session | ja | Gültige Statements: | INPUT |
Gültiges Kommando: | keines |
Helproutinen können mit dem Natural-Programm-Editor erstellt werden, Help Maps mit dem Natural-Map-Editor.
Die zugewiesene Helproutine kann dann bei der Verarbeitung des
betreffenden INPUT
-Statements oder der betreffenden Map aufgerufen
werden, indem der Benutzer ein Fragezeichen (?) (das ist die Voreinstellung) in
das Feld eingibt oder den Cursor in das Feld plaziert und die mit dem
SET KEY
-Statement
definierte Hilfe-Funktionstaste drückt.
Wenn ein Wert von einer Helproutine an ein Eingabefeld übergeben werden
soll, muss das Feld als änderbar (AD=M
) definiert sein.
Die folgenden Themen werden nachfolgend erörtert:
Der Parameter hat die folgende Syntax:
HE =operand1 |
, | operand2 | ...20 | ||||
= | |||||||
nX |
Operanden-Definitionstabelle:
Operand | Mögliche Struktur | Mögliche Formate | Referenzierung erlaubt | Dynam. Definition | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 | C | S | A | nein | nein | ||||||||||||||||
operand2 | C | S | A | A | U | N | P | I | F | B | D | T | L | C | G | O | nein | nein |
Syntax-Beschreibung:
operand1 |
operand1 ist der Name der Helproutine
oder Map, die aufgerufen werden soll. Der Name kann eine 1 bis 8 Zeichen
umfassende alphanumerische Konstante oder Benutzervariable sein. Wenn eine
Variable verwendet wird, muss sie vorher definiert worden sein. Der
Name kann ein Kaufmännisches Und (&) enthalten; zur Ausführungszeit wird
dieses Zeichen durch den aus einem Zeichen bestehenden Code ersetzt, der dem
aktuellen Wert der Systemvariablen |
operand2 |
Nach dem Helproutinen-Namen können Sie 1 bis 20 Parameter (operand2) angeben, die an die Helproutine übergeben werden. Diese können Konstanten oder Benutzervariablen sein, die die Parameterwerte enthalten. |
= |
Geben Sie ein Gleichheitszeichen (
Wird mit |
n X
|
Die Notation nX können
Sie verwenden, um wegzulassende Parameter anzugeben, das heisst, Parameter, für
die keine Werte übergeben werden sollen. Die enstprechenden empfangsseitigen
Parammter im DEFINE DATA
PARAMETER -Statement der aufgerufenen Helproutine müssen als
OPTIONAL
definiert werden.
|
Anmerkungen:
ID
definiert) oder mit einem
Komma voneinander getrennt werden. Ein Komma darf hierzu allerdings nicht
verwendet werden, falls das Komma als Dezimalkomma (mit dem Session-Parameter
DC
) definiert
ist.
DEFINE DATA
PARAMETER
-Statement beginnen, in dem Felder definiert werden,
die in Format und Länge den übergebenen Parametern entsprechen.
DEFINE DATA
PARAMETER
-Statement der Helproutine ein Feld definiert werden, das in
Format und Länge dem ursprünglichen Feld entspricht. Werden in dem DEFINE
DATA PARAMETER
-Statement noch andere Felder definiert, so muss dieses
Feld immer als letztes definiert werden.
DEFINE
DATA PARAMETER
-Statements definieren. Entsprechend der Array-Dimensionen
können Sie bis zu drei Index-Parameter angeben.
Wenn eine Helproutine — durch Eingabe eines Fragezeichens (?) in das
Feld oder durch Drücken der (mit einem SET KEY
-Statement
definierten) Hilfetaste, oder über ein REINPUT
USING
HELP
-Statement — aufgerufen wird, werden alle in andere Felder
eingegebenen Werte erst verarbeitet, nachdem die Ausführung der Helproutine
beendet ist.
Anmerkung:
Pro INPUT
-Statement ist jeweils nur
eine Hilfe-Anforderung möglich. Wenn für mehrere Felder gleichzeitig Hilfe
angefordert wird (z.B. durch Eingabe von Fragezeichen in mehrere Felder), wird
nur die erste Hilfe-Anforderung ausgeführt.
/* MAIN PROGRAM DEFINE DATA 1 #A(A20/1:3) END-DEFINE ... SET KEY PF1=HELP ... INPUT #A (2) (HE='HELPA',=) ... END
/* HELP-ROUTINE 'HELPA' DEFINE DATA PARAMETER 1 #VARNAME (A65) 1 #PARM1 (A20) 1 #VARINDEX (I2) END-DEFINE ...
* Program 'PROGRAM1' * DEFINE DATA LOCAL 1 #PARM1 (A65) INIT <'valueparm1'> END-DEFINE SET KEY PF1 = HELP FORMAT KD=ON * INPUT (AD=M HE='HELP1',=) 'Enter ? for name of executed object:' / #PARM1 * INPUT (AD=M) 'Enter ? for field name:' / #PARM1 (HE='HELP1',=) * END
Parameter Data Area in Beispiel-Helproutine HELP1
:
* Helproutine 'HELP1' * DEFINE DATA PARAMETER 1 #FLD1 (A65) END-DEFINE ...