Allgemeines
Anwendungsgebiet: | Ein-/Ausgabe von Dateien und Sätzen; siehe "Ein-/Ausgabe"; Verkehr mit Datenstationen; siehe "Verkehr mit Datenstationen" |
Makrotyp: | S-Typ, MF-Format 3: C-/D-/L-/M-Form; siehe "S-Typ-Makroaufrufe" |
Stand der Beschreibung: VTSU V13.3A
Makrobeschreibung
Der VTSU-Control-Block (VTSUCB) ist eine Programmschnittstelle, über die der Benutzer VTSU-Parameter für die Ein- und Ausgabe mit den Makros RDATA, WROUT und WRTRD erstellen kann.
Die Kopplung an die Ein- und Ausgabeschnittstelle ist mit folgenden Aufrufen möglich:
WROUT satz,fehler[,PARMOD=31],VTSUCBA=adrvtsucb
oder WRTRD satz1,,satz2,,[länge],fehler,[,PARMOD=31],VTSUCBA=adrvtsucb
oder RDATA satz,fehler,[länge][,A][,PARMOD=31],VTSUCBA=adrvtsucb
Dabei benennt der Operand VTSUCBA eine Adresse (adrvtsucb), ab der die VTSU-Parameter stehen. Diese Angaben ersetzen die Edit-Parameter der jeweiligen Makros. Der Makro VTSUCB erstellt einen solchen Datenbereich.
Die RDATA/WROUT/WRTRD-Schnittstellen mit Edit-Parameter können parallel zur VT-SUCB-Schnittstelle benutzt werde. Neue Funktionen (ab VTSU V9.0B) können jedoch nur über den VTSUCB genutzt werden, da die Edit-Parameter nicht mehr erweitert werden.
Erweiterte Zeichensätze werden durch die Operanden CCSNAME und CODETR unterstützt. Diese Operanden werden nur bei MODE=LINE/EXTEND/INFO/FORM/PHYS ausgewertet.
Makroaufrufformat und Operandenbeschreibung
VTSUCB |
[{MODE=LINE,BELL= {NO / YES},GETFC= {NO / YES},HCOPY= {NO / YES},NOPOS= {NO / YES } ,LOW= {NO / YES},NOLOG= {NO / YES},RETINF= {*NONE / xx}],HOM= {NO / YES} [,CCSNAME= {*EXTEND / ccsname}],SPECIN= {N / I / C} ,ENCOUT= {NO / YES},ENCIN= {NO / YES},INFOLR= {NO / YES} / MODE=EXTEND,BELL= {NO / YES},GETFC= {NO / YES},LOW= {NO / YES} [,CCSNAME= {*EXTEND / ccsname}] ,LOCIN= {NO / YES },UPDATE= {NO /YES},CURPOS= {NO / YES} ,AUTOTAB= {STD / YES / NO},HCOPY= {NO / YES},READ= {UNPROT / MODIFIED} ,ENCOUT= {NO / YES},ENCIN= {NO / YES},INFOLR= {NO / YES }}] [{MODE=(MIXED,inmod,outmod) ,LOW= {NO / YES},HOM= {NO / YES},HCOPY= {NO / YES} ,BELL= {NO /YES},GETFC= {NO / YES},UPDATE= {NO / YES },NOPOS= {NO /YES} ,READ= {UNPROT / MODIFIED},NOLOG= {NO / YES},IHDR= {YES / NO} ,LOCIN= {NO / YES},CODETR= {YES / NO},CURPOS= {NO / YES} ,OHDR= {NO / YES}[,CCSNAME= {*EXTEND / ccsname}] ,RETINF= {*NONE / xx } ,AUTOTAB= {STD / YES / NO},SPECIN= {N / I / C} ,ENCOUT= {NO / YES},ENCIN= {NO / YES},INFOLR= {NO / YES} / MODE=INFO ,BELL= {NO / YES},GETFC= {NO /YES},LOW= {NO / YES} [,CCSNAME= {*EXTEND / ccsname}] ,NOLOG= {NO / YES},ENCOUT= {NO / YES},ENCIN= {NO / YES} / MODE=PHYS ,IHDR= {YES / NO},LOW= {NO / YES},OHDR= {NO /YES} [,CCSNAME= {*EXTEND / ccsname}] ,CODETR= {YES / NO},ENCOUT= {NO / YES},ENCIN= {NO /YES},INFOLR= {NO / YES} }] [{MODE=FORM ,LOW= {NO / YES}[,CCSNAME= {*EXTEND / ccsname}] ,ENCOUT= {NO / YES},ENCIN= {NO / YES},INFOLR= {NO / YES} / MODE=TRANS ,ENCOUT= {NO / YES},ENCIN= {NO / YES},INFOLR= {NO / YES} / MODE=CHIP ,ENCOUT= NO / YES},ENCIN= {NO / YES} }] ,MF=L / C / D / M [,PARAM=adr / (r)] ,PREFIX=Y / p ,MACID=VTC / macid |
MODE=
LINE
Die aktuelle Datenstation soll als logische Zeilen- bzw. Seiten-Datenstation behandelt werden. Die Nachricht kann durch logische Steuerzeichen strukturiert werden (siehe Makro VTCSET).
Für die Ausgabe sind weitere Steuerzeichen unzulässig und werden in ein vom Benutzer definiertes Ersatzzeichen umgewandelt (siehe Kommando MODIFY-TERMINAL-OPTIONS SUBSTITUTE-CHARACTER=).
Ist SYSOUT keine Datenstation, so werden nur die logischen Steuerzeichen NL und NP ausgewertet z.B. bei Ausgaben auf Drucker im Batch-Betrieb.
Bei der Eingabe wird der gerätespezifische Nachrichtenkopf nicht mitgeliefert.
EXTEND
(Nur für Datenstationen 9749, 975x, 9763, 816x und 3270, bei Druckern wird EXTEND intern als Line-Modus verarbeitet)
Die aktuelle Datenstation soll als logische Zeilen- bzw. Seiten-Datenstation behandelt werden. Die Ausgabe des Textes erfolgt standardmäßig geschützt und halbhell. Die Nachricht kann durch logische Steuerzeichen strukturiert werden (siehe Makro VTC-SET). Die Tasten RU, EFZ, AFZ und LSP sind gesperrt.
Bei TIAM-Anwendungen werden Bereiche, in die der Anwender eingeben kann, mit EPA, DAR oder NUM begonnen und mit SPA beendet. Bei 3270-Datenstationen ist zu beachten, dass die logischen Steuerzeichen Platz auf dem Bildschirm beanspruchen. Mehrere logische Steuerzeichen hintereinander benötigen aber nur einen Platz.
Bei TIAM-Anwendungen wird bei Ein- und Ausgabe NIL als erlaubtes Zeichen behandelt, es wird vom Programm zur Datenstation und umgekehrt geschickt. Bei 3270-Datenstationen ist zu beachten, dass NIL-Zeichen nicht zur DVA übertragen werden. VTSU-B ergänzt Felder, die bei der Eingabe verkürzt zurückkommen, durch NIL-Zeichen auf ihre ursprüngliche Länge. Dadurch bekommt der Anwender die Felder immer in der Ausgabelänge zurück.
Bei TIAM-Anwendungen wird der Anfang einer Ausgabenachricht an dem dem Cursor folgenden nächsten Zeilenanfang abgebildet. Vor dem 1. Textzeichen wird der Schirm ab Cursor gelöscht, wenn die Nachricht nicht mit VPA beginnt.
Wird bei der Ausgabe das Bildschirmende erreicht, so wird am Schirmanfang fortgesetzt. Diese Fortsetzung ist in jedem Fall bis zum nächsten Feldanfang ungeschützt. Die Bildschirmüberlaufkontrolle ist unwirksam.
Wird in einer Eingabenachricht das Steuerzeichen NL erkannt, so wird die Bearbeitung fortgesetzt und der Returncode X'2C' an der WRTRD-Schnittstelle geliefert bzw. der Returncode (Maincode) X'0018' an der VTSUCB-Schnittstelle.
INFO
Nachrichten können in einer speziellen Informationszeile (Systemzeile) abgebildet werden, ohne dabei an der Datenstation wichtige Daten zu zerstören.
Die Angabe ist vor allem für die Benutzerprogramme gedacht, die „asynchron“ Nachrichten an Datenstationen senden, ohne die aktuelle Datenstationsanzeige zu kennen.
Die Abbildung erfolgt:
bei Datenstationen mit Hardware-Anzeigezeile immer geschützt in einer Hardware-Anzeigezeile (z.B. DSS 9749, 9750, 9763)
bei Datenstationen ohne Hardware-Anzeigezeile geschützt in der 24. Bildschirmzeile. Zuvor muss jedoch eine Ausgabe mit MODE=PHYS oder MODE=FORM erfolgt sein und TCHNG INFOLIN=YES gesetzt worden sein.
in allen anderen Fällen:wie eine normale Line-Mode-Nachricht.
Ist die Nachricht länger als eine Bildschirmzeile, wird sie aufgeteilt und Zeile für Zeile ausgegeben.
Das System berücksichtigt dabei die durch das Kommando MODIFY-TERMINAL-OP-TIONS OVERFLOW-CONTROL=TIME( ) eingestellte Wartezeit.
Die Systemzeile wird automatisch zurückgesetzt. Die Rücksetzung erfolgt nach der ersten Eingabe, die auf eine Ausgabe in der Systemzeile folgt.
Die Eingabe bei MODE=INFO wird wie eine Line-Mode-Eingabe behandelt.
Hinweis
Wird beim WRTRD vor der Systemzeilenausgabe im Line-Mode gearbeitet, wird automatisch ein Eingabefeld eingerichtet.
(MIXED,inmode,outmode)
Das Anwendungsprogramm kombiniert unterschiedliche Moden für Ein- und Ausgabe. Nur MODE=LINE, EXTEND, FORM und PHYS dürfen kombiniert werden.
MODE=CHIP, INFO oder TRANS dürfen nicht kombiniert werden.
Der Standardwert der Operanden LOW, für Ein- und Ausgabe, hängt von dem festgelegten Eingabemodus ab. Bei MODE=PHYS ist LOW=YES, bei MODE=LINE, EX-TEND oder FORM ist LOW=NO. Alle anderen Operandenwerten werden entsprechend der geforderten Ein-/Ausgabemodi festgelegt.
PHYS
Die Nachrichten sollen physikalisch, d.h. ohne Aufbereitung durch das System an die Datenstation ausgegeben bzw. von dort eingelesen werden. Damit können spezielle Gerätefunktionen angesprochen werden, für die der LINE- oder FORM-Modus nicht ausreicht.
FORM
Format-Modus. Das Anwenderprogramm arbeitet mit der Software-Komponente FHS bzw. Formatsteuerung, die auch die datenstationsgerechte Aufbereitung der Ausgabenachricht vornimmt.
TRANS
Die Ausgabedaten sollen 'transparent' übertragen werden, d.h. sie bestehen aus beliebigen Binärzeichen (je nach Gerätecode aus 5, 7 oder 8 Bit pro Zeichen), die auf dem Übertragungsweg nicht umgewandelt werden. Ist der Übertragungsweg nicht „potenziell transparent“ generiert, wird die Ausgabe mit dem Returncode X'04' der WROUT/WRTRD-Schnittstelle zurückgewiesen.
CHIP
Die Ausgabenachricht wird mit dem Geräteprotokoll (810 Protokoll) an das Chipkartenterminal weitergeleitet. Die Nachricht muss im expandierten Modus (siehe Handbücher „Datensichtstationen“) erstellt sein. Ist das Chipkartenterminal nicht ansprechbar, wird die Ausgabe mit dem Returncode X'81' bzw. X'82' (Subcode 2) der VTSUCB-Schnittstelle abgewiesen.
Bei der Eingabe wird geprüft, ob die Nachricht vom Chipkartenterminal kommt und das Geräteprotokoll entfernt. Vor die Eingabenachricht wird als erstes Byte der Funktionstastencode gesetzt. Eingabenachrichten, die nicht vom Chipkartenterminal kommen, werden in das Kurztelegramm K14 umgewandelt.
Hinweis
Beim Makro RDATA ist der Operand MODE=CHIP nicht zugelassen.
AUTOTAB=
Der automatische Tabulatorsprung von einem ungeschützten Feld zum nächsten ungeschützten Feld wird festgelegt. Im Mixed-Modus wird dieser Parameter nur akzeptiert, wenn Ein- und Ausgabe-Modus den Wert EXTEND haben. Andernfalls wird er ignoriert.
STD
Die Verarbeitung ist vom Betriebsparameter EXPROPOS abhängig.
YES
Sobald Sie am Ende eines ungeschützten Feldes ein Zeichen eintragen, springt der Cursor automatisch von diesem ungeschützten Feld weiter zum nächsten ungeschützten Feld (auch wenn EXPROPOS=Y).
Hinweise
Bei 3270 Datensichtstationen ist es immer möglich, den Cursor mit den Pfeiltasten auf geschützten Feldern zu bewegen. Ist jedoch AUTOTAB=YES, springt der Cursor automatisch von einem Eingabefeld zum nächsten, sobald am Ende eines Eingabefeldes ein Zeichen eingetragen wird.
Der Betriebsparameter EXPROPOS wird von der Datensichtstation 3270 ignoriert.
NO
Der Cursor springt nicht automatisch (auch wenn EXPROPOS=N).
BELL=
bestimmt, ob bei der Ausgabe ein akustisches Signal ertönt.
NO
Bei der Ausgabe ertönt kein akustisches Signal.
YES
Bei der Ausgabe ertönt am Ende der Nachricht ein akustisches Signal (nur bei den Datenstationen 9749, 975x, 9763 816x und 3270 mit einem speziellen Gerätezusatz).
CCSNAME=
Der Name des zu verwendenden Zeichensatzes, für diese Nachricht, wird festgelegt. Der Code-Namen der EBCDIC-Variante muss angeben werden. Der Name der entsprechenden ISO-Code-Variante wird automatisch abgelehnt. Der Name darf maximal 8 Byte lang sein. Bei einem Wechsel des verwendeten Zeichensatzes vor der neuen Ausgabe wird automatisch der Bildschirm gelöscht.
ccsname
Zeichensatzname, Name eines beliebigen EBCDIC-Codes. Wird kein Name angegeben, wird automatisch im Standard-Modus gearbeitet. Dies ist entweder ein 7-bit-Modus oder ein mit dem Kommando MODIFY-TERMINAL-OPTIONS aktivierter 8-bit-Modus.
*EXTEND
Es wird automatisch der erweiterte Anwender-Standard-Code benutzt.
CODETR=
Bei der physikalischen Ausgabe wird festgelegt, ob die Nachricht aus dem spezifizierten Code oder in den spezifizierten Code übersetzt werden soll. Dieser Operand ist nur bei einer Ausgabe auf Druckern sinnvoll, die mit ESCAPE-Sequenzen arbeiten, die nicht entsprechend des EBCDIC-Kerns codiert sind. Diese speziellen ESCAPE-Sequenzen werden von VTSU ignoriert.
YES
VTSU übersetzt die Nachricht aus dem spezifizierten oder in den spezifizierten Code. Die Standard-ESCAPE-Sequenzen werden von VTSU erkannt und übersprungen.
NO
Die Kontrollzeichen SO/SI werden ausgewertet. Eine weitere Code-Umwandlung durch VTSU entfällt.
CURPOS=
Für den Extended-Line-Modus und für den Mixed-Modus wird festgelegt, ob nach der Eingabe die Cursorposition zurückgeliefert werden soll. Im Mixed-Modus wird dieser Parameter nur akzeptiert, wenn Ein- und Ausgabe-Modus den Wert EXTEND haben. Andernfalls wird er ignoriert.
NO
Es wird keine Information über die Cursorposition geliefert. Die Felder YVTCPOSL und YVTCPOSC sind undefiniert.
YES
Die Felder YVTCPOSL und YVTCPOSC werden mit der aktuellen Cursorposition (Zeilen und Spalten) nach der Eingabe zurückgeliefert.
ENCIN=
Gibt an, ob die nächste Eingabe verschlüsselt sein muss oder nicht (gilt nur, wenn die Verbindung von einer Emulation aufgebaut wird, die die Verschlüsselung unterstützt).
YES
Die nächste Eingabe muss verschlüsselt sein.
NO
Die nächste Eingabe darf nicht verschlüsselt sein (dennoch kann eine Verschlüsselung der Nachricht nicht verhindert werden, wenn die Verschlüsselung auf andere Weise angefordert wurde).
ENCOUT=
Gibt an, ob die aktuelle Ausgabe verschlüsselt werden muss oder nicht (gilt nur, wenn die Verbindung von einer Emulation aufgebaut wird, die die Verschlüsselung unterstützt).
YES
Die Ausgabe muss verschlüsselt sein.
NO
Die Ausgabe darf nicht verschlüsselt sein (dennoch kann eine Verschlüsselung der Nachricht nicht verhindert werden, wenn die Verschlüsselung auf andere Weise angefordert wurde).
GETFC=
bestimmt, ob ein Funktionstastencode übergeben wird.
NO
Es soll kein Funktionstastencode übergeben werden.
YES
Der logische Funktionstastencode, der die Taste darstellt, die die Datenübertragung an der Datenstation auslöst, wird als erstes Zeichen der Nachricht übertragen.
HCOPY=
legt fest, ob die Ausgabenachricht nicht nur auf eine Datensichtstation, sondern auch über ein angeschlossenes Hardcopy-Gerät (Drucker) ausgegeben werden soll.
NO
Die Ausgabenachricht wird nur über die Datensichtstation ausgegeben.
YES
Die Ausgabenachricht für eine Datensichtstation wird gleichzeitig über ein dort angeschlossenes Hardcopy-Gerät (Drucker) ausgedruckt.
Hinweise
Der Hardcopy-Ausdruck erfolgt nur dann, wenn für die Datensichtstation beim Verbindungsaufbau oder durch das Kommando MODIFY-TERMINAL-OPTIONS ein Hardcopy-Gerät zugewiesen wurde. Bei 3270-Datenstationen muss das Hardcopy-Gerät beim Verbindungsaufbau zugewiesen (generiert) sein.
Wird HCOPY=YES verwendet und kein EXTEND-Mode benutzt und enthält die Nachricht das logische Steuerzeichen SPA, EPA, NUM oder DAR (falls DARPRIN-TABLE=N ist), so wird nicht die gesamte Nachricht, sondern nur der letzte ungeschützte Teil der Nachricht abgedruckt.
Wird gleichzeitig MODIFY-TERMINAL-OPTIONS OVERFLOW-CONTROL=NO verwendet, kann es vorkommen, dass nur ein Teil der Ausgabe auf dem Hardcopy-Gerät wiedergegeben wird.
HOM=
(Nur für Datensichtstationen 816x, 9749, 975x ,9763 und 3270).
NO
Die Nachricht soll strukturiert und heterogen ausgegeben werden, d.h. als Ausgabeeinheit wird eine logische Zeile betrachtet.
Wirkung bei Datensichtstationen 816x, 975x, 9763 und 3270 bei Betriebsart 1 (nur für TIAM-Anwendungen):
Einzelne logische Zeilen können getrennt modifiziert und damit gezielt zurückübertragen werden.
YES
Die Nachricht soll unstrukturiert und homogen ausgegeben werden, d.h. die gesamte Nachricht wird als eine Ausgabeeinheit betrachtet. Die Nachrichtenlänge ist durch die Größe des Ausgabepuffers im System beschränkt.
Wirkung bei Datensichtstationen 816x, 975x, 9763 und 3270 bei Betriebsart 1 (nur für TIAM-Anwendungen):
Durch Modifikation eines Zeichens einer Ausgabenachricht kann die gesamte Nachricht wieder zurückübertragen werden, sofern diese nicht durch logische Anzeigesteuerzeichen explizit strukturiert wird.
IHDR=
gibt an, wie mit dem Nachrichtenkopf verfahren wird.
YES
Der gesamte Nachrichtenkopf wird an das Benutzerprogramm übergeben (Standardwert für MODE=PHYS).
Bei 3270-Datenstationen besteht der Nachrichtenkopf aus dem Code der Sendetaste (AID-Byte) und der zwei Byte langen Schreibmarkenposition.
NO
Der Nachrichtenkopf wird nicht an das Benutzerprogramm übergeben.
INFOLR=
Gibt an, ob die Informationszeile zurückgesetzt werden muss.
YES
Die Informationszeile muss zurückgesetzt werden.
NO
Die Informationszeile muss nicht zurückgesetzt werden.
LOCIN=
legt fest, wie mit lokalen Attributen in der Eingabenachricht verfahren wird.
Dieser Operand betrifft nur Datensichtstationen, die lokale Attribute unterstützen (z.B. Datenstation 9763).
NO
Lokale Attribute werden aus der Eingabenachricht entfernt und nicht an den Anwender weitergegeben.
YES
Sind lokale Attribute in der Eingabenachricht, werden sie an den Anwender als logische Steuerzeichen weitergereicht (siehe Makro VTCSET).
LOW=
legt fest, ob zwischen Klein- und Großschreibung unterschieden werden soll. Die Voreinstellung des Operanden LOW ist abhängig vom Operanden MODE:
MODE=MIXED | die Voreinstellung hängt vom festgelegten Eingabemodus |
MODE=PHYS | LOW=YES ist Voreinstellung |
MODE=LINE/EXTEND/FORM | LOW=NO ist Voreinstellung |
NO
Alle Kleinbuchstaben werden dem Benutzerprogramm als Großbuchstaben übergeben.
YES
Dem Benutzerprogramm werden auch Kleinbuchstaben übergeben (Standardwert für MODE=PHYS).
MF=
Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. PREFIX, MACID und PARAM) siehe Abschnitt „S-Typ-Makroaufrufe“. Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben und aus dem Aufrufformat ersichtlich.
Bei der C-Form, D-Form oder M-Form des Makroaufrufs kann ein Präfix PREFIX und bei der C-Form oder M-Form zusätzlich eine Macid MACID angegeben werden (siehe AAbschnitt „S-Typ-Makroaufrufe“).
NOLOG=
bestimmt, ob logische Steuerzeichen ausgewertet werden sollen.
NO
Alle logischen Steuerzeichen werden ausgewertet und spezielle physikalische Steuerzeichen werden durchgelassen (siehe Makro VTCSET z.B. ESC,DC4). Andere Zeichen < X'40' werden durch SUB ersetzt. Abdruckbare Zeichen werden durchgelassen.
YES
Logische Steuerzeichen werden nicht ausgewertet. Alle Zeichen, die im EBCDIC-Code < X'40' sind, werden durch SUB (Schmierzeichen) ersetzt. Nur abdruckbare Zeichen werden durchgelassen.
NOPOS=
(Nur für Drucker). Für den Line-Modus und für den Mixed-Modus wird der Ausgabeort von Nachrichten festgelegt.
Im Mixed-Modus wird dieser Parameter nur akzeptiert, wenn der Ausgabemodus MO-DE=LINE ist. Andernfalls wird er ignoriert.
NO
Die Ausgabenachricht beginnt am Anfang der nächsten Zeile.
YES
Die Ausgabenachricht beginnt am Anfang der aktuellen Zeile.
OHDR=
gibt an, wie mit dem benutzerindividuellen Nachrichtenvorspann verfahren wird.
NO
Der Nachrichtenkopf wird dem Ausgabetext nicht vorangestellt.
YES
Die Nachricht enthält einen benutzerindividuellen Nachrichtenkopf, den das System dem Ausgabetext voranstellt. Die Länge des Nachrichtenkopfes +1 muss im ersten Byte der Nachricht binär angegeben werden.
Hinweis
Bei Ausgabe auf die Datensichtstationen 8160, 975x, 9763 und daran lokal angeschlossene Drucker ist zu beachten, dass das System (mit MODE=LINE) oder FHS (mit MODE=FORM) mit Operandenangaben (PAG) arbeitet und keinen Nachrichtenkopf verwendet (PARAM0, PARAM1). Die Unterschiede zwischen diesen beiden Arbeitsweisen sind in den Handbüchern der Datensichtstationen bzw. Drucker beschrieben.
READ=
Für den Extended-Line-Modus und für den Mixed-Modus wird der physikalische Lese-Modus festgelegt.
Im Mixed-Modus wird dieser Parameter nur akzeptiert, wenn Ein- und Ausgabe-Modus den Wert EXTEND haben. Andernfalls wird er ignoriert.
Beachten Sie, dass bei DCAM-Anwendungen im Extended-Line-Modus bei einem Aufruf YSEND gefolgt von einem Aufruf YRECEIVE beide Aufrufe den gleichen physikalischen Lese-Modus (UNPROT oder MODIFIED) haben müssen.
UNPROT
Alle ungeschützten Felder, auch die nicht geänderten, werden an Sie zurückgeliefert. Um die geänderten Werte festzustellen, müssen Sie die empfangenen Daten mit den Ausgabedaten vergleichen.
MODIFIED
Nur die modifizierten Felder werden an Sie zurückgeliefert. Jedem modifizierten Feld wird im Benutzerpuffer seine Position am Bildschirm vorangestellt (siehe logische Steuerzeichen VPA und HPA).
RETINF=
entscheidet, ob von Druckerstationen eine Rückmeldung gefordert wird.
*NONE
Es wird keine Rückmeldung geliefert.
xx
zwei beliebige abdruckbare Zeichen, die mit der Rückmeldung zurückgeliefert werden sollen. Hochkommas, die zurückgeliefert werden sollen, müssen verdoppelt werden (z.B. RETINF=''''). Die Rückmeldung ist 4 Byte lang und wird wie folgt aufgebaut:
Byte 0 | Identifikation (X'41' positiv/ X'42' negativ) |
Byte 1-2 | RETINF-Byte |
Byte 3 | Information über Drucker-Status (druckerabhängig) |
SPECIN=
fordert eine spezielle Eingabe an. Wird eine spezielle Eingabe gefordert, muss zuvor der Operand SPECIN in der anfordernden Ausgabenachricht angegeben werden.
N
Normale Eingabe von der Datenstation.
I
Die Daten werden vom Ausweisleser gelesen. Die Eingabedaten können aus der Ausweisinformation oder dem Kurztelegramm K14 bestehen. Diese Angabe ist nur bei Datenstationen 9749, 975x, 9763, 816x und 3270 mit definiertem Ausweisleser möglich.
Im Unterschied zu den TRANSDATA-Geräten können bei 3270-Datenstationen jederzeit Daten von einem definierten Ausweisleser eingegeben werden. Wenn Eingaben vom Ausweisleser angefordert werden, wird jede andere Eingabe in K14 umgewandelt.
C
Die Eingabedaten sind vertraulich und bleiben an der Datenstation unsichtbar. Dies erfolgt durch Dunkelsteuerung bzw. Löschen des Bildschirms (wodurch das Bildschirmformat auf 24x80 zurückgesetzt wird), oder durch Überschreiben der Eingabezeile an Schreibstationen.
UPDATE=
Für den Extended-Line-Modus und für den Mixed-Modus können Sie bei Formatausgaben festlegen, ob der ganze Bildschirm neu aufgebaut wird, oder nur die modifizierten Zeilen aktualisiert werden sollen. Eine modifizierte Zeile ist eine Zeile in der entweder ein existierendes Feld aktualisiert oder ein neues Feld erzeugt wird. Im Mixed-Modus wird dieser Parameter nur akzeptiert, wenn Ein- und Ausgabe-Modus den Wert EXTEND
haben. Andernfalls wird er ignoriert.
NO
Bei der ersten logischen neuen Seite, wird der ganze Bildschirm neu aufgebaut.
YES
Es werden nur die modifizierten Zeilen aktualisiert.
Wenn Sie ein neues Feld erzeugen, sollten Sie darauf achten, dass das Ende dieses neuen Feldes mit dem Ausgabeattribut 'nicht sichtbar' und dem Feldattribut 'geschützt' versehen ist. Wird ein neues Feld erzeugt, werden bis zum nächsten Feldanfang binäre Nullen ausgegeben. Durch das Ausgabeattribut 'nicht sichtbar' wird die Ausgabe von binären Nullen unterdrückt und es werden Leerzeichen ausgegeben.
Durch das Feldattribut 'geschützt' wird verhindert, dass das nachfolgende Feld durch das neue Feld überschrieben werden kann.
Beachten Sie, dass beim Aktualisieren des Bildschirms der gleiche Zeichensatz (CCS-NAME) verwendet werden muss, wie beim Erstellen des Ursprungs-Bildschirms. Andernfalls wird der Ursprungs-Bildschirm gelöscht und es werden nur die aktualisierten Zeilen ausgegeben.
Weiter müssen Sie beachten, dass durch das Aktualisieren Feldattribute nicht implizit zurückgesetzt werden. Zum Beispiel behält ein Feld, dem das Attribut 'vormodifiziert' zugeordnet wurde auch nach dem Aktualisieren das Attribut 'vormodifiziert'. Attribute müssen somit explizit zurückgesetzt werden.
Rückinformation und Fehleranzeigen
Standardheader:
+---------------+ | | | | | |c|c|b|b|a|a|a|a| +---------------+
Über die Ausführung des Makros VTSUCB wird im Standardheader folgender Returncode übergeben (cc=Subcode2, bb=Subcode1, aaaa=Maincode):
X'cc' | X'bb' | X'aaaa' | Erläuterung |
X'00' | X'00' | X'0000' | Erfolgreiche Bearbeitung. |
X'58' | X'00' | X'0008' | Erfolgreiche Bearbeitung, aber RETINF-Byte ist falsch. Operand |
X'02' | X'00' | X'0008' | Erfolgreiche Bearbeitung, aber Mode für aktuelle Datenstation unzulässig. |
X'00' | X'01' | X'FFFF' | Funktion nicht ausgeführt. |
X'xx' 1) | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'40' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'50' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'60' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'61' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'62' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'80' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'86' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'1E' | X'01' | X'0004' | Funktion nicht ausgeführt. |
X'00' | X'03' | X'FFFF' | Funktion nicht ausgeführt. |
X'xx' | X'20' | X'0004' | Funktion nicht ausgeführt. |
X'00' | X'40' | X'000C' | Ausgabenachricht abgeschnitten. |
X'00' | X'40' | X'0010' | Eingabenachricht abgeschnitten. |
X'00' | X'40' | X'0018' | Extended line mode: Eingabenachricht verkürzt. |
X'02' | X'40' | X'0004' | Funktion nicht ausgeführt. |
X'10' | X'40' | X'0020' | Funktion nicht ausgeführt. |
X'81' | X'40' | X'0004' | Funktion nicht ausgeführt. Für die Datenstation ist kein Chipkartenterminal |
X'82' | X'40' | X'0004' | Funktion nicht ausgeführt. Chipkartenterminal vorhanden, aber nicht |
X'83' | X'40' | X'0004' | Funktion nicht ausgeführt. |
Weitere Returncodes, deren Bedeutung durch Konventionen makroübergreifend festgelegt ist, können der Tabelle „Standard-Returncodes“ (Standardheader) entnommen werden.
1)
In Subcode 2 wird der erste falsche Parameter im VTSUCB angezeigt.
08: Längenangabe im VTSUCB falsch10: Operand MODE falsch11: Operand HCOPY falsch
12: Operand BELL falsch
13: Operand NOLOG falsch
14: Operand READ falsch
15: Operand HOM falsch
16: Operand RETINF falsch
17: Operand LOCIN falsch
18: Operand OHDR falsch
19: Operand CODETR falsch1A: Operand IHDR falsch
1B: Operand LOW falsch
1C: Operand SPECIN falsch
1D: Operand GETFC falsch
1E: Operand CCSNAME falsch1F: Operand CURPOS falsch20: Operand UPDATE falsch
22: Operand AUTOTAB falsch23: Operand NOPOS falsch
24: Operand ENCOUT falsch25: Operand ENCIN falsch
26: Operand INFOLR falsch
Das linke Byte des Maincodes wird zurzeit nicht belegt und auf den Wert X'00' gesetzt. Wenn im Standard-Header Fehler sind, die der Selbstidentifikation des Produktes dienen (z.B falsche Version), wird der Wert auf X'FF' gesetzt.
Fehlermeldungen, die ohne Verwendung des VTSUCB an die Ein-/Ausgabeschnittstelle der Zugriffsmethoden geliefert werden, werden in gleicher Form auch bei Verwendung des VTSUCB an die Ein-/Ausgabeschnittstelle geliefert. Zusätzlich dazu wird eine entsprechende Fehlerinformation im VTSUCB geliefert. Fehlerinformationen, die nur den VTSUCB betreffen, werden an den Ein-/Ausgabeschnittstellen durch einen eigenen Returncode (X'24') angezeigt und im VTSUCB-Returncode näher erklärt.
Layout der DSECT
VTSUCB MF=D,PREFIX=A 1 AVTSUCB DSECT 1 FHDR MF=(C,AVTC),EQUATES=NO 2 DS 0A 2 AVTCFHE DS 0XL8 0 GENERAL PARAMETER AREA HEADER 2 * 2 AVTCIFID DS 0A 0 INTERFACE IDENTIFIER 2 AVTCFCTU DS AL2 0 FUNCTION UNIT NUMBER 2 * BIT 15 HEADER FLAG BIT, 2 * MUST BE RESET UNTIL FURTHER NOTICE 2 * BIT 14-12 UNUSED, MUST BE RESET 2 * BIT 11-0 REAL FUNCTION UNIT NUMBER
2 AVTCFCT DS AL1 2 FUNCTION NUMBER 2 AVTCFCTV DS AL1 3 FUNCTION INTERFACE VERSION NUMBER 2 * 2 AVTCRET DS 0A 4 GENERAL RETURN CODE 2 AVTCSRET DS 0AL2 4 SUB RETURN CODE 2 AVTCSR2 DS AL1 4 SUB RETURN CODE 2 2 AVTCSR1 DS AL1 5 SUB RETURN CODE 1 2 AVTCMRET DS 0AL2 6 MAIN RETURN CODE 2 AVTCMR2 DS AL1 6 MAIN RETURN CODE 2 2 AVTCMR1 DS AL1 7 MAIN RETURN CODE 1 2 AVTCFHL EQU 8 8 GENERAL OPERAND LIST HEADER LENGTH 2 * 1 * 1 * SUBCODE 1 VALUES 1 * 1 AVTCECPM EQU X'01' ERROR CLASS PARAMETER ERROR 1 AVTCECIN EQU X'20' ERROR CLASS INTERNAL ERROR 1 AVTCECSP EQU X'40' ERROR CLASS SPECIAL ERROR 1 * 1 * SUBCODE 2 VALUES 1 * 1 AVTCERLN EQU X'08' ERROR IN LENGTH OF VTSUCB 1 AVTCERMO EQU X'10' ERROR IN MODE PARAMETER 1 AVTCERHC EQU X'11' ERROR IN HARDCOPY PARAMETER 1 AVTCERBE EQU X'12' ERROR IN BELL PARAMETER 1 AVTCERNO EQU X'13' ERROR IN NOLOG PARAMETER 1 AVTCERRD EQU X'14' ERROR IN READ PARAMETER 1 AVTCERHO EQU X'15' ERROR IN HOM PARAMETER 1 AVTCERRE EQU X'16' ERROR IN RETINF PARAMETER 1 AVTCERLO EQU X'17' ERROR IN LOCIN PARAMETER 1 AVTCEROH EQU X'18' ERROR IN OUTPUT HEADER PARAMETER 1 AVTCERCO EQU X'19' ERROR IN CODETR PARAMETER 1 AVTCERIH EQU X'1A' ERROR IN INPUT HEADER PARAMETER 1 AVTCERLW EQU X'1B' ERROR IN LOWER INPUT PARAMETER 1 AVTCERSP EQU X'1C' ERROR IN SPECIAL INPUT PARAMETER 1 AVTCERGE EQU X'1D' ERROR IN GET FUNCTION CODE PARAMETER 1 AVTCERCC EQU X'1E' INVALID CCSNAME 1 AVTCERCP EQU X'1F' ERROR IN CURPOS PARAMETER 1 AVTCERUP EQU X'20' ERROR IN UPDATE PARAMETER 1 AVTCERWA EQU X'21' ERROR IN WARINFO PARAMETER 1 AVTCERAT EQU X'22' ERROR IN AUTOTAB PARAMETER 1 AVTCERNP EQU X'23' ERROR IN NOPOS PARAMETER 1 AVTCEREO EQU X'24' ERROR IN ENCOUT PARAMETER 1 AVTCEREI EQU X'25' ERROR IN ENCIN PARAMETER 1 AVTCERIR EQU X'26' ERROR IN INFOLR PARAMETER 1 * 1 AVTCERXH EQU X'60' XHCS FCT REQUESTED BUT XHCS NOT LOADED 1 AVTCER7B EQU X'61' XHCS FCT REQUESTED FOR 7-BIT TERMINAL
1 AVTCERBS EQU X'62' XHCS FCT SUPPORT ONLY FROM BS2000 V10 1 * 1 AVTCERIN EQU X'7A' NO PLACE ENOUGH TO INSERT SI/SO CHARS 1 AVTCER1L EQU X'7B' NO PLACE ENOUGH TO INSERT PAR01L CHARS 1 * 1 AVTCERM1 EQU X'80' MODE NOT VALID FOR COMMAND TYPE 1 AVTCERM2 EQU X'81' MODE=CHIP USED BUT NO CKT ANNOUNCED 1 AVTCERC1 EQU X'82' CKT NOT AVAILABLE FROM TERMINAL 1 AVTCERC2 EQU X'83' OTHER ERROR CODE FROM DSS BY CKT-MSG 1 AVTCERX2 EQU X'86' VTSUCB CCSN INCOMPATIBLE WITH DEVICE 1 AVTCERE1 EQU X'87' ENCRYPTION FOR OUTPUT NOT SUPPORTED 1 AVTCERE2 EQU X'88' ENCRYPTION FOR INPUT NOT SUPPORTED 1 AVTCERE3 EQU X'89' INFO LINE RESET INVALID WITH MODE 1 * 1 AVTCERO1 EQU X'40' HEADER LENGTH OF OUTPUT MSG NOT VALID 1 AVTCERI1 EQU X'50' USER BUFFER LEN FOR INPUT NOT VALID 1 * 1 * MAINCODE VALUES FOR SUBCODE 1 = X'40' 1 * 1 AVTCMRPM EQU X'04' WRONG PARAMETER FOR DEVICE 1 AVTCMROT EQU X'0C' OUTPUT TRUNCATION 1 AVTCMRIT EQU X'10' INPUT TRUNCATION 1 AVTCMRNL EQU X'18' NL IN EXT LINE INPUT MESSAGE 1 * 1 * MAINCODE VALUES FOR SUBCODE 1 = X'00' 1 * 1 AVTCMRCO EQU X'08' CORRECTED ERROR 1 * 1 * 1 AVTCLEN DS H LENGTH OF VTSUCB 1 * 1 AVTCINM DS C INPUT MODE FOR MODE=MIXED 1 AVTCOUTM DS C OUTPUT MODE FOR MODE=MIXED 1 * 1 DS XL4 RETURN INFO (NOT YET USED) 1 * 1 AVTCMODE DS C MODE OF MESSAGE 1 AVTCLINE EQU C'L' LINE MODE 1 AVTCEXT EQU C'E' EXTENDED LINE 1 AVTCINFO EQU C'I' INFO LINE MESSAGE 1 AVTCPHYS EQU C'P' PYHSICAL MODE 1 AVTCTRAN EQU C'T' TRANSPARENT MODE 1 AVTCFORM EQU C'F' FORM MODE 1 AVTCCHIP EQU C'C' CHIPCARD MODE (FOR CKT) 1 AVTCMIXD EQU C'M' MIXED MODE 1 * 1 AVTCHC DS C HARCOPY FUNCTION 1 AVTCHCN EQU C'N' NO HARDCOPY
1 AVTCHCY EQU C'Y' LOCAL/CENTRAL HARDCOPY 1 * 1 AVTCBEL DS C BELL FUNCTION 1 AVTCBELN EQU C'N' NO BELL 1 AVTCBELY EQU C'Y' BELL AFTER OUTPUT 1 * 1 AVTCNLG DS C NO LOG CHARS TO INTERPRET FUNCTION 1 AVTCNLGN EQU C'N' LOGICAL CHARACTERS TO INTERPRET 1 AVTCNLGY EQU C'Y' NO LOGICAL CHARACTERS TO INTERPRET 1 * 1 AVTCRBYT DS CL2 RETURN INFO BYTES 1 * 1 AVTCRIN DS C RETURN INFORMATION FUNCTION 1 AVTCRINN EQU C'N' NO RETURN INFORMATION 1 AVTCRINY EQU C'Y' RETURN INFORMATION REQUIRED 1 * 1 AVTCLOC DS C INPUT OF LOCAL CHARACTERS 1 AVTCLOCN EQU C'N' NO LOCAL CHARACTERS REQUIRED 1 AVTCLOCY EQU C'Y' LOCAL CHARACTERS REQUIRED 1 * 1 AVTCOHD DS C OUTPUT HEADER FUNCTION 1 AVTCOHDN EQU C'N' NO OUTPUT HEADER IN USER MSG 1 AVTCOHDY EQU C'Y' OUTPUT HEADER IN USER MESSAGE 1 * 1 AVTCCTR DS C CODE TRANSLATION FUNCTION 1 AVTCCTRN EQU C'N' NO CODE TRANSLATION DONE BY VTSU 1 AVTCCTRY EQU C'Y' CODE TRANSLATION TO/FROM CCS REQ. 1 * 1 AVTCIHD DS C INPUT HEADER FUNCTION 1 AVTCIHDN EQU C'N' NO INPUT HEADER REQUIRED 1 AVTCIHDY EQU C'Y' INPUT HEADER REQUIRED 1 * 1 AVTCLOW DS C LOWER CHARACTERS FUNCTION 1 AVTCLOWN EQU C'N' TRANSLATE LOWER CHARACTERS 1 AVTCLOWY EQU C'Y' RETAIN LOWER CHARACTERS 1 * 1 AVTCSPIN DS C SPECIAL INPUT FUNCTION 1 AVTCNSPI EQU C'N' NO SPECIAL INPUT 1 AVTCIDIN EQU C'I' INPUT FROM ID-CARD READER 1 AVTCCOIN EQU C'C' CONFIDENTIAL INPUT 1 * 1 AVTCFC DS C FUNCTION CODE 1 AVTCFCN EQU C'N' NO FUNCTION CODE REQUIRED 1 AVTCFCY EQU C'Y' FUNCTION CODE REQUIRED 1 * 1 AVTCHOM DS C HOMOGENEOUS OUTPUT 1 AVTCHOMN EQU C'N' NO HOMOGENEOUS OUTPUT REQUIRED 1 AVTCHOMY EQU C'Y' HOMOGENEOUS OUTPUT REQUIRED
1 * 1 AVTCNOP DS C OUTPUT ON SAME LINE 1 AVTCNOPN EQU C'N' OUTPUT STARTS ON NEXT LINE 1 AVTCNOPY EQU C'Y' OUTPUT STARTS ON CURRENT LINE 1 * 1 AVTCCCNA DS CL8 CODED CHARACTER SET NAME 1 * 1 AVTCCUR DS C CURSOR POSITION REQUESTED 1 AVTCCURN EQU C'N' CURSOR POSITION NOT RETURNED 1 AVTCCURY EQU C'Y' CURSOR POSITION GIVEN AFTER INPUT 1 * 1 AVTCPOSL DS XL1 CURSOR POSITION (LINE) 1 AVTCPOSC DS XL1 CURSOR POSITION (COLUMN) 1 * 1 AVTCREAD DS C READ MODE (EXTENDED LINE MODE) 1 AVTCRDUN EQU C'U' READ UNPROTECTED 1 AVTCRDMO EQU C'M' READ MODIFIED 1 * 1 AVTCUPD DS C SCREEN UPDATE IN EXTENDED LINE MODE 1 AVTCUPDN EQU C'N' NO SCREEN UPDATE -> REFRESH 1 AVTCUPDY EQU C'Y' SCREEN UPDATE 1 * 1 AVTCWAR DS C WAR BYTE REQUESTED 1 AVTCWARN EQU C'N' NO INFO ABOUT WAR BYTE 1 AVTCWARY EQU C'Y' VALUE OF WAR BYTE TO RETURN 1 * 1 AVTCWARI DS XL1 RETURNED WAR BYTE VALUE 1 * 1 AVTCAT DS C AUTOMATIC TABULATION 1 AVTCATS EQU C'S' STANDARD AUTOMATIC TABULATION 1 AVTCATN EQU C'N' AUTOMATIC TABULATION NOT REQUESTED 1 AVTCATY EQU C'Y' AUTOMATIC TABULATION REQUESTED 1 * 1 AVTCEO DS C ENCRYPTION FOR OUTPUT 1 AVTCEON EQU C'N' ENCRYPTION FOR OUTPUT NOT REQUESTED 1 AVTCEOY EQU C'Y' ENCRYPTION FOR OUTPUT REQUESTED 1 * 1 AVTCEI DS C ENCRYPTION FOR INPUT 1 AVTCEIN EQU C'N' ENCRYPTION FOR INPUT NOT REQUESTED 1 AVTCEIY EQU C'Y' ENCRYPTION FOR INPUT REQUESTED 1 * 1 AVTCIR DS C INFO LINE RESET 1 AVTCIRN EQU C'N' INFO LINE RESET NOT REQUESTED 1 AVTCIRY EQU C'Y' INFO LINE REQUESTED 1 * 1 DS XL1 RESERVED 1 * 1 AVTC# EQU *-AVTCFHE LENGTH OF DSECT
1 *,VTSUCB 350 980309