Format of the Error Cause File
- Output specifications of the Error Cause File
-
The error information for each error is output on one line of the file.
If there is an error for which multiple fields in one record can be skipped, the error information will be output split over multiple lines.
- Character encoding and language of files
-
The character encoding and language of files is as follows.
Table 7.14 Character encoding and language of the Error Cause File
Category
Windows
UNIX/Linux
Character encoding
Fixed to "Shift JIS"
The local host kanji code type (knjcode) specified in the System Environment Settings file
Line break code
Fixed to "0D0A"
Fixed to "0A"
BOM
None
Language
The language (huledlang) specified in the System Environment Settings file
Format
The error is output according to the following format.
"End code - Details code", "End message", "Detailed message", "Additional information", "Key field information"
Each field is output in CSV (comma separated values) format.
The data for each field is enclosed in double quotations (" ").
Key field information is output only if -errcausekeys is specified in the command for executing data processing (utled command).
-
End code and Dutledetails code
These are four-digit numeric strings. If a code is less than four digits, the most significant digits are padded using zero (0).
-
End message and Detailed message
The line break code and some characters are replaced in these messages.
These are replaced and output as shown in the following.
Table 7.15 Replacement rules for control characters in output messages
Target replacement characters
Characters after replacement
Remarks
\n (0x0A)
\n (0x5C, 0x6E)
\r (0x0D)
\r (0x5C, 0x72)
\0 (0x00)
\0 (0x5C, 0x30)
, (0x2C)
: (0x3A)
Commas are replaced by colons in messages, because commas are used as delimiters.
-
Additional information
This information is for pinpointing the location of an error.
The information in the following table is output separated by spaces.
The number sign (#) indicates the order in which records are output. The starting count number for all values such as record numbers and field numbers is 1. However, for errors that relate to an entire record, the field number is output as "0".
Table 7.16 Contents of Additional information
#
Output information
Output conditions
Description
Output example
1
Input type(Input)
Error that occurs when reading a record
The input type that detects error fields
Input type(Input)
2
Input record number(%d)
Always output
The record number of the input record
Input record number(5)
3
Input field number(%d)
Error that occurs when reading a record
The field number of the input record
Input field number(3)
4
Condition settings%d(%s)
Error that occurs when processing or outputting a record
The extraction condition defined in the Data Processing Settings and the serial number and condition type for custom error conditions
<Condition types>
One of the following is output:
-
Extract condition
-
Custom error condition
<Additional notes>
When "No conditions" is specified as the extraction requirement, "0" is output in %d.
"No conditions" can only be specified when the Ver.1 parameter file is used.
Condition settings2(Extractcondition)
5
Output number(%d)
Error that occurs when processing or outputting a record
Variable assignment error
The number of the output settings defined in the data processing settings
When a variable assignment error occurs, the string "Variable" is output.
Output number(3)
Output number(Variable)
6
Output field number(%d)
Error that occurs when processing or outputting a record
The output number of the output record (#1)
Output field number(4)
7
Output field name(%s)
Error that occurs when processing or outputting a record
Variable assignment error
The field name of output records (#2)
When a variable assignment error occurs, this becomes the name of the variable.
Output field name (NAME)
#1
:
This is used when an ID is omitted in the output settings.
#2
:
This is used when an ID is not omitted in the output settings.
-
-
Key field information
This is information that specifies the key field of an error.
When you execute the command for executing data processing (utled command), the key fields and field contents are output in the order in which they are specified in the -errcausekeys argument.
Output format of key field information
Key field information is output as follows:
"Key field: key field name 1 (field contents) key field name 2 (field contents)"
Key field information outputs "Key field:" as a prefix.
The key field name and field contents are output as a set.
When multiple key fields are specified, the sets (key field name and key contents) are output and with a separating halfwidth space (0x20) between each set.
Note-
If the format of a field specified as a key field is incorrect and cannot be correctly identified, it may not be possible to display the field contents correctly.
-
If the "Key field information" exceeds 8,192 bytes (excluding the leading and trailing double quotation marks ["]), the portion that exceeds 8,192 bytes is cut off. Up to 8,192 bytes of data is output enclosed by double quotation marks (").
Converting an output string
If the field type is one of the following value types, the key field contents will be converted into a numeric character string and then output.
-
9 (Unsigned external decimal)
-
P (Signed internal decimal)
-
S (Signed external decimal)
-
B (Binary)
-
F (Floating point type)
If the field type is the following binary type, the key field contents will be converted into a hexadecimal and then output.
-
I (Image type)
For example, the hexadecimal "00 01 0A " would be output as "\x00 \x01 \x0A ."
Line break codes and some characters will be replaced with the following when key field information is output.
Table 7.17 Contents of Additional information
Target replacement characters
Characters after replacement
Remarks
\n (0x0A)
\n (0x5C, 0x6E)
\r (0x0D)
\r (0x5C, 0x72)
\0 (0x00)
\0 (0x5C, 0x30)
\ (0x5C)
\\ (0x5C, 0x5C)
“ (0x22)
\x22 (0x5C, 0x78, 0x32, 0x32)
A double quotation mark (“) is being used as an enclosure character, and therefore it is replaced with a hexadecimal
, (0x2C)
\x2C (0x5C, 0x78, 0x32, 0x43)
A comma (,) is being used as a delimiter, and therefore it is replaced with a hexadecimal
-
- Output example
-
"0097-0006","Code conversion error","An unregistered external character was detected when byte 3 was processed.(code = 0x8740)","Input record number(1) Condition settings 2(Extract condition) Output number(3) Output field number(1)" ,"Key field:store code(01234) product code(ABC-01234)"