Anmelden

View Full Version : IFS Dateien mit Satzende CRLF oder LF erkennen.



Seiten : 1 [2]

Fuerchau
14-03-24, 15:17
Ich dachte du wolltest die Dateien herausfinden, die auf Grund des fehlenden CR nicht verarbeitet wurden um sie dann noch mal mit *ALL zu verarbeiten.
Wenn du nun CR und/oder LF mit Blank ersetzt, nimmst du CPYFRMSTMF jede Chance.

Oder ich habe deine Aufgabe nicht verstanden, was in meinem Alter auch schon mal passiert.

Robi
14-03-24, 15:59
Oder ich habe deine Aufgabe nicht verstanden, was in meinem Alter auch schon mal passiert.

DU BIST NICHT ALLEIN!:mad::cool:

itec01
14-03-24, 17:17
wir haben es nun damit hinbekommen:
QSH
export QIBM_CCSID=1252; find /SPAREPARTS/ASAP/SCAN/RECEIVE/SAVE -type f -mtime -3 -exec unix2dos -ic {} \; > /SPAREPARTS/ASAP/SCAN/RECEIVE/SAVE/test.txt
Funktioniert super.

nach LF suchen = unix2dos
nach CRLF suchen = dos2unix

Mit dem Befehl kann man auch ganz einfach Dateien verändern, sprich aus LF CRLF machen und umgekehrt.

Danke Für Eure Hilfe.

B.Hauser
14-03-24, 23:17
Habe das gerade mit SQL verucht:
SELECT LINE FROM TABLE(QSYS2.IFS_READ_UTF8(PATH_NAME => '/SpareParts/SCAN/SMC/RECEIVE/SAVE/S1000151.1088716.#.SCANDATA_PROD_20240314_10311667 .TXT'))
where locate(x'0D', line) >0;
Es funktioniert aber nicht, weil ich denke, dass im Feld LINE CRLF nicht zu finden ist.
Wenn ich es mit SELECT HEX(LINE) mache, dann sehe ich auch nur die Hex Zeichen der Daten und nicht 25 oder 0D.
Was mache ich falsch?
Danke.

Wenn Du mit IFS_READ oder mit IFS_READ_UTF8 arbeitest sollte per Default (Parameter End_Of_Line - Default = 'ANY') der Umbruch bei jedem CRLF, LF, CR oder LFCR erfolgen.
Die Umbruchwerte werden entfernt, d.h. im Nachhinein nach einem Hex-Value zu suchen ist zu spät.
Wenn der Umbruch nicht korrekt erfolgt, wurden keine entsprechend Umbruchzeichen eingebunden.