Dieses Kapitel enthält zusätzliche Informationen zu den von Natural unterstützten Ein-/Ausgabegeräten.
Folgende Themen werden behandelt:
Natural unterstützt eine Vielzahl von Terminaltypen für die
Verwendung mit Großrechnern. In TP-Monitor-Umgebungen, in denen die
Informationen zum Terminaltyp nicht automatisch an Natural geliefert werden,
können Sie den Natural-Profilparameter TTYPE verwenden,
damit Natural die entsprechende Konvertierungsroutine zum Betrieb eines
bestimmten Terminaltyps aktivieren kann.
Links zu verwandten Themen:
Terminal-Kommunikation - Profilparameter sortiert nach Kategorien (Parameter-Referenz-Dokumentation)
NATCONFG-Modul (verschiedene Themen zur E/A-Umsetzung)
Die Unterstützung von Lichtstiften wurde durch das Terminalkommando
%RM
verbessert. Dieses Kommando bewirkt, dass alle lichtstiftempfindlichen Felder
auf dem Bildschirm schreibgeschützt werden, d.h. der Benutzer kann sie mit
einem Lichtstift anwählen, aber ihren Inhalt nicht überschreiben.
Damit ein Feld lichtstiftempfindlich ist, muss es intensiviert
(Session-Parameter AD=I) oder blinkend
(AD=B) dargestellt werden, und das erste Zeichen des Feldes muss
ein Lichtstift-Funktionszeichen sein (siehe unten). Die Auswahl eines Feldes
mit einem Lichtstift bewirkt eine Änderung des Funktionszeichens, daher können
Sie die Verarbeitung von mit einem Lichtstift ausgewählten Feldern von den
Werten der Funktionszeichen abhängig machen.
Die folgenden Lichtstift-Funktionszeichen sind verfügbar:
| Zeichen | Bedeutung |
|---|---|
?
|
Sie können mehrere Felder auswählen, bevor Sie ENTER drücken. |
> |
Es wurde ausgewählt, und wenn es erneut ausgewählt wird,
wird es zu einem Fragezeichen ?. Die Zeichen ? und
> wechseln sich ab.
|
&
|
Sie können nur ein Feld auswählen und es wird als ENTER sowohl für das Feld als auch für das MDT (Modified Data Tag) verwendet. |
' ' (leer)
|
Sie können nur ein Feld auswählen, und es wird nur das MDT angezeigt. |
Bei Funktionszeichen müssen Sie zwischen Auswahlfeldern
(?, >) und Achtungsfelder (&, leer oder Null)
unterscheiden. Auswahlfelder lösen keine sofortige Datenübertragung aus, so
dass Sie mehrere Felder auswählen können. Achtungsfelder führen zu einer
sofortigen Aktion.
Die Taste SELECT CURSOR emuliert eine Auswahl mit dem Lichtstift. Wenn Sie den Cursor auf das Feld bewegen, das Sie auswählen möchten, und SELECT CURSOR drücken, wird dieses Feld ausgewählt.
RESET #FIELD-1 (A8)
#FIELD-2 (A8) #FIELD-3 (A8) #CV-1 (C) #CV-2 (C) #CV-3 (C)
SET KEY ALL
/* SET CONTROL 'RM' IS A TOGGLE. AFTER IT IS EXECUTED ONCE MAKE IT A
/* COMMENT, SO THAT YOU DO NOT TOGGLE IT 'OFF'.
**SET CONTROL 'RM'
REPEAT
IF *PF-KEY NOT = 'ENTR' AND *PF-KEY NOT = 'PEN' ESCAPE BOTTOM
MOVE (AD=I CD=YE) TO #CV-1
MOVE (AD=I CD=RE) TO #CV-2
MOVE (AD=I CD=BL) TO #CV-3
MOVE ' FIELD-1' TO #FIELD-1
MOVE '&FIELD-2' TO #FIELD-2
MOVE '?FIELD-3' TO #FIELD-3
INPUT (SG=OFF IP=OFF)
01/01 #FIELD-1 (CV=#CV-1 AD=M)
03/01 #FIELD-2 (CV=#CV-2 AD=M)
05/01 #FIELD-3 (CV=#CV-3 AD=M)
WRITE 'PF-KEY =' *PF-KEY
IF #CV-1 MODIFIED WRITE '#CV-1 MODIFIED' #FIELD-1
IF #CV-2 MODIFIED WRITE '#CV-2 MODIFIED' #FIELD-2
IF #CV-3 MODIFIED WRITE '#CV-3 MODIFIED' #FIELD-3
LOOP
END
Folgende Themen werden behandelt:
In einem Natural-Programm können Sie Steuerzeichen für den
Druckervorschub mit dem Statement DEFINE PRINTER wie folgt
erzeugen:
.... DEFINE PRINTER (n) OUTPUT 'name' DEFINE PRINTER (n+1) OUTPUT 'CCONTROL' ....
Beide DEFINE PRINTER-Statements wirken zusammen, so
dass alle Natural-Ausgaben für den Drucker
(n) den normalen
Natural-Report-Ausgaberegeln folgen und alle Natural-Ausgaben für den Drucker
(n+1) auch auf den Drucker
(n) geschrieben werden. Natural erzeugt
für diesen Report kein Druckervorschubsteuerzeichen. Daher ist das erste
Zeichen in der Ausgabevariablen das Steuerzeichen.
Mit dieser Methode ist es möglich, Steuerzeichen für Laserdruckersysteme und Kanalvorschubzeichen für Zeilendrucker in einem normalen Natural-Ausgabereport zu mischen.
- Natural-Programmbeispiel für Drucker-Vorschubsteuerzeichen
... DEFINE PRINTER (1) OUTPUT 'CMPRT01' DEFINE PRINTER (2) OUTPUT 'CCONTROL' WRITE (1) 'TEST' WRITE (2) NOTITLE '+TEST' MOVE H'5A' TO A(A1) WRITE (2) A '....' ...Die entsprechenden hexadezimalen Daten in der Spooldatei, beginnend mit Spalte
0, sind:I..I..I..I..I..I..I..I..I..I..I..I..I..I..I F1 E3 C5 E2 E3 1 T E S T 4E E3 C5 E2 E3 + T E S T 5A ....
CCONTROList der Name einer speziellen Druckersteuertabelle, die dem Druckern-1zugeordnet ist. Dieser Name darf nicht geändert werden.
Natural unterstützt Laserdruckersysteme des Typs IBM 3800.
Mit dem Statement DEFINE PRINTER können Sie
einen Report für das Druckersystem 3800 steuern und zuordnen. Mit diesem
Statement können Sie festlegen, dass die Natural-Druckausgabe für Report 1 an
ein Druckersystem 3800 weitergeleitet wird.
DEFINE PRINTER (1) OUTPUT 'LAS3800' I I => 1-31 for CMPRT01 to CMPRT31 ....
Je nach Einstellung des Parameters
INTENS
wiederholt Natural jede Zeile bis zu viermal und erkennt die Natural-Attribute
AD=D, AD=I, AD=C und AD=V
(siehe Session-Parameter AD).
Die erste Zeile enthält in der ersten Spalte den ASA-Steuercode
und in der zweiten Spalte das 3800-Font-Steuerzeichen (hexadezimal
F0) für den ersten Font. Die Spalten 2 bis
nnn enthalten die Druckdaten, die nicht
mit dem Attribut AD=I, AD=C oder AD=V
gekennzeichnet sind.
Die zweite Zeile enthält in der ersten Spalte den ASA-Steuercode
+ (für Druck ohne Zeilenvorschub) und in der zweiten Spalte das
3800-Font-Steuerzeichen (hexadezimal F1) für den zweiten Font. Die
Spalten 2 bis nnn
enthalten die Druckdaten, die mit AD=I gekennzeichnet sind.
Die dritte Zeile enthält in der ersten Spalte den ASA-Steuercode
+ (für Druck ohne Zeilenvorschub) und in der zweiten Spalte das
3800-Font-Steuerzeichen (hexadezimal F2) für die dritte
Schriftart. Die Spalten 2 bis
nnn enthalten die Druckdaten, die mit
AD=C gekennzeichnet sind.
Die vierte Zeile enthält in der ersten Spalte den ASA-Steuercode
+ (für Druck ohne Zeilenvorschub) und in der zweiten Spalte das
3800-Font-Steuerzeichen (hexadezimal F3) für den vierten Font. Die
Spalten 2 bis nnn
enthalten die Druckdaten, die mit AD=V gekennzeichnet sind.
Wenn INTENS mit einem Wert kleiner als 4
angegeben wird, werden alle nicht unterstützten Schriften mit dem
Hexadezimalzeichen F0 gedruckt.
- Beispiel für ein Natural-Programm zur Verwendung von Laserdruckern
.... DEFINE PRINTER (1) OUTPUT 'LAS3800' WRITE (1) 'FIRST' 'SECOND' (AD=I) 'THIRD' (AD=C) 'FOURTH' (AD=V) ....Die entsprechenden hexadezimalen Daten in der Spooldatei, beginnend mit Spalte
0, sind:I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I..I 40 F0 C6 C9 D9 E2 E3 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 (hex) 0 F I R S T 4E F1 40 40 40 40 40 40 E2 C5 C3 E4 D5 C4 C4 40 40 40 40 40 40 40 (hex) + 1 S E C O N D 4E F2 40 40 40 40 40 40 40 40 40 40 40 40 40 E3 C8 C9 D9 D4 40 40 (hex) + 2 T H I R D 4E F3 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 C5 (hex) + 3 F- Beispiel-JCL für die Verwendung von Laserdruckern
.... //xxxx JOB xxxxx,.... . //xxxxx EXEC PGM= XXXXXX;...... . // PARM='INTENS=4,XXXX,....... . . //OUT1 OUTPUT PAGEDEF=XXXX,FORMDEF=XXXX,TRC=ON . I I . I I => 3800 form definition . I . I => 3800 page definition . //CMPRT01 DD SYSOUT=Y // DCB=(RECFM=FBA,LRECL=133),OUTPUT=*,OUT1 // CHARS=(WWWW,XXXX,YYYY, ZZZZ) I I => IBM font names ...