External data transfer (Transactions KE4X (Actual), KE1X (Plan), or report RKEVEXT0 ) terminates with an error message, such as:
'Packed field does not contain correct BCD format'.
The abend occurs in Program RKEExxxx (xxxx = realignment group).
Two causes are possible:
- 1. The data of the external file does not have the same format as the external structure.
- 2. The data of the external file is in text mode and not in binary mode (see documentation on the ABAP/4 key word OPEN DATASET and the sample program RKEHOH10 for creating an external file). If you go from the short dump to the debugger, you will see that the first byte of the external structure (EXT_STRUKTUR) contains a "#", and all other fields appear to be moved by one byte.
- 1. One common cause is that the value fields in the external file are in character format, while the corresponsing data element of the external structure has a packed format. In this case, assign the value fields of the external structure to an appropriate data element with the type CHAR. A conversion will take place in the program during the field allocation to the internal structure (where the value fields have a packed format) (see the documentaiton to the ABAP language element MOVE).
For further analysis, perform the following actions:
- a) Set a breakpoint in program RKEExxxx (xxxx = assignment group) at READ DATASET EXT_FILE INTO mmmm (mmmm = name of the external structure).
- b) Start the external data transfer in the test mode.
- c) Execute the function 'Single Step'.
- d) Analyze the field contents of the structure mmmm.
- e) Create the external file in the appropriate structure.
Additional key words
BCD_BADDATA
No comments:
Post a Comment