Sie werden diese Wiederherstellungsmethoden ausprobieren, wenn der vsam 100-Fehler auftritt.
Only admnistrator owned posts can execute the[includeme]
shortcode. This message is shown only to administrators.
Bevor Sie Ihren alternativen Index (AIX) und den gewünschten Pfad erstellen, um den Cluster wirklich zu booten.
Table of Contents
Was sollte passieren können, wenn wir eine leere VSAM-Datei öffnen?
Was kann passieren, wenn Sie eine leere VSAM-Datei in einem reinen Eingabe-COBOL-Programm öffnen? Eine VSAM-Datei, die wiederum nie ein Get enthielt, wird als unzugänglich betrachtet. Einen offenen Eingabeversuch habe ich nicht. Wenn Sie zur Ausgabe öffnen, schreibt COBOL den eigentlichen Dummy-Eintrag dauerhaft in seine Datei und löscht ihn anschließend.
Der Statuscode des VSAM-Dokuments gibt den Status des Vorgangs an. VSAM-Dateien erfordern ungefähr mindestens einen Eintrag, der anfänglich mit der Datei geladen werden muss, bevor die Datei möglicherweise während der Eingabeverarbeitung oder Aktualisierung geöffnet wird. Dies liegt wahrscheinlich daran, dass VSAM beim Starten der Datei einen doppelten Prüfbefehl ausgibt, um den Dateiendezeiger auf Null zu setzen. Wenn diese Datendatei noch nie geladen wurde, ist die Prüfung erfolglos, weil das relative Byte-Tackle für hohe Nutzung (RBA) (HI-USEDRBA) immer null ist. Daher müssen die VSAM-Informationen zuerst „geladen“ werden, um RBA HI-USED auf einen anderen Wert als 0 % zu reihen. Dies erfolgt durch Schreiben einer bestimmten Zulassung in die VSAM-Datei im „Download“-Modus, wobei optional alle Einträge gelöscht werden, um eine neue Datei zu bereinigen, wenn der RBA HI-USED-Wert ganz neu und ungleich Null bleibt.
Eine VSAM-Datei, die nie irgendwelche Einträge entwickelt hat, wird als unzugänglich angesehen. Ein Versuch, den Inhalt zu öffnen, ist fehlgeschlagen. Eine leere Datei kann jetzt nur noch zur Ausgabe geöffnet werden. Wenn Sie sich die Ausgabe ansehen, wird COBOL wahrscheinlich einen riesigen Dummy-Eintrag in diese Datei schreiben und dann den nächsten andel.
VSAM unterscheidet zwischen organisierten Nulldateien (d. h. Daten, die noch nie einen Datensatz hatten) und sogar Nicht-Trace-Datensätzen (d. h. Hinzufügen eines Eintrags zu KSDS und anschließendes Löschen). . Der Unterschied besteht wahrscheinlich darin, dass bei jedem Schreibvorgang in den VSAM-Datensatz der Zeiger aktualisiert wird, um eine ganze Reihe häufig verwendeter RBAs gemeinsam zu nutzen. Wenn Sie zuvor ohne Grund Daten geschrieben haben, also Daten aufgrund dieses Satzes haben, spielt der Zeiger keine Rolle und verursacht daher Probleme mit VSAM, wenn Sie dieses Testament verwenden, um die zu verwendenden Enddaten zu bestimmen. Jedes Programm, das versucht, eine VSAM-Datei für die Paketeingabe zu öffnen, unmittelbar bevor irgendetwas für die Datei erstellt wird, wird ein Problem hervorrufen und Code 35 zurückgeben, da VSAM nicht verfügbar ist.
VSAM-Dateistatus initialisieren (Programm)
Wie behebe ich einen weit geöffneten VSAM-Fehler?
VSAM OPEN-Fehlerbehebung und endgültige Schulüberprüfung Dateiunternehmensattribute (sequenziell, relativ, möglicherweise indiziert) Erster historischer Schlüssel. Alternative Registrierungsschlüssel.
- Um VSAM zu initialisieren, können Sie es im Einzelergebnismodus verfügbar machen und es aufgrund der Initialisierung im Programm schließen, wodurch Ihr Problem möglicherweise gelöst wird. Dann deine Fenster. es erneut im E/A-Modus.
- Schreiben Sie einen Schritt über die JCL, der die VSAM REPRO und einige Einträge aus der Flatfile-Version entfernt. Angenommen, dieser Schritt muss ausgeführt werden, bevor das Programm VSAM.VSAM
verwendet
InitializeGet File Status (manuell)
- Öffnen Sie die VSAM-Datei in EDIT-Form in einem Dateimanager.
- Fügen Sie einen beliebigen Eintrag in die gesamte VSAM-Datei ein und speichern Sie.
- Entfernen Sie die fantastisch hohe Ebene und speichern Sie Es initialisiert normalerweise die VSAM-Datei .
//STEP010 EXEC PGM=IDCAMS //SYSPRINT DD //SYSOUT sysout=* DD SORT SIS=* //SYSIN-DD * LÖSCHEN XXXXX.TEST.VSAM CLUSTER LÖSCHEN SET CLUSTER (NAME(XXXXX.TEST.VSAM) - LAUTSTÄRKE(* *) . . . . . . . . . EINZIGARTIG EINZIGARTIG WERBEOPTIONEN(3 3) - ZYLINDER (7 7)) - DATEN(NAME(XXXXX.TEST.VSAM.DATEN) - SCHLÜSSEL (29 0) - REKORDGRÖSSE (35 35) - ICIS(4096)). . . . . . . INDEX(NAME(XXXXX.TEST.VSAM.INDEX) - NOIMBED NOREPLICATE) /* //STEP020 EXEC PGM=IDCAMS //In DD DSN=XXXXX.TEST.PS,DISP=SHR //EXTERNAL DD DSN=XXXXX.TEST.VSAM,DISP=SHR //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SINUS * dd REPRO INFILE(INF) OUTFILE(OUTF) COUNT(1) /*VSAM-Dateistatus
Dateistatus | Beschreibung | ||
00 | ERFOLG | ||
02 | ZUSATZSCHLÜSSEL, ALTINDEX NICHT EINZIGARTIG | ||
04 | GELESEN, FALSCHE AUFTRAGSLÄNGE | ||
05 | ÖFFNEN, DATEI EXISTIERT NICHT | ||
CLOSE with REEL oder NO REWIND verfügbar für Aufnahmen ohne Band. | |||
10 | END OF FILE | 13 | Datei wurde einfach nicht gefunden |
14 | Versuch, eine sehr relative Zugangsbeschränkung zu verschieben READ | ||
16 | VSAM-Dateizugriffsfehler | ||
19 | |||
20 | UNGÜLTIGER VSAM-KSDS- ODER RRDS-SCHLÜSSEL< /td> | ||
21< /td > < td>SEQUENZFEHLER BEIM SCHREIBEN ODER SCHLÜSSELÄNDERUNG BEIM ÜBERSCHREIBEN | |||
22 | |||
STREMENT SPEICHERN NICHT GEFUNDEN oder DATEI NICHT GEFUNDEN | |||
24< /td> | Ungültiger Schlüssel - Schlüssel außerhalb der Datei.< /td> | 28 | Datensatz konnte nicht erweitert werden |
30 | Permanent I/ O-Fehler | ||
Permanenter E/A-Fehler – Speicherlimit des Verzeichnisses überschreitet< /td> | |||
ÖFFNEN, DATEI EXISTIERT NICHT | |||
37 | Fehler beim Öffnen des Bildes wegen Öffnungsmodus | ||
38 | Versuch, eine GESPERRTE Datei zu ÖFFNEN | ||
39 < /td> | LOGISCHER FEHLER | ||
41 | DATEI ÖFFNEN BEREITS GEÖFFNET | ||
42 | DATEI ÖFFNEN OHNE< SCHLIESSEN /td> | ||
43 | LÖSCHEN ODER ÜBERSCHREIBEN UND ZUERST NICHT GUT LESEN | ||
44 | Versuch, Zeichen individueller Länge umzuschreiben | ||
46 | SEQUENTIAL READ WITHOUT POSITIONING | ||
DATEI NICHT ALS INPUT/IN/OUT LESEN UND ÖFFNEN | |||
48 | AUFNAHME ÖFFNEN ohne IM EINGABEMODUS | 49 | |
90 | Fehler offen , READ, LOG oder CLOSE o operation | ||
91 | Eingabe des Passworts zusammen mit der Autorisierung fehlgeschlagen | ||
92 | |||
93 | |||
94 | SEQUENZELLES LESEN NACH DATEIENENDE / OHNE SPEICHERN DER ANWEISUNG D FÜR SEQUENZ | ||
95 | Ungültige oder unvollständige Dateiinformationen | ||
96 | FEHLENDE DD-ANWEISUNG IN JCL< /td> < /tr> | ||
97 | ÖFFNEN OK, DATEI INTEGRITÄT GEPRÜFT | ||
98 | Datei gesperrt - Fehler beim Brechen | ||
99 | Datensatz gesperrt - Z Zugriff auf Datensatz fehlgeschlagen | ||
100 | Ungültiger Download | ||
160 | Die eingegebene Datei kann leer sein | ||
Gerätetyp wird nicht unterstützt< /td>< /tr> |
Auflösung des VSAM-Dateistatus
- Die Festschreibungslänge stimmt wirklich nicht mit Eigenschaften überein, deren Attribute auf Dateilänge ausgewählt werden können.
- Dies ist eine Datei mit variabler Periodenlänge, aber Sie haben die starre Blocklänge in der FD-Klausel überschritten. Am wahrscheinlichsten tritt dieser Routing-Fehler auf, wenn Daten aus einer Datei gelesen oder in eine suggestive Datei geschrieben werden.
- Ordnen Sie die richtige Datensatzlänge zu, indem Sie den Parameter "in Bezug auf DCB" Ihrer Datei verwenden und diesen mit der Länge abgleichen, die in der Klausel "in FD" Ihres COBOL-Programms enthalten ist.
< h2 id="4">Was bedeutet wohl der gute Name der VSAM-Datei 23?
23. Datensatz definitiv gefunden oder Ordner nicht gefunden. ein langes A. Der Schlüssel liegt außerhalb der Datei.
[includeme]
shortcode. This message is shown only to administrators.