Die UTM Diagarea ist ein Task-spezifischer Trace-Bereich, in den alle Ereignisse protokolliert werden. Dieser Bereich enthält somit auch alle Ereignisse, die unmittelbar vor dem Abbruch eines Vorgangs oder einer Anwendung aufgetreten sind.
Die UTM Diagarea wird zyklisch beschrieben. Zwei Zyklen werden durch eine Trennlinie bestehend aus ’=’-Zeichen und Leerzeichen getrennt. Oberhalb der Trennlinie steht der jüngste Eintrag und unterhalb davon der älteste Eintrag. Jeder Eintrag ist 136 lang. Wieviele Einträge insgesamt in die UTM Diagarea passen, ist abhängig vom UTM- Generierungsparameter MAX TRACEREC
.
In die UTM Diagarea werden folgende Arten von Einträgen geschrieben:
UTM-Records (Typ
KDCS
)UTM-Records vom Typ KDCS werden bei folgenden Ereignissen geschrieben:
bei einem KDCS-Aufruf in einem Teilprogramm oder
bei einem internen Aufruf an den UTM-Systemcode oder
- bei einem Aufruf der Administrationsschnittstelle oder
bei einem internen PEND ER-Aufruf durch openUTM (System-PEND ER) auf Grund eines schwerwiegenden Fehlers
Bei Aufruf der Administrationsschnittstelle (KDCS-Opcode=ADMI) werden zusätzliche Trace-Informationen geschrieben (siehe Abschnitt "Administration DIAGAREA“).
Im Falle eines System PEND ER enthält der Eintrag in den Bytes 22 - 57 einen Fehlertext.
UTM-Records beim Starten und Beenden von benutzerspezifischen Event-Exits:
- FORMAT-Exit-Programm (Typ FOXS und FOXE)
INPUT-Exit-Programm (Typ INXS und INXE)
START-Exit-Programm (Typ STXS und STXE)
VORGANG-Exit-Programm (Typ VGXS und VGXE)
- HTTP-Exit-Programm (Typ HTXS und HTXE)
UTM-Records zur Vorgangsidentifizierung (Typ
VGID
)Ein VGID-Record wird bei jedem Start eines Teilprogramms und bei Rückkehr eines PGWT-Aufrufes in die UTM Diagarea geschrieben.
- FORM-Records (Typ
FHCL
)
Ein FORM-Record wird bei einem Aufruf an ein Formatierungssystem geschrieben.
- UTM-Records beim Aufruf der HTTP-Funktionen (Typ HTTP )
Ein HTTP-Record wird bei Aufruf einer HTTP-Funktion geschrieben.
Header der Records in der UTM Diagarea
Jeder Record beginnt mit einem Header, der folgende Informationen enthält:
Byte | Bedeutung | |
dez. | hexadez. | |
0-1 | 00-01 | Zähler des aktuellen Eintrages in den DIAGAREAs (UTM und DB) |
2-5 | 02-05 | Typ-Identifizierung (KDCS, VGID, FOXS, FOXE, INXS, INXE, STXS, STXE, VGXS, VGXE, FHCL, ITRC, HTXS , HTXE, HTTP) |
6-7 | 06-07 | Derzeit nicht genutzt (mit ’= =’ vorbelegt) |
8-15 | 08-0F | Zeitstempel |
Aufbau des Headers
Der Inhalt der Records ab Byte 16 ist abhängig vom Typ des Records.
UTM Diagarea bei KDCS-Aufruf aus einem Teilprogramm (Typ KDCS)
Byte | Feldname und Bedeutung | |||||||
dez. | hexadez. | |||||||
16-19 | 10-13 | KCOP1: | USER-Operationscode: INIT, MGET, MPUT, usw. | |||||
interner Operationscode: siehe Tabelle "KCOP" | ||||||||
20-21 | 14-15 | KCOM: Operationsmodifikation | ||||||
22-23 | 16-17 | KCLA: Bereichslänge oder Queue Level (bei QCRE) oder | ||||||
24-25 | 18-19 | KCLM: Nachrichtenlänge oder | ||||||
26-33 | 1A-21 | KCRN: Bezugsname | ||||||
MCOM-Aufruf | ||||||||
34-41 | 22-29 | KCMF: Formatname oder Editprofilname | KCPOS: | |||||
42-43 | 2A-2B | KCDF: Bildschirmfunktion, (siehe Tabelle "KCDF") | KCNEG: | |||||
DPUT/DADM | DGET | QCRE | PADM | APRO | ||||
44 | 2C | KCMOD: Modus | KCQTYP: | KCQMODE: | KCACT: | KCPI: | ||
45-47 | 2D-2F | KCTAG: Tag | leer | leer | ||||
48-49 | 30-31 | KCSTD: Stunde | KCADRLT: | |||||
50-51 | 32-33 | KCMIN: Minute | KCCOMID: | |||||
52-53 | 34-35 | KCSEC: Sekunde | KCOF: | |||||
54 | 36 | KCQTYP: Zieltyp | ||||||
55-57 | 37-39 | leer | leer | |||||
58-89 | 3A-59 | KCRFELD in KCKBC: KB-Rückgabebereich (siehe Tabelle "KCDF") | ||||||
92-95 | 5C-5F | Rücksprungadresse zum Teilprogramm (Die Adresse zeigt hinter KDCS-Aufruf im Teilprogramm) | ||||||
96-99 | 60-63 | Adresse des Benutzerdatenbereichs (2. Parameter bei KDCS-Aufruf). | ||||||
100-103 | 64-67 | Vorgangs-Index | ||||||
104-111 | 68-6F | KCLOGTER in KCKBC: LTERM - Name | ||||||
112-119 | 70-77 | KCBENID in KCKBC: Name der aktuellen Benutzerkennung |
Aufbau eines Eintrags der UTM-Diagarea bei einem KDCS-Aufruf
1Bei KCOP=INFO (Byte 16-19) und Operationsmodifikation KCOM=CK (Byte 20-21) wird ohne Erhöhung des Zählers der Nachrichtenbereich (NB) des protokollierten Aufrufs in der Länge KCPAC in den nächsten Eintrag der UTM Diagarea geschrieben. Diese Information ist für die Diagnose interessant, da sie den zu prüfenden Aufruf protokolliert.
Im Feld KCDF (Byte 42-43; Bildschirmfunktion) sind folgende Einträge möglich:
Inhalt KCDF, | symbolischer | Bedeutung |
0000 | ----- | keine Bildschirmfunktion |
0001 | KCREPL | Bildschirm löschen und Format ausgeben |
0001 | KCRESTRT | Bildschirmwiederanlauf nach PEND RS |
0002 | KCERAS | Löschen ungeschützter Felder |
0004 | KCALARM | BEL Funktion |
0008 | KCREPR | Lokale Druckerausgabe |
2000 | KCEXTEND | Extended Linemode (erweiterter Zeilenmodus) |
4000 | KCCARD | Nächste Eingabe vom Ausweisleser |
Bildschirmfunktionen
Opcode bei internem Aufruf an openUTM:
Inhalt | Situation, in der dieser Record geschrieben wird | Inhalt der Felder nach KCOP |
STRT | Start des UTM-Anwendungsprogramms, | kein Eintrag |
WAIT | UTM-Task wartet im Systemcode auf den nächsten Auftrag | kein Eintrag |
CONT | Fortsetzung im UTM-System-Code nach Ausführung der Formatierung oder einer DB-Aktion über KDCROOT oder nach Aufruf des INPUT-Exits. | nur KCRCCC, KCRCKZ und KCRCDC, beim INPUT-Exit die Parameter, siehe "UTM Diagarea nach einem Aufruf des INPUT-Exits" |
NOOP | Pufferbereich der MESSAREA muss geleert werden (nur möglich bei eingeschaltetem Mess-Monitor) | - - - |
ADMI | UTM-Administrationsaktion | UTM-interne Schnittstelle |
Operationscodes bei einem internen UTM-Aufruf
Aufbau von KCRFELD
Byte | Feldname und Bedeutung | ||||
dez. | hexadez. | ||||
58-59 | 3A-3B | KCRDF: Rückgabe Bildschirmfunktion | |||
60-61 | 3C-3D | KCRLM: tatsächliche Länge der Nachricht | |||
INFO CK-Aufruf | MGET-Aufruf | SIGN ON-Aufruf | |||
62 | 3E | KCRINFCC: | KCVGST: | KCRSIGN1: | |
63 | 3F | KCTAST: | KCRSIGN2: | ||
64 | 40 | leer | |||
65 | 41 | leer | KCRMGT: Nachrichtentyp | ||
66-68 | 42-44 | KCRCCC: KCDS-Returncode | |||
69 | 45 | KCRCKZ: Kennzeichen: P (Produktivanwendung) | |||
70-73 | 46-49 | KCRCDC: interner Returncode | |||
74-81 | 4A-51 | KCRMF: Rückgabe Formatkennzeichen,Editprofil oder abstrakte Syntax | |||
82-89 | 52-59 | KCRPI: Rückgabe Vorgangs-Identifikation |
UTM Diagarea nach einem Aufruf des INPUT-Exits
Nach einem Aufruf des INPUT-Exit trägt openUTM in den KDCS-Record die wichtigsten Parameter ein, die der Exit bekommt bzw. setzt (KCPAC):
Byte | Feldname und Bedeutung | |
dez. | hexadez. | |
16-19 | 10-13 | KCOP: Hier wird "CONT" eingetragen |
20-25 | 14-19 | leer |
26-33 | 1A-21 | KCIFCH: Die ersten 8 Zeichen der Eingabe |
34-35 | 22-23 | KCICVST: Vorgangsstatus: "ES"/"ET"/"RS"/"EC" |
36-37 | 24-25 | KCIFKEY: Wert der F-Taste: 1,...,24 |
38-39 | 26-27 | KCIKKEY: Wert der K-Taste: 1,...,14 |
40-41 | 28-29 | KCICFINF: Information über Steuerfelder: "UN"/"NO"/"ON"/"MO" |
42-49 | 2A-31 | KCINTAC/KCINCMD: Nächster zu startender TAC bzw. Benutzer-Kommando |
50-51 | 32-33 | KCICCD: Code für die Wirkung der Eingabe: "ER"/"CC"/"SC"/"ST"/"CD" |
52 | 34 | KCICUT: TAC abschneiden: "Y"/"N" |
53 | 35 | - - - |
54-57 | 36-39 | KCIERRCD: Fehlerinfo für Datensichtstation |
58-... | 3A-... | Folgendes ist für die Diagnose nicht relevant |
Aufbau eines Eintrags der UTM Diagarea nach einem Aufruf des INPUT-Exits
Fehlertexte in der UTM Diagarea bei SYSTEM-PEND ER
Zur schnelleren Diagnose bei einem SYSTEM-PEND ER ist in der entsprechenden Zeile der UTM Diagarea in Byte 22-57 ein abdruckbarer Fehlertext abgelegt.
In der folgenden Tabelle sind alle möglichen Fehlertexte aufgeführt, dazu jeweils die Fehlerursache sowie mögliche Maßnahmen und die Fehlerart (Systemfehler oder Anwenderfehler).
Fehlertext | Ursache | Fehlerart |
APPL. PROGRAM DOES NOT EXIST | Beim Start eines Teilprogramms war kein Indikator (KCRARA) für ein Teilprogramm vorhanden (70Z mit KR01) | Systemfehler |
APPL. PROGRAM WITHOUT PEND | Der Teilprogrammlauf wurde nicht mit PEND beendet. (84Z) | Anwenderfehler |
ASYNC. PROGRAM NOT FOUND | Asynchron-Programm ist nicht mehr verfügbar (evtl. Programmaustausch). PENDER-Dump mit 70Z und KR02 folgt. | Anwenderfehler |
ERROR IN "START-TP" OF LGCON | Beim Start eines Teilprogramms lieferte das Language-Connection-Modul einen fehlerhaften Returncode. | Systemfehler |
KB END LABEL OVERWRITTEN | Das Teilprogramm verwendet den KB in einer größeren Länge als in der UTM- Generierung festgelegt (70Z mit KR04) | Anwenderfehler |
SPAB END LABEL OVERWRITTEN | Das Teilprogramm verwendet den SPAB in einer größeren Länge als in der UTM- Generierung festgelegt (70Z mit KR05). | Anwenderfehler |
KCRCCC > = 70Z AFTER UTM SVC | Nach SVC UTM wurde der Returncode KCRCCC im KB-Kopf auf >=70Z gesetzt. | Anwender-/ Systemfehler |
ERR IN STXIT-ROUTINE OF LGCON | Bei der STXIT-Behandlung wurde vom Language-Connection-Modul ein fehlerhafter Returncode geliefert | Systemfehler |
STXIT WITH XT.. ENTERED | Es ist ein STXIT mit dem Gewicht ... aufgetreten. | Anwender-/ |
KDCS CALL IN FORMAT EXIT | Im FORMAT-EXIT-Programm wurde ein unerlaubter KDCS-Aufruf gemacht. | |
DB-ERRORCODE = TA_CHAIN_RSET | Das Datenbank-Verbindungsmodul lieferte den Returncode TA_CHAIN_RSET. | Systemfehler |
KDCS-CALL IN VORGANG EXIT | Im VORGANG-Exit-Programm wurde ein unerlaubter KDCS-Aufruf gemacht. | Anwenderfehler |
VORGANG-EXIT-PROGRAM | Das Programm für den VORGANG-Exit ist nicht geladen. | Anwenderfehler |
DATABASE DOWN AT USER DB CALL | Bei einem Aufruf des Teilprogramms an das DB-System ist das DB-System nicht mehr konnektiert. | Anwender-/ |
ILLEGAL RET CODE FROM DBCON | Das Datenbank-Verbindungsmodul setzt unerlaubten Returncode. | Systemfehler |
NO DB CALL ALLOWED IN SIGN-ON | In einem Anmeldevorgang wurde ein DB-USER-CALL-Aufruf gemacht. | Anwenderfehler |
DYNAM. PROGRAM LOADING FAILED | Beim Nachladen eines Programmes trat ein Fehler auf. | Anwender-/ Systemfehler |
Fehlertexte in der UTM Diagarea bei SYSTEM-PEND ER
Eintrag zur Vorgangs-Identifikation (Typ VGID)
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
16 | 10 | 16 | 10 | Vorgangskennzeichen |
17 | 11 | 17 | 11 | Sessionzähler |
18-19 | 12-13 | 18-19 | 12-13 | Transaktionszähler im Vorgang |
20-23 | 14-17 | 24-31 | 18-1F | Vorgangszähler |
24-27 | 18-1B | 32-39 | 20-27 | Summe von USED und ERROR für den aktuellen TAC |
28-31 | 1C-1F | 40-47 | 28-2F | Länge des Global Transaction Identifier (GTRID) der XID |
32-35 | 20-23 | 48-55 | 30-37 | Länge des Branch-Qualifier (BQUAL) der XID |
36-115 | 24-73 | 56-137 | 38-89 | die ersten 80 Bytes der XID-Daten *) |
116-117 | 74-75 | 138-139 | 8A-8B | Index zur Programm-Tabelle |
118-119 | 76-77 | 140-141 | 8C-8D | Index des Vorgangsexit in Programm-Tabelle |
120-127 | 78-7F | 142-149 | 8E-95 | Name des Transaktionscodes, der den Vorgang gestartet hat |
128-135 | 80-87 | 150-157 | 96-9D | Name des aktuellen Transaktionscodes |
Aufbau des Eintrags zur Vorgangs-Identifikation
*) Details zu XID, GTRID und BQUAL siehe betreffende XA-Spezifikation
**) gilt nur für Unix-, Linux- und Windows-Systeme
Eintrag zum VORGANG-Exit (Typ VGXS und VGXE)
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
16 | 10 | 16 | 10 | Vorgangskennzeichen |
17 | 11 | 17 | 11 | Sessionzähler |
18-19 | 12-13 | 18-19 | 12-13 | Transaktionszähler im Vorgang |
20-23 | 14-17 | 24-31 | 18-1F | Vorgangszähler |
24-27 | 18-1B | 32-39 | 20-27 | Summe von USED und ERROR für den aktuellen TAC |
28-31 | 1C-1F | 40-47 | 28-2F | Länge des Global Transaction Identifier (GTRID) der XID |
32-35 | 20-23 | 48-55 | 30-37 | Länge des Branch-Qualifier (BQUAL) der XID |
36-115 | 24-73 | 56-137 | 38-89 | die ersten 80 Bytes der XID-Daten *) |
116-117 | 74-75 | 138-139 | 8A-8B | Index zur Programm-Tabelle |
118-119 | 76-77 | 140-141 | 8C-8D | Index des Vorgangsexit in Programm-Tabelle |
120-127 | 78-7F | 142-149 | 8E-95 | Name des Transaktionscodes, der den Vorgang |
128-135 | 80-87 | 150-157 | 96-9D | Name des VORGANG-Exit-Programmes |
Aufbau des Eintrags zum VORGANG-Exit
*) Details zu XID, GTRID und BQUAL siehe betreffende XA-Spezifikation
**) gilt nur für Unix-, Linux- und Windows-Systeme
Eintrag zum FORMAT-Exit (Typ FOXS und FOXE)
Byte | Bedeutung | |
dez. | hexadez. | |
16-31 | 10-1F | String FORMATEXIT |
32-39 | 20-27 | Programm-Name des FORMAT-Exits |
40-47 | 28-2F | Format-Name |
48-63 | 30-3F | Typ der Formatierung als Zeichenkette (z.B. OUTPUTFORMATTING) |
Aufbau des Eintrags zum FORMAT-Exit
Eintrag zum INPUT-Exit (Typ INXS und INXE)
Byte | Bedeutung | |
dez. | hexadez. | |
16-31 | 10-1F | String INPUT-EXIT-FORM oder INPUT-EXIT-USER oder INPUT-EXIT-LINE |
32-39 | 20-27 | Programm-Name des INPUT-Exits |
40-47 | 28-2F | Erste 8 Zeichen Input-Message |
48-55 | 30-37 | Format-Name |
56-63 | 38-3F | TAC-Name |
64-65 | 40-41 | Status |
66-67 | 42-43 | F-Taste |
68-69 | 44-45 | K-Taste |
70-71 | 46-47 | Kontroll-Feld |
72-79 | 48-4F | Lterm-Name |
80-87 | 50-57 | User-Name |
88-119 | 58-77 | (ungenutzt) |
120-127 | 78-7F | Nächster Tac oder Kommando |
128-129 | 80-81 | Fortsetzungs-Code |
130 | 82 | CUT TAC |
131 | 83 | (ungenutzt) |
132-135 | 84-87 | Fehler-Code |
Aufbau des Eintrags zum INPUT-Exit
Eintrag zum START-Exit (Typ STXS und STXE)
Byte | Bedeutung | |
dez. | hexadez. | |
16-31 | 10-1F | String START-EXIT-# |
32-39 | 20-27 | Programm-Name des START-Exits |
40-47 | 28-2F | String STARTUP (fixer Name des TAC) |
48-63 | 30-3F | Kennzeichen, ob erste Task oder Folge-Task als String |
Aufbau des Eintrags zum START-Exit
Eintrag zum HTTP-Exit (Typ HTXS und HTXE)
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
16 | 10 | 16 | 10 | Opcode: HTTP_GET_EXIT = 1, HTTP_PUT_EXIT = 2 |
17 | 11 | 17 | 11 | Returncode: OK = 0; ROOT_INT_PEND_ER = 1 |
18 | 12 | 18 | 12 | Returncode des HTTP-Exit |
19 | 13 | 19 | 13 | InOut Indikator: I/O |
20-23 | 14-17 | 24-31 | 18-1F | Pointer auf den KDCS-Parameterbereich |
24-27 | 18-1B | 32-35 | 20-23 | KDCS Operationscode |
28-29 | 1C-1D | 36-37 | 24-25 | Zähler für erfolgreich gelesene MGET Nachrichtenteile |
30-31 | 1E-1F | 36-39 | 26-27 | Länge des restlichen Nachrichtenteils (nach RCCC=02Z) |
32-33 | 20-21 | 40-41 | 28-29 | Index des HTTP-Exit-Programms |
34-35 | 22-23 | 42-43 | 2A-2B | |
36-51 | 24-33 | 44-59 | 2C-3B | HTTP-Info-Struktur (s. INIT PU) |
52-55 | 34-37 | 64-71 | 40-47 | Pointer auf die MGET-Struktur-Information |
56-59 | 38-3B | 72-79 | 48-4F | Anzahl der Nachrichtenteile aus der MGET-Struktur-Info |
60-63 | 3C-3F | 80-87 | 50-57 | Pointer auf den aktuellen Nachrichtenteil |
Aufbau des Eintrags zum HTTP-Exit
**) gilt nur für Unix-, Linux- und Windows-Systeme
Eintrag zur HTTP-Funktion (Typ HTTP)
Das Layout des HTTP-Record ist funktionsabhängig. Der Record beginnt immer mit folgendem Layout.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
16-47 | 10-2F | 16-47 | 10-2F | abdruckbarer Name der HTTP-Funktion, z.B. kcHttpGetHeaderByName |
48-95 | 30-5F | 48-95 | 30-5F | abdruckbarer Returncode der HTTP-Funktion, z.B. KC_HTTP_OK (0) |
96-99 | 60-63 | 96-99 | 60-63 | Returncode der HTTP-Funktion |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpGetHeaderCount enthält zusätzlich folgendes Feld.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Anzahl der HTTP-Headerfelder des HTTP-Requests |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpGetHeaderByIndex enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Anzahl der HTTP-Headerfelder des HTTP-Requests |
104-107 | 68-6B | 112-119 | 70-77 | Index des angeforderten HTTP-Headerfeldes |
108-111 | 6C-6F | 120-127 | 78-7F | Adresse des Puffers für den Namen des HTTP-Headers |
112-115 | 70-73 | 128-135 | 80-87 | Länge des Puffers für den Namen des HTTP-Headers |
116-119 | 74-77 | 136-143 | 88-8F | Länge des Namens des HTTP-Headers |
120-123 | 78-7B | 144-151 | 90-97 | Adresse des Puffers für den Wert des HTTP-Headers |
124-127 | 7C-7F | 152-159 | 98-9F | Länge des Puffers für den Wert des HTTP-Headers |
128-131 | 80-83 | 160-167 | A0-A7 | Länge des Werts des HTTP-Headers |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpGetHeaderByName enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Adresse des Namens des HTTP-Headers |
104-107 | 68-6B | 112-119 | 70-77 | Länge des Namens des HTTP-Headers |
108-111 | 6C-6F | 120-127 | 78-7F | Adresse des Puffers für den Wert des HTTP-Headers |
112-115 | 70-73 | 128-135 | 80-87 | Länge des Puffers für den Wert des HTTP-Headers |
116-119 | 74-77 | 136-143 | 88-8F | Länge des Wertes des HTTP-Headers |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktionen kcHttpGetMethod, kcHttpGetPath, kcHttpGetScheme, kcHttpGetVersion und kcHttpGetQuery enthalten zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Adresse des Puffers für das Funktionsergebnis |
104-107 | 68-6B | 112-119 | 70-77 | Länge des Puffers für das Funktionsergebnis |
108-111 | 6C-6F | 120-127 | 78-7F | Länge des Funktionsergebnisses, z.B. des HTTP-Path |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpGetMsg enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Adresse für die Adresse des HTTP Message Body |
104-107 | 68-6B | 112-119 | 70-77 | Adresse des HTTP Message Body |
108-111 | 6C-6F | 120-127 | 78-7F | Länge des HTTP Message Body |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpPutHeader enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Adresse des Namens des HTTP-Headers |
104-107 | 68-6B | 112-119 | 70-77 | Adresse des Wertes des HTTP Headers |
108-121 | 6C-79 | 120-127 | 78-7F | Erste 14 Zeichen des Namens des HTTP Headers |
122-135 | 7A-87 | 128-135 | 80-87 | Erste 14 Zeichen des Wertes des HTTP Headers |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpPutStatus enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Status-Code |
104-107 | 68-6B | 112-119 | 70-77 | Adresse des Reason Phrase |
108-135 | 6C-87 | 120-147 | 78-93 | Erste 28 Zeichen der Reason Phrase |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpPutMsg enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Adresse des übergebenen Nachrichtenfragments |
104-107 | 68-6B | 112-119 | 70-77 | Länge des übergebenen Nachrichtenfragments |
108-111 | 6C-6F | 120-127 | 78-7F | Adresse für die Adresse des gesamten HTTP Message Body |
112-115 | 70-73 | 128-135 | 80-87 | Adresse für die Länge des gesamten HTTP Message Body |
116-119 | 74-77 | 136-143 | 88-8F | Adresse des gesamten HTTP Message Body |
120-123 | 78-7B | 144-151 | 90-97 | Länge des gesamten HTTP Message Body |
124-127 | 7C-7F | 152-159 | 98-9F | Länge des Puffers für den gesamten HTTP Message Body |
**) gilt nur für Unix-, Linux- und Windows-Systeme
Der HTTP-Record der Funktion kcHttpPercentDecode enthält zusätzlich folgende Felder.
Byte 32-Bit | Byte 64-Bit **) | Bedeutung | ||
dez. | hexadez. | dez. | hexadez. | |
100-103 | 64-67 | 104-111 | 68-6F | Angeforderter Umfang der Normalisierung |
104-107 | 68-6B | 112-119 | 70-77 | Adresse der zu normalisierenden Nachricht |
108-111 | 6C-6F | 120-123 | 78-7B | Länge der zu normalisierenden Nachricht |
112-115 | 70-73 | 124-131 | 7C-83 | Adresse für die Länge der normalisierten Nachricht |
116-119 | 74-77 | 132-135 | 84-87 | Länge der normalisierten Nachricht |
120-122 | 78-7A | 136-139 | 88-8B | im Falle eines Fehlers: fehlerhafte Zeichenfolge |
**) gilt nur für Unix-, Linux- und Windows-Systeme
FORM-Record in der UTM Diagarea
Bei jedem Aufruf an das Formatierungssystem über die Schnittstelle IUTMFORM wird ein Eintrag mit folgendem Inhalt in die UTM Diagarea geschrieben.
Byte | Bedeutung | |
dez. | hexadez. | |
16 | 10 | Operationscode für IUTMFORM |
17 | 11 | Returncode der IUTMFORM |
18-21 | 12-15 | Info-Returncode der IUTMFORM |
22-24 | 16-18 | Statusinformation nach dem Aufruf der IUTMFORM |
25 | 19 | Format-Typ |
26-27 | 1A-1B | Leerzeichen (reserviert für Erweiterungen) |
28-29 | 1C-1D | Device Feature vor Aufruf der IUTMFORM (siehe KCDF) |
30-31 | 1E-1F | Drucker-Rückmeldebytes |
32-39 | 20-27 | Terminal-Charakteristika (siehe Makro TSTAT) |
40-41 | 28-29 | maximale Länge der (letzten) übergebenen Nachricht |
42-43 | 2A-2B | reale Länge der (letzten) gelieferten Nachricht |
44-47 | 2C-2F | Sprachkennzeichen und Territorialkennzeichen |
48-55 | 30-37 | Name des Zeichensatzes des USER oder des LTERM |
56-63 | 38-3F | Name des Zeichensatzes des Formats |
64-71 | 40-47 | Name des (letzten) übergebenen Formats |
72-79 | 48-4F | Name des (letzten) gelieferten Formats |
80-83 | 50-53 | Adresse des (letzten) übergebenen Nachrichtenbereichs |
84-87 | 54-57 | Adresse des (letzten) übergebenen Cursors |
Aufbau des FORM-Records in der UTM Diagarea