View Full Version : Sonderzeichen in Dateinamen
Hallo an alle,
wie kann ich in einem CBL-Pgm Dateinamen verarbeiten, die ein Sonderzeichen enthalten?
z.B Datei.: KND#PF Satzname.: KND#P.
Die Datei darf nicht umbenannt werden. Habe ich überhaupt eine Chance.?
Besten Dank
RobertMack
04-06-03, 12:26
Hallo,
lege einfach eine logische Datei mit gleichem Schlüssel darüber und verarbeite die dann im CBLPGM ...
viel Erfolg,
Robert
Hallo Robert,
die Idee ist gut, aber das Problem ist dann der Satzname (KND#P). Da die Datei ca. 150 Felder hat und ich die nicht alle in eine neue LF eingeben möchte (habe nur das Objekt) suche ich noch eine bessere Lösung, wenn es die dann gäbe.
Besten Dank für Deine schnelle Antwort
RobertMack
04-06-03, 12:50
... ich würde es trotzdem tun (statt irgendwelcher Kopier-Aktionen):
K KNDP PFILE(*LIBL/KND#PF)
FELD1 R
FELD2 R
Die Feldnamen würde ich mir via DSPFFD, CPYSPLF und QRY "ausschneiden" und in die DDS kopieren,
viel Erfolg,
Robert
Hallo,
schon mal versucht die Datei in Cobol mit COPY-DDSR-ALL-FORMATS OF Dateiname in das Programm einzubinden?
Dann sollten unbekannte Zeichen von Compiler in für Cobol lesbare Zeichen umgesetzt werden.
SELECT MYFILE
ASSIGN TO DATABASE-MY#FILE
:
:
FD MYFILE.
01 MYFILE-REC.
/copy-ddr-all-formats .....
Hallo Fuerchau,
geht leider nicht.
Wenn ich das so angebe:
SELECT MYFILE
ASSIGN TO DATABASE-MY#FILE
bekomme ich die Fehlermeldung:
Leerzeichen vor # in Spalte 50 einfügen. Zeile nicht akzeptiert.
noch'ne Idee?
Gruß Cobolaner
In der Assign-Klausel kann auch
ASSIGN TO "DATABASE-MY#FILE"
verwendet werden.
COPY-DDR funktioniert allerdings nicht, der Satzpuffer muss manuell definiert werden.
Die Datei kann auch verarbeitet werden, es gibt allerdings KEINE LevelCheck-Prüfung, will heißen, wenn die Datei sich ändert, fällt das Programm ggf. auf die Nase.
PS:
Das mit der LF funktioniert auf jeden Fall, da der Formatname in einer PF für COBOL keine Rolle spielt bzw als Literal angegeben wird, oder hast du LF's mit mehreren Formaten ?
Dann funktioniert auch COPY-DDR-ALL-FORMATS
[Dieser Beitrag wurde von Fuerchau am 05. Juni 2003 editiert.]