Dieser Abschnitt beschreibt die Möglichkeiten, die Ihnen zur Verfügung stehen, um die Felder zu definieren, die Bestandteile einer Maske sein sollen.
Sie können die Maskenfelder direkt im Masken-Editierbereich definieren, indem Sie ein Trennzeichen (Delimiter) und danach die Anzahl der Stellen angeben, die dem Feld zugeordnet werden sollen. Sie können dazu die folgenden Zeichen verwenden:
Zeichen | Bedeutung |
---|---|
9 |
Numerische Stelle. |
0 |
Numerische Stelle, rechtsbündig. |
. |
Dezimal-Notation (nur bei einem numerischen Feld). |
S |
Vorzeichen-Stelle (nur bei einem numerischen Feld). |
HH |
Hexadezimale Stelle (binär) (muss in Zweiergruppen eingegeben werden). |
X |
Alphanumerische Stelle. |
Außerdem kann ein Wiederholungsfaktor in der Form
(n)
angegeben werden. Beispiel:
X(5)
ist gleichbedeutend mit XXXXX
.
Nachfolgend einige Beispiele für Feld-Definitionen (das Trennzeichen kann entsprechend den Erfordernissen geändert werden):
:999 |
3 Stellen, numerisch |
:000 |
3 Stellen, numerisch, rechtsbündig |
:99.9 |
3 Stellen, numerisch, mit Dezimalzeichen |
:S9(6) |
6 Stellen, numerisch, mit Vorzeichen |
:HHHH |
4 Stellen, hexadezimal |
:X |
1 Stelle, alphanumerisch |
:X(7) |
7 Stellen, alphanumerisch |
Feldern, die wie oben dargestellt eingegeben werden, wird vom Masken-Editor ein funktionsloser Blindname zugewiesen. Vor der Ausführung der Maske muss jedem Feld ein gültiger Name zugewiesen werden. Dazu können Sie entweder die Funktion zur erweiterten Feld-Bearbeitung oder die Vorgehensweise beim nachträglichen Zuweisen von Feldern anwenden. Andere Feldformate können Sie mit Hilfe der Funktion zur erweiterten Feld-Bearbeitung angeben.
Um eine Maske zu definieren, können Sie auch Definitionen aus der lokalen Datendefinition eines anderen Natural-Source-Objekts auswählen. Bei den Datendefinitionen handelt es sich entweder um Felddefinitionen in einem DDM oder um Variablen-Definitionen.
Eine Liste von Objekttypen, die Sie für die Auswahl von Datendefinitionen benutzen können, finden Sie im Abschnitt Objekttypen und Typen-Codes.
Programme, Subroutinen, Subprogrammme, Helproutinen und
Functions können Sie nur dann benutzen, wenn diese ein DEFINE DATA
LOCAL
-Statement enthalten. Die Definitionen bei einem DEFINE DATA
USING
-Statement stehen nicht für die Auswahl zur Verfügung.
Felder mit dem Natural-Datenformat U (Unicode), C (Attribute Control) oder Handle (Object Handles) können Sie nicht auswählen. Diese stehen nicht für die Auswahl zur Verfügung.
Wenn Sie Konstanten für die Begrenzungen eines Array benutzen und wenn diese Konstanten nicht in der lokalen Datendefinition des gewählten Natural-Source-Objekts definiert sind, gehen die Begrenzungen verloren, wenn Sie das Array wählen.
Sie können kein Element wählen, dem ein Punkt (.) vorangestellt ist (z.B. eine Gruppe).
Eingabefelder und änderbare Felder (Eingabe/Ausgabe) können im Masken-Editierbereich nur einmal angegeben werden.
Dieser Abschnitt behandelt folgende Themen:
Um Datendefinitionen aus anderen Natural-Objekten aufzulisten und zu kopieren:
Benutzen Sie den Split-Screen-Modus des Masken-Editors.
Ob _ Ob D CLS ATR DEL CLS ATR DEL . . T D Blnk T I ? . . A D _ A I ) . . A N ¬ M D & . . M I : O D + . . O I ( . . 001 --010---+----+----+---030---+----+----+---050---+----+----+---070---+- |
Geben Sie in die Eingabefelder Ob
(Object) links oben im Bildschirm einen gültigen Objektcode (siehe auch
Objekttypen und Typen-Codes
) und danach einen Objektnamen ein (z.B. P
TEST
wie im Beispiel in
Schritt 4). Löschen Sie, soweit vorhanden, alle übrigen Zeichen in dieser
Zeile.
Oder:
Lassen Sie das erste
(durch einen Unterstrich gekennzeichnete) Eingabefeld der Eingabefelder
Ob (Object) links oben im Bildschirm leer und geben Sie im
zweiten Eingabefeld ein Fragezeichen (?) ein oder drücken Sie PF1
(Help). Löschen Sie, falls vorhanden, alle übrigen Zeichen in dieser Zeile.
Wenn Sie Enter drücken, erscheint der Bildschirm Select an Object (Objekt auswählen) mit einer Liste aller Objekte, die in der aktuellen Library enthalten sind. Durch Drücken von Enter können Sie in der Liste blättern. Geben Sie im Feld Select die Nummer ein, die dem Objekt entspricht, das Sie auswählen möchten.
Drücken Sie Enter.
Links oben im Masken-Editierbildschirm werden jetzt die
Datendefinitionen angezeigt, die im DEFINE
DATA
-Abschnitt des Natural-Programms enthalten sind (Programm
TEST
im folgenden Beispiel).
Um in der Liste der Datendefinitionen in den
Ob-Eingabefeldern zu blättern, können Sie die vorhandenen
Einträge (P TEST
im folgenden Beispiel) mit einem der folgenden
Positionierungskommandos überschreiben. Lassen Sie die übrig gebliebenen
Zeichen bestehen.
Kommando | Erläuterung |
---|---|
+ |
In der Liste eine Seite nach unten blättern. |
++ |
An das Ende der Liste blättern. |
- |
In der Liste eine Seite nach oben blättern. |
– |
An den Anfang der Liste blättern. |
+n |
Um n Zeilen nach unten blättern. |
-n |
Um n Zeilen nach oben blättern. |
Um die Datendefinitionen eines anderen Objekts in den Ob-Eingabefeldern links oben im Bildschirm anzuzeigen, geben Sie einen gültigen Objektcode (siehe auch Objekttypen und Typen-Codes ) und danach einen Objektnamen ein. Löschen Sie, soweit vorhanden, alle übrig gebliebenen Zeichen in dieser Zeile.
Ob P TEST Ob L LDA01 1 #NAME-START A20 A #NAME-START A20 2 #NAME-END A20 B #NAME-END A20 3 #MARK A1 C #PERS-ID A8 . EMPLOYEES-VIEW *V1 D #MAKE A20 4 PERSONNEL-ID A8 E #MODEL A20 5 NAME A20 . 001 --010---+----+----+---030---+----+----+---050---+----+----+---070---+---- |
Oder:
Wählen Sie, wie zuvor in
Schritt 2 beschrieben, ein
Objekt aus der Liste.
Kopieren Sie die gewünschten Datendefinitionen in den Masken-Editierbereich:
Geben Sie an beliebiger Stelle einer Leerzeile im Masken-Editierbereich ein Trennzeichen und danach die neben der gewünschten Datendefinition angezeigte Folgenummer oder den Buchstaben ein, zum Beispiel:
(3
Diese Eingabe wählt die Datendefinition aus, die der
Nummer 3 (im obigen Beispiel #MARK
) zugewiesen ist.
:C
Diese Eingabe wählt die Datendefinition aus, die dem
Buchstaben C (im obigen Beispiel #PERS-ID
) zugewiesen ist.
Drücken Sie Enter.
Die Eigenschaften der Datendefinitionen (Name, Format, Länge oder Array-Definitionen) werden in die Maske kopiert.
Mittels der Feldbearbeitungsfunktionen des Masken-Editors können Sie die kopierten Werte anzeigen oder ändern. Siehe auch Erweiterte Feld-Bearbeitung und Array- und Tabellen-Definitionen .
Zu jedem aus einem DDM kopierten Maskenfeld wird automatisch ein
INCDIR
-Statement in den Quellcode der Maske generiert. Das
INCDIR
-Statement enthält den Namen der DDM-Datei und des Feldes,
das von dem Maskenfeld referenziert wird. Sie können prüfen, ob ein
INCDIR
-Statement eine ungültige DDM-Referenz enthält, indem Sie
die CHKRULE
-Option des Systemkommandos
COMPOPT
einschalten. Natural gibt dann, wenn Sie die
Maskendefinition katalogisieren, eine entsprechende Fehlermeldung aus. Weitere
Informationen siehe CHKRULE - Validierung von
INCDIR-Statements in Masken in der
Systemkommandos-Dokumentation.
Im Masken-Editierbereich können Sie alle
INCDIR
-Statements auflisten und, falls erforderlich, den Namen
eines DDM ändern.
Um ein einzelnes oder
mehrere INCDIR
-Statements aufzulisten und zu aktualisieren:
Geben Sie das folgende Zeilenkommando in einer beliebigen Zeile des Editierbereichs ein:
..L
Der Bildschirm Modify INCDIR Statements of Map erscheint (Beispiel):
16:24:23 - Modify INCDIR Statements of Map MAPTEST - 2008-05-14 Top of List DDM Name Field Name AUTOMOBILES MAKE AUTOMOBILES OWNER-PERSONNEL-NUMBER FINANCE BANK AUTOMOBILES MODEL EMPLOYEES PERSONNEL-ID AUTOMOBILES BODY-TYPE EMPLOYEES FIRST-NAME AUTOMOBILES NUMBER-OF-CYLINDERS EMPLOYEES MIDDLE-I AUTOMOBILES HORSEPOWER EMPLOYEES NAME AUTOMOBILES PISTON-DISPLACEMENT EMPLOYEES MIDDLE-NAME AUTOMOBILES WEIGHT EMPLOYEES MAR-STAT AUTOMOBILES COLOR Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Exit GenC – - + ++ |
Der Bildschirm enthält eine Liste aller
INCDIR
-Statements, die in den Quellcode der aktuellen
Masken-Definition generiert worden sind. Die Liste enthält außerdem die Namen
aller DDM-Dateien und DDM-Felder, aus denen Sie ein Maskenfeld kopiert
haben.
Falls erforderlich, können Sie den DDR-Namen für ein
INCDIR
-Statement ändern, indem Sie den Namen oder die Namen in der
Spalte DDM Name ersetzen.
Oder:
Drücken Sie PF5, um das Fenster Generic
Change aufzurufen. Geben Sie im Feld New DDM
Name den Namen des neuen DDM ein, der von allen
INCDIR
-Statements benutzt werden soll, die diesen DDM
referenzieren.
Der DDM-Name bzw. die DDM-Namen in dem (den) entsprechenden
INCDIR
-Statement(s) werden aktualisiert, wenn Sie die
Masken-Definition speichern (Funktion oder
).
Die folgende Liste enthält eine Aufstellung der Objekttypen und der entsprechenden Typen-Codes, die zum Auswählen von Datendefinitionen verwendet werden können:
Objekttyp | Typen-Code | Bemerkung |
---|---|---|
Parameter Data Area | A |
|
Predict Conceptual Files | C |
Der Objekttyp "Predict Conceptual Files" ist nur verfügbar, wenn Predict installiert ist. |
Global Data Area | G |
|
Helproutine | H |
|
Local Data Area | L |
|
Map | M |
|
Subprogram | N |
|
General Object | O
|
Der Objekttyp "General
Object" (O ) ermöglicht es Ihnen, Daten aus einem Quellcode
zu importieren, ohne den korrekten Objekttyp anzugeben, wenn Sie zum Beispiel
den Objektnamen, aber nicht den Objekttyp kennen.
Im Feld Ob können Sie in einem
solchen Fall |
Program | P |
|
Subroutine | S |
|
View (DDM) | V |
|
Function | 7 |
Natural-Systemvariablen können in einer Masken-Definition angegeben werden. Weitere Informationen zu Systemvariablen siehe Systemvariablen im Leitfaden zur Programmierung und die ausführlichen Einzelbeschreibungen in der Systemvariablen-Dokumentation.
Einer Systemvariablen muss ein Ausgabetrennzeichen (Delimiter) vorangestellt werden. Siehe folgendes Beispiel:
(*TIME (*DATE (*APPLIC-ID