-
Sieh' mal in der Umwandlungsliste nach. Vermutlich wurde da der Fehler LNC0635 (Angegebene Schlüssel entsprechen nicht den extern beschriebenen Schlüsseln der Datei ...) ausgegeben.
Du mußt die Schlüsselfelder mit Vorzeichen definieren (PIC S9(nnn)), damit sie den Feldern der Datei entsprechen. Außerdem müssen beim START anscheinend die Felder einzeln angegeben werden (jeweils durch Komma getrennt), oder du gibst EXTERNALLY-DESCRIBED-KEY als Schlüssel an.
-
File Status 23 (Kex not found)
Danke für den Tip, kann ich aber erst wieder am Dienstag testen, wollte aber nur schnell noch reagieren. Frohe Feiertage.
Habe gestern Abend noch über Deinen Vorschlag nachgedacht. Das Vorzeichen hat keine Auswirkungen, und die Felder müssen auch nicht einzeln angegeben werden. Mit SQL und einem select max(lfdnr) from x/y where mand = 5 (z.B.) erhalte ich die höchste lfdNr dieses Mandanten. Wenn ich nun diesen Wert anstatt 8x eine 9 eingebe, findet der START die richtige Position und liefert genau den Satz zurück, der read prior geht dann auch ganz brav einen Satz zurück. Das geht wunderschön. Es geht nur nicht, wenn man das Feld mit 9en belegt (um den höchsten Wert darzustellen), um den letzten Satz zu lesen. Das liefert den Status 23 (Satz nicht gefunden) beim START und der read prior liefert den filestatus 46 (read beyond end-of-file). Mir fehlt in Cobol der Befehl (oder eine Möglichkeit) wie in RPG oder der funktioniert wie die max-Funktion bei SQL. Lese ich mit LAST, so erhalte ich den allerletzten Satz in der Datei, der aber zu keinem der Mandanten passen müßte.
-
Hallo,
fülle einfach die Schlüsselfelder direkt im FD-Satz und mache den Start mit:
start ktostm1
key is not < externally-described-key
invalid continue
end-start.
Das vielleicht unerwartete "continue" deswegen, weil auch beim Start-Versuch hinter dem allerhöchsten Key-Wert der Pointer für das "read prior" richtig gesetzt ist.
-
Status 23 und 46 beim Lesen auf höchsten Key
Hallo,
danke für den Tipp, gelesen und durchgeführt, Ergebnis bleibt Status 23 beim START und 46 beim READ. Ich denke, ich gebe es auf und schreibe mir ein Upro mit SQL.
Danke Euch allen.
-
Sieh' mal in die aktuelle Umwandlungsliste (WRKSPLF). Stehen da irgendwelche Warnungen drin?
-
Da der Start den Datei-Zeiger nicht setzen kann, ist der READ PRIOR eben auch nicht erfolgreich.
Bei Mandanten hast du ja 2 Varianten:
1. Der Start ist erfolgreich weil noch ein Mandant folgt, dann klappt auch READ PRIOR.
2. Ist der Start nicht erfolgreich, weil du hinter dem letzten Mandanten (also EOF) stehst, dann ist READ LAST der richtige Weg.
In beiden Fällen musst du natürlich noch prüfen, ob du noch im richtigen Mandanten bist.
start myfile key is not < externally-described key
invalid
read myfile last
at end continue
end-read
not invalid
read myfile prior
at end continue
end-read
end-start
-
Höchsten Key lesen
Kollege,
das war nun doch ein Volltreffer, es funktioniert wie gewünscht.
Lesen bildet, ich habe die Fehlermeldungen wohl nicht beachtet, habe dann nach Deinem Hinweis die Felder angepaßt, obwohl sie von der Struktur her nicht übereinstimmen (StufenNr) und habe im Start statt der einzelnen Felder "external-described-key" angegeben. Habe sowohl die ext. Felder als auch die in der FD-Stufe gefüllt und nach dem READ abgeglichen. Danach lief es reibungslos.
Danke Dir ganz herzlich für ein verspätetes dickes Osterei.
puddschini
Similar Threads
-
By Rincewind in forum IBM i Hauptforum
Antworten: 8
Letzter Beitrag: 23-01-07, 08:49
-
By Xanas in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 12-01-07, 07:32
-
By schatte in forum NEWSboard Programmierung
Antworten: 19
Letzter Beitrag: 10-01-07, 11:32
-
By Xanas in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 13-12-06, 13:38
-
By Uli Müller in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 09-11-06, 09:21
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks