puddschini
27-02-08, 07:44
Hallo,
ich formuliere meine Anfrage von gestern neu:
In einem cobol-Programm möchte ich Dateien verarbeiten, deren Beschreibung mit SQL angelegt wurden und nicht im Pgm stehen, nur als Copy-anweisung.
Die datei enthält viele nullable-fields, an denen der Compile scheitert. In der IBM-Literatur gibt es zahlreiche Hinweise/Bsp. dazu, aber nur für Satzbeschreibungen, die im Programm stehen und nicht als copy eingezogen werden. Hier ist auch eine definitionen einer null-map angegeben. Der Pararmeter -ALWNULL wird ignoriert. Alle diese dinge funktionieren bei mir nicht. Was muß ich also tun, damit ich ein lauffähiges Pgm hinbekomme?
Wesentliche Auszüge habe ich beigefügt, ich hoffe, sie sind lesbar.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT VERTRAG1 ASSIGN TO DATABASE-VERTRAG-ALWNULL
ORGANIZATION IS SEQUENTIAL
ACCESS IS SEQUENTIAL
FILE STATUS IS VRT-STAT.
DATA DIVISION.
FILE SECTION.
FD VERTRAG1 LABEL RECORDS ARE STANDARD.
01 VRT-SATZ.
COPY DDS-VERTRAG01 OF VERTRAG.
WORKING-STORAGE SECTION.
.
01 VERTRAG-NM.
COPY DDS-ALL-FORMATS OF VERTRAG WITH NULL-MAP.
05 GRUSSDAT-NF PIC 1 VALUE B"0".
Fehlermeldungen
* 561 ID: LBL0032 BEW.STUFE 10 FOLGENR 003400
Nachricht . . . : Anweisung COPY DDS für Feld 'MAZAHLDAT', für
das Nullwerte zulässig sind, ausgeführt. Akzeptiert.
* 561 ID: LBL0032 BEW.STUFE 10 FOLGENR 003400
Nachricht . . . : Anweisung COPY DDS für Feld 'MAERLDAT', für
das Nullwerte zulässig sind, ausgeführt. Akzeptiert.
* 561 ID: LBL0021 BEW.STUFE 10 FOLGENR 003400
Nachricht . . . : Anweisung COPY endet nicht mit einem Punkt.
Punkt angenommen.
* 1092 ID: LBL1030 BEW.STUFE 30 FOLGENR 003400
Nachricht . . . : 'WITH' ungültig. Erneuter Start beim
nächsten reservierten Wort in Bereich A oder am Anfang der
Klausel.
* 1092 ID: LBL0018 BEW.STUFE 00 FOLGENR 003400
Nachricht . . . : Eingabe ab 'WITH' ignoriert.
Auch hier Danke im voraus.
puddschini
ich formuliere meine Anfrage von gestern neu:
In einem cobol-Programm möchte ich Dateien verarbeiten, deren Beschreibung mit SQL angelegt wurden und nicht im Pgm stehen, nur als Copy-anweisung.
Die datei enthält viele nullable-fields, an denen der Compile scheitert. In der IBM-Literatur gibt es zahlreiche Hinweise/Bsp. dazu, aber nur für Satzbeschreibungen, die im Programm stehen und nicht als copy eingezogen werden. Hier ist auch eine definitionen einer null-map angegeben. Der Pararmeter -ALWNULL wird ignoriert. Alle diese dinge funktionieren bei mir nicht. Was muß ich also tun, damit ich ein lauffähiges Pgm hinbekomme?
Wesentliche Auszüge habe ich beigefügt, ich hoffe, sie sind lesbar.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT VERTRAG1 ASSIGN TO DATABASE-VERTRAG-ALWNULL
ORGANIZATION IS SEQUENTIAL
ACCESS IS SEQUENTIAL
FILE STATUS IS VRT-STAT.
DATA DIVISION.
FILE SECTION.
FD VERTRAG1 LABEL RECORDS ARE STANDARD.
01 VRT-SATZ.
COPY DDS-VERTRAG01 OF VERTRAG.
WORKING-STORAGE SECTION.
.
01 VERTRAG-NM.
COPY DDS-ALL-FORMATS OF VERTRAG WITH NULL-MAP.
05 GRUSSDAT-NF PIC 1 VALUE B"0".
Fehlermeldungen
* 561 ID: LBL0032 BEW.STUFE 10 FOLGENR 003400
Nachricht . . . : Anweisung COPY DDS für Feld 'MAZAHLDAT', für
das Nullwerte zulässig sind, ausgeführt. Akzeptiert.
* 561 ID: LBL0032 BEW.STUFE 10 FOLGENR 003400
Nachricht . . . : Anweisung COPY DDS für Feld 'MAERLDAT', für
das Nullwerte zulässig sind, ausgeführt. Akzeptiert.
* 561 ID: LBL0021 BEW.STUFE 10 FOLGENR 003400
Nachricht . . . : Anweisung COPY endet nicht mit einem Punkt.
Punkt angenommen.
* 1092 ID: LBL1030 BEW.STUFE 30 FOLGENR 003400
Nachricht . . . : 'WITH' ungültig. Erneuter Start beim
nächsten reservierten Wort in Bereich A oder am Anfang der
Klausel.
* 1092 ID: LBL0018 BEW.STUFE 00 FOLGENR 003400
Nachricht . . . : Eingabe ab 'WITH' ignoriert.
Auch hier Danke im voraus.
puddschini