PDA

View Full Version : CPXFRMIMPF *fixed



dibe
20-01-16, 14:24
Guten Tag zusammen,
für die Übername einer Textdatei mit fixen Feldlängen habe ich in der QDDSSRC eine solche Datei erstellt



F1 1 7
F2 9 12
F3 14 37
..

*END


F1 soll 7 Alpa sein, F2 4 Alpa und F3 24 Alpa

Die Textdatei sieht so aus:



abc1234; ab;a1234567890b1234567890c1;...;

also Inhalt, Semikolon, Inhalt Semikolon ... Der Satz endet mit einem Semikolon,

Die Feldnamen F1, F2, F3 habe ich auch in der Physischen Datei verwendet

der Befehl


CPYFRMIMPF FROMSTMF('/WEG/ZUR/DATEI/Datei.txt')
TOFILE(*LIBL/I13575KE) MBROPT(*ADD) FROMCCSID(1208)
TOCCSID(1141) RCDDLM(*ALL) DTAFMT(*FIXED) FLDDFNFILE(QDDSSRC I13575KSRC)
DATFMT(*EUR) DATSEP(*BLANK) FROMRCD(1 *END) ERRLVL(*NOMAX) RPLNULLVAL(*FLD
DFT)


bricht mit Ursache 10 ab
10 - Die Daten in der Felddefinitionsdatei sind für die Zieldatei nicht
korrekt.

Darf ich in der Definition keine Lücken (hier: für das Semikolon) lassen?
Es sind natürlich mehr als 3 Felder, Ich habe die Längenangabe 3 mal mit der Datei verglichen, das passt.
Was kann noch falsch sein?
vielen Dank
Dietlinde Beck

hel400
20-01-16, 14:39
Hallo Dietlinde,

lass FLDDFNFILE weg und verwende DTAFMT(*DLM) und FLDDLM(';')
dann erkennt das System automatisch anhand der Semikolons die einzelnen Felder von selbst.
(RCDDLM evtl. noch entsprechend anpassen)

dibe
21-01-16, 10:12
Danke für die Info, es geht nun auch mit dem FLDDFNFILE
Ich mußte nur hinter jede Zeile noch eine 0 schreiben.

Da sich das Trennzeichen dauernd ändert ist mir das fix-Format mit FLDDFNFILE lieber
Außerdem kann ich da Felder, die ich nicht brauche einfach weglassen, das spart Platz

LG
DiBe