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 ...