Inhalt eines Datenobjekts in Datei ausgeben: DUMP

EXEC TAA

    DUMP <Objektname> INTO {<literal> | <Feldangabe> END-EXEC

END-EXEC
 

<Feldangabe> = {COBOL-Variable | <objektname>.<feldname>[(indices)]}

Mit dieser Anweisung veranlassen Sie, dass der aktuelle Inhalt des Datenobjekts in eine Datei mit dem angegebenen Namen ausgegeben wird.

Wenn es sich um ein Listenobjekt handelt, wird das gesamte Listenobjekt gedumpt.

<Dateiname> muss ein gültiger Pfadname sein und in einer Variablen angegeben werden.

Anmerkung: Wenn das Modul auf der Windows-Workstation eingesetzt wird, und im Registrierungeditor wurde die Einstellung DumpsAllowed = 0 gesetzt, werden diese Dumps unterdrückt. Dadurch kann vermieden werden, dass im produktiven Einsatz von Modulen Objekt-Dumps ausgegeben werden, auch wenn die entsprechenden Anweisungen nicht aus dem Code entfernt wurden.

Beispiel:

 WORKING-STORAGE SECTION.

    EXEC TAA

        DECLARE X

        WITH TYPE XXTEST

        AND CLASS REC

    END-EXEC.

* Datenstruktur:

* 01 X-REC.

* 05 X-000-XX-NUM8 PIC 9(8).

* 05 X-000-XX-TXT80 PIC X(80).

 LINKAGE SECTION.

 PROCEDURE DIVISION.

    EXEC TAA REGISTER END-EXEC

    EXEC TAA NEW X END-EXEC

    MOVE '12345' TO X-000-XX-NUM8

    MOVE 'dies ist ein testtext' TO X-OOO-xx-TXT80

    EXEC TAA PUT X END-EXEC

    MOVE 'c:\tmp\x.dmp' TO DUMPPATH

    EXEC TAA DUMP X INTO DUMPPATH END-EXEC

--------------------------------------------------     

Ergebnis:

Dump produced at Thu Mar 06 12:48:04 1997

 

Object 0x06a4c220 of type "XXTEST" and class "REC"

Structure defined as "STXXTS", total length 88

 

REC from 0x00000000 length 0x00000058

000-XX-NUM8 from 0x00000000 length 0x00000008 N+8

000-XX-TXT80 from 0x00000008 length 0x00000050 X+80

 

Objectdata:

 

0x00000000: 30 30 30 31 32 33 34 35 64 69 65 73 20 69 73 74 00012345dies ist

0x00000010: 20 65 69 6e 20 74 65 73 74 74 65 78 74 20 20 20 ein testtext

0x00000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20

0x00000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20

0x00000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20

0x00000050: 20 20 20 20 20 20 20 20