Dieses Dokument enthält die folgenden Übungen:
Sie werden nun Ihr erstes kurzes Programm schreiben, das "Hello World!" anzeigt. Es wird in der Library gespeichert, die Sie zuvor erstellt haben.
Neues Programm erstellen
Achten Sie darauf, dass Sie in der Library
TUTORIAL
angemeldet sind.
Geben Sie unten im Menü Development Functions die folgenden Informationen ein und drücken Sie EINGABE:
Code .. C Type .. P Name .. HELLO___________________________ Command ===> Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Menu Exit Canc |
"C" steht für die Funktion Create Object (Objekt erstellen), "P" steht für den Objekttyp Programm und "HELLO" ist der Name des zu erstellenden Programms.
Tipp:
Wenn Sie den Funktionscode C
eingeben, können
Sie auch einen Stern (*) im Type-Feld angeben. Wenn Sie
EINGABE drücken, erscheint eine Liste aller Objekttypen und aller
Buchstaben, die für diese Objekttypen benutzt werden können.
Der Programmeditor erscheint. Er ist zurzeit leer.
Geben Sie den folgenden Code im Programmeditor ein:
* The "Hello world!" example in Natural. * DISPLAY "Hello world!" END /* End of program
Eine Kommentarzeile beginnt mit einem Stern (*), dem mindestens ein Leerzeichen oder ein zweiter Stern folgt. Wenn Sie das Leerzeichen oder den zweiten Stern vergessen, geht Natural davon aus, dass Sie eine Systemvariable angegeben haben; dies verursacht einen Fehler.
Wenn Sie Leerzeilen in Ihr Programm einfügen möchten, dann sollten Sie sie als Kommentarzeilen definieren. Dies ist hilfreich, wenn Sie Ihr Programm auf einer anderen Plattform (Windows, Großrechner, UNIX oder OpenVMS) weiterbearbeiten wollen. Mit der Großrechnerversion von Natural werden beispielsweise alle leeren Zeilen automatisch gelöscht, sobald Sie EINGABE drücken (Standardeinstellung).
Sie können auch einen Kommentar am Ende einer Statement-Zeile einfügen. In diesem Fall muss der Kommentar mit einen Schrägstrich beginnen, dem ein Stern folgt (/*).
Der Text, der in der Ausgabe erscheinen soll, wird mit dem
Statement DISPLAY
angegeben. Er steht in Anführungszeichen.
Das Statement END
markiert das physische Ende des
Natural-Programms. Jedes Programm muss mit END
abgeschlossen
werden.
Wenn Sie EINGABE drücken, kann es passieren, dass alle Kleinbuchstaben in Großbuchstaben umgesetzt werden. Dieses Verhalten ist im Editorprofil definiert (dies wird später erklärt).
Das Systemkommando RUN
ruft automatisch
das Systemkommando CHECK
auf, welches das Programm
auf Fehler überprüft. Wenn kein Fehler gefunden wird, wird das Programm im Flug
kompiliert und ausgeführt.
Anmerkungen:
CHECK
steht ebenfalls als
separates Systemkommando zur Verfügung.
EXECUTE
, welches die mit dem Systemkommando
STOW
gespeicherte Version Ihres Programms benutzt
(dieses Kommando wird später in diesem Tutorial erklärt). Im Gegensatz zu
EXECUTE
werden bei RUN
immer die letzten Programmänderungen berücksichtigt.
Programm mit RUN
ausführen
Geben Sie eines der folgenden Kommandos in der Kommandozeile des Programmeditors ein:
RUN
R
Systemkommandos können abgekürzt werden.
R
ist die Abkürzung für
RUN
.
In Abhängigkeit von Ihren Umgebungseinstellungen befindet sich die Kommandozeile entweder am oberen oder unteren Rand des Bildschirms.
> RUN > + Program HELLO Lib TUTORIAL |
Wenn Ihr Code syntaktisch korrekt ist, wird der von Ihnen definierte Text ausgegeben.
MORE Page 1 10-11-22 12:07:25 Hello world!
Drücken Sie EINGABE um zum Programmeditor zurückzukehren.
Sie werden jetzt einen Fehler in Ihr Programm einbauen und das
Programm anschließend noch einmal mit RUN
ausführen.
Fehler korrigieren
Löschen Sie das zweite Anführungszeichen in der Zeile, die das
DISPLAY
-Statement enthält.
Führen Sie das Programm noch einmal wie oben beschrieben aus.
Wenn ein Fehler gefunden wird, wird eine Fehlermeldung angezeigt.
NAT0305 Text string must begin and end on the same line. > > + Program HELLO Lib TUTORIAL All ....+....1....+....2....+....3....+....4....+....5....+....6....+....7.. 0010 * The "Hello world!" example in Natural. 0020 * E 0030 DISPLAY "HELLO WORLD! 0040 END /* End of program 0050 0060 0070 0080 0090 0100 0110 0120 0130 0140 0150 0160 0170 0180 0190 0200 ....+....1....+....2....+....3....+....4....+....5....+... S 4 L 1 |
Die fehlerhafte Zeile ist hervorgehoben und am Anfang mit einem "E" gekennzeichnet.
Korrigieren Sie den Fehler. Das heißt: fügen Sie das fehlende Anführungszeichen wieder am Ende der Zeile ein.
Führen Sie das Programm erneut aus, um den nächsten Fehler zu finden.
In diesem Fall werden keine weiteren Fehler gefunden und die Ausgabe wird angezeigt.
Drücken Sie EINGABE, um zum Programmeditor zurückzukehren.
Wenn Sie ein Programm mit STOW
speichern,
wird es kompiliert und der Quellcode sowie das generierte Programm werden in
der Systemdatei abgelegt.
Wie beim Systemkommando RUN
wird auch
beim Systemkommando STOW
automatisch das
Systemkommando CHECK
aufgerufen. Ein Programm kann
nur dann mit STOW
gespeichert werden, wenn es
syntaktisch korrekt ist.
Anmerkung:
Wenn Sie Ihre Programmänderungen speichern wollen, obwohl das
Programm syntaktische Fehler enthält (wenn Sie Ihre Arbeit zum Beispiel bis zum
nächsten Arbeitstag unterbrechen wollen), dann können Sie das Systemkommando
SAVE
benutzen.
Programm mit STOW
speichern
Geben Sie Folgendes in der Kommandozeile des Programmeditors ein:
STOW
Das Systemkommando LIST
ist hilfreich,
wenn Sie herausfinden wollen, ob für ein Objekt nur der Quellcode vorhanden ist
oder ob beides, der Quellcode und das generierte Programm, vorhanden ist.
Informationen über ein Programm anzeigen
Geben Sie eines der folgenden Kommandos in der Kommandozeile des Programmeditors ein:
LIST DIR HELLO
L DIR HELLO
Der folgende Bildschirm erscheint. Die Informationen bei
Cataloged on stehen nur dann zur Verfügung, wenn das
Objekt mit STOW
gespeichert wurde.
13:15:45 ***** NATURAL LIST COMMAND ***** 2012-07-17 User SAG - List Directory - Library TUTORIAL Directory of Program HELLO Saved on ... 2012-07-17 13:15:36 ------------------------------------------------------------------------------- Library .... TUTORIAL User-ID ...... SAG Mode ....... Structured TP-System .. COMPLETE Terminal-ID .. DAEFTCA9 Op-System .. MVS/ESA Transaction .. NATvr NAT-Ver .... v.r.s Source size .......................... 100 Bytes Directory of Program HELLO Cataloged on 2012-07-17 13:15:36 ------------------------------------------------------------------------------- Library .... TUTORIAL User-ID ...... SAG Mode ....... Structured TP-System .. COMPLETE Terminal-ID .. DAEFTCA9 Op-System .. MVS/ESA Transaction .. NATvr NAT-Ver .... v.r.s Used GDA ... Size of global data ... 0 Bytes Size in DATSIZE ...... 560 Bytes Size in buffer pool ... 2620 Bytes Size of OPT-Code ...... 0 Bytes Initial OPT string .... ENTER to continue |
Anmerkung:
Die Bezeichnungen vr und
v.r.s im Beispielbildschirm oben stehen für die
aktuelle Versionsnummer von Natural. Siehe auch die Definition von
Version im Glossary.
Drücken Sie EINGABE um zum Programmeditor zurückzukehren.
Das Systemkommando LIST
kann dazu benutzt
werden, eine Liste aller Natural-Objekte in der aktuellen Library anzuzeigen.
Dies ist zum Beispiel dann hilfreich, wenn Sie im Laufe dieses Tutorials eines
oder mehrere Ihrer Natural-Objekte löschen wollen, um wieder von vorne zu
beginnen.
Liste der Natural-Objekte anzeigen
Geben Sie eines der folgenden Kommandos in der Kommandozeile des Programmeditors ein:
LIST *
L *
Der folgende Bildschirm erscheint. Das Programm, das sie eben erstellt haben, wird aufgelistet.
13:34:27 ***** NATURAL LIST COMMAND ***** 2012-07-17 User SAG - LIST Objects in a Library - Library TUTORIAL Cmd Name Type S/C SM Version User ID Date Time --- *________ *__________ *__ * *______ *________ *__________ *________ __ HELLO Program S/C S v.r.s SAG 2012-07-17 13:15:36 1 Objects found Top of List. Command ===> Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Print Exit Sort -- - + ++ > Canc |
Um herauszufinden, welche Kommandos zur Verfügung stehen, geben Sie ein Fragezeichen (?) in der Cmd-Spalte neben Ihrem Programm ein.
Das folgende Fenster erscheint.
+-------- COMMANDS ---------+ ! ! ! ED Edit ! ! LI List ! ! LD List Dir ! ! PR Print ! ! LE List expanded ! ! RU Run ! ! ST Stow ! ! CA Catalog ! ! DE Delete ! ! RE Rename ! ! . End ! ! ! ! ! ! ! ! ! ! ! ! __ HELLO ! +---------------------------+ |
Ändern Sie jetzt noch nichts. Drücken Sie PF3 um das Fenster zu schließen, ohne dabei ein Kommando anzugeben.
Drücken Sie noch einmal PF3, um zum Programmeditor zurückzukehren.
Wenn Sie mit dem Programmeditor oder Data-Area-Editor von Natural
arbeiten, kann für jeden Benutzer ein Editorprofil definiert werden. In diesem
Tutorial werden die Standardeinstellungen des Editorprofils mit dem Namen
SYSTEM
benutzt. Einige wichtige Einstellungen werden unten
erwähnt.
Editorprofil-Optionen prüfen
Geben Sie Folgendes in der Kommandozeile des Programmeditors ein:
PROFILE
Der folgende Bildschirm erscheint.
13:35:43 ***** NATURAL EDITORS ***** 2012-07-17 - Editor Profile - Profile Name .. SYSTEM__ PF and PA Keys PF1 ... HELP___________ PF2 ... _______________ PF3 ... EXIT___________ PF4 ... _______________ PF5 ... _______________ PF6 ... _______________ PF7 ... -______________ PF8 ... +______________ PF9 ... _______________ PF10 .. SC=____________ PF11 .. _______________ PF12 .. CANCEL_________ PF13 .. _______________ PF14 .. _______________ PF15 .. MENU___________ PF16 .. _______________ PF17 .. _______________ PF18 .. _______________ PF19 .. --_____________ PF20 .. ++_____________ PF21 .. _______________ PF22 .. _______________ PF23 .. _______________ PF24 .. _______________ PA1 ... _______________ PA2 ... SCAN___________ PA3 ... _______________ Automatic Functions Auto Renumber .. Y Auto Save Numbers .. 0__ Source Save into .. EDITWORK Additional Options .. N Command ===> Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Exit AddOp Save Reset Del Canc |
Wenn es für einen Benutzer noch kein Editorprofil gibt, dann
wird das Standardprofil SYSTEM
angezeigt. Mit diesem
Standardprofil kann ein Benutzerprofil erstellt werden. Wenn ein Benutzerprofil
bereits existiert, dann wird es anstelle des Profils SYSTEM
angezeigt.
Geben Sie "Y" im Feld Additional Options (zusätzliche Optionen) ein und drücken Sie EINGABE.
Oder:
Drücken Sie PF4.
Das folgende Fenster erscheint.
+--------------------- Additional Options ----------------------+ ! ! ! ! ! + Editor Defaults ......... N ! ! + General Defaults ........ N ! ! + Color Definitions ....... N ! ! ! ! ! ! ! ! ! ! ! +---------------------------------------------------------------+ |
Geben Sie "Y" in den Feldern Editor Defaults (Standardeinstellungen für den Editor) und General Defaults (Allgemeine Standardeinstellungen) ein und drücken Sie EINGABE.
Zuerst erscheint das folgende Fenster.
+----------------------- Editor Defaults -----------------------+ | | | Escape Character for Line Command .. . | | Empty Line Suppression ............. Y | | Empty Line Suppression for Text .... N | | Source Size Information ............ N | | Source Status Message .............. Y | | Absolute Mode for SCAN/CHANGE ...... N | | Range Mode for SCAN/CHANGE ......... N | | Direction Indicator ................ + | | | +---------------------------------------------------------------+ |
Hinter Escape Character for Line Command sehen Sie das Umschaltzeichen, das für die Zeilenkommandos definiert ist. Dieses Tutorial geht davon aus, dass das Standardzeichen verwendet wird; dies ist der Punkt (.).
Dieses Tutorial geht auch davon aus, dass die Option Empty Line Suppression (Unterdrückung von Leerzeilen) auf "Y" gesetzt ist. In diesem Fall werden alle Leerzeilen im Programmeditor automatisch gelöscht, sobald Sie EINGABE drücken. Die Leerzeilen werden nicht gelöscht, wenn diese Option auf "N" gesetzt ist.
Achten Sie darauf, dass für dieses Tutorial alle Optionen so gesetzt sind, wie oben angezeigt. Drücken Sie EINGABE, um das nächste Fenster anzuzeigen.
Das folgende Fenster erscheint.
+---------------------- General Defaults -----------------------+ ! ! ! Editing in Lower Case .............. N ! ! Dynamic Conversion of Lower Case ... Y ! ! Position of Message Line ........... TOP ! ! Cursor Position in Command Line .... N ! ! Stay on Current Screen ............. N ! ! Prompt Window for Exit Function .... Y ! ! ISPF Editor as Program Editor ...... N ! ! Leave Editor with Unlock ........... N ! ! ! +---------------------------------------------------------------+ |
Wenn die Option Editing in Lower Case (Editieren in Kleinbuchstaben) auf "Y" gesetzt ist und die Option Dynamic Conversion of Lower Case (dynamische Umsetzung in Kleinbuchstaben) auf "N" gesetzt ist, dann bleibt der Quellcode so erhalten, wie Sie ihn eingeben. Diese Eigenschaft ist jedoch abhängig von den Einstellungen in Ihrer Systemumgebung; wenn diese Einstellungen so gewählt sind, dass eine Umsetzung in Großbuchstaben erzwungen wird, dann kann dies nicht von Natural beeinflusst werden.
Wenn Sie es möchten, können Sie die oben genannten Optionen für die Umsetzung in Kleinbuchstaben ändern und EINGABE drücken. Drücken Sie noch einmal EINGABE, um zum Fenster Additional Options zurückzukehren, und drücken Sie dann noch einmal EINGABE, um dieses Fenster zu schließen.
Wenn ein Benutzerprofil noch nicht erstellt wurde,
überschreiben Sie den Profilnamen SYSTEM
mit Ihrer User-ID und
drücken Sie EINGABE.
Wenn ein Benutzerprofil bereits existiert, fahren Sie fort mit dem nächsten Schritt.
Drücken Sie PF5, um Ihre Änderungen in der Datenbank zu speichern, und drücken Sie dann PF3, um das Editorprofil zu verlassen.
Anmerkung:
Statt eine PF-Taste zu drücken können Sie auch das
entsprechende Kommando in der Kommandozeile eingeben. Im hier beschriebenen
Fall können Sie zum Beispiel die Kommandos SAVE
und
EXIT
eingeben.
Oder:
Wenn Sie Ihre Änderungen nicht in der Datenbank speichern
wollen und sie nur in der aktuellen Session benutzen möchten, drücken Sie
PF3 um das Editorprofil zu verlassen.
Beim Verlassen des Editorprofils wird ein Fenster mit verschiedenen Optionen angezeigt.
+----------- EXIT Function -----------+ ! ! ! _ Save and Exit ! ! _ Exit without Saving ! ! _ Resume Function ! ! ! ! ! +-------------------------------------+ |
Wählen Sie die Option Exit without Saving (Verlassen ohne Speichern), um die Änderungen nur in der aktuellen Session zu benutzen.
Oder:
Wenn Sie das Editorprofil verlassen wollen ohne die Änderungen
zu speichern, drücken Sie PF12.
Ihr Programm wird wieder angezeigt. Falls Sie das Editorprofil geändert haben, dann werden die neuen Einstellungen jetzt im Programmeditor benutzt (und auch im Data-Area-Editor, der später in diesem Tutorial beschrieben wird).
Sie können nun mit den nächsten Übungen fortfahren: Datenbankzugriff.