Skip to content

Processing - DMSII Data Error Handling

This page contains parameter related to handling in errors in DMSII data.

Configuration file parameters are included below with the following_font.

Character data error

Control character

The Client can be configured to handle control characters in ALPHA items in one of the following ways that are mutually exclusive. The following buttons allow you to select how you want to handle control characters.

  • Change to space

    Parameter: convert_ctrl_char

    The Client will change all control characters encountered in ALPHA data to spaces. This option will require that you run a Configure or a Redefine command to update the da_options column in the DATAITEMS Client control table entries that have a character data type. If you use a Redefine command you need to use the Redefine with options command from the Advanced button dropdown for the data source and select the Redefine all data sets (-R) option.

  • Change to '?' and count as error Parameter: inhibit_ctrl_chars

    The Client will treat a control character encountered in alpha data as an error and convert it to a question mark (?). If the percentage of bad character in the item exceeds the configured threshold, the item will be set to NULL.

  • Translate if possible

    The Client will translate control characters that do not interfere with Client operations. The Client won't allow a control character to be translated to the character NULL (00) as this causes problems with NULL terminated strings. In addition, it won't allow the use of CR and LF characters, as they interfere with bulk-loader operations. If you use SQL Server and the TAB character is the bcp delimiter, the Client won't allow you to translate a character to a TAB character. These characters will be changed to question marks (?) and counted as errors.

Change 8-bit character to '?' and count as error

Parameter: inhibit_8_bit_data

Enabling this option makes the Client treat 8-bit characters in ALPHA data as an error and converts them question marks (?).

Keep undigits in NUMBER items stored as character data

Parameter: keep_undigits

An undigit is a digit in a DMSII NUMBER item, whose value is not in the range 0 to 9.

Setting this option to 1 or 2 causes the Client to preserve the bad digit values in DMSII NUMBER items that are stored as CHAR or VARCHAR data. The bad digits will have values of A-F.
Setting it to 2 also causes undigits in DMSII NUMBER items to be treated as 9s. If the option is set to 0, undigits in DMSII NUMBER items are treated as errors.

Enable High Value Padding

Parameter: enable_ff_padding

This option lets you mark items as padded with high values in order to achieve left justification. It applies to ALPHA items and unsigned numeric items that are stored as ALPHA data.

Set item to NULL if errors exceed (%)

Parameter: alpha_error_cutoff

Specify the percentage of data errors in any given alpha item that is tolerated before the item is declared bad and treated as NULL.

General error handling

Discard records containing data errors

Parameter: discard_data_errors

Enable this option to instruct the Client to write all records with data errors to the discard file tablename.bad, and not apply them to the relational database.

Display data errors (in log file)

Parameter: display_bad_data

When this option is enabled, the Databridge Client will display the raw DMSII data for an item that has a data error. Use this option for debugging purposes if you encounter many data errors. This output is suppressed when the number of errors exceeds the limit specified by Error display limit values.

Suppress duplicate (insert) warnings

Parameter: suppress_dup_warnings

Enabling this option prevents warnings for duplicate inserts and failed updates from displaying during update processing. Enabling this option is not recommended as it will tend to mask the errors, which could be a symptom of a more serious problem.

Error display limits

Parameter: error_display_limits

Specifies the maximum number of errors per data set that are permitted for screen output (Display) and for log file output (Log file).

Discard record thresholds

These values control how the Client handles discarded records.

Maximum total discards (0 minimum to 10000 maximum)

Specifies the total number of discards the Client will tolerate before abending. This value must be greater than the value for Maximum per-table discards unless it set to 0, which means that no limits are imposed on discards.

Maximum per-table discards (0 minimum to 1000 maximum)

Specify the maximum number of discards records for a table that is written to the discard file. Discards that exceed this number are ignored. If this option is set to zero, no limits are imposed on the discards for the individual table.