Entering content frame

Syntax documentation null_assign Locate the document in its SAP Library structure

Syntax Rules for Column Descriptions

Syntax

<null_assign> ::= [IF] NULL SET '<valLITERAL>'

valLITERAL

Null value representation

Explanation

Place the value for the null representation in single quotation marks. This is a plain text value that the SAP DB Loader represents as a character string or binary numeric value. This depends on the external data type of the column for which you want to generate the representation of the null value.

If you want to display the null value representation in one of the external data types for binary values, it must have a valid numeral format. This means either a floating decimal number in mantissa/exponent representation or a fixed point number with the currently agreed or standard decimal setting.

The generated null value representation is written to the same place in the data stream as the actual column value.

·        If the null value representation is shorter than the length of the value specified by the position, the value is filled with space characters. If the null value representation is longer, it is shortened to the specified length. The SAP DB Loader generates a warning.

·        If columns in the target table permit NULL values and you have not specified a null value representation, the SAP DB Loader default is used for unloaded NULL values (null_spec). This has the external data type CHAR.

·        If you define a null value representation for unloading NOT-NULL columns, it does not cause an error.

Use

Use this syntax rule in a command for unloading application data to specify which value for the data field of the source table is written to the data stream if the value in the source table is a NULL value.

Example

You want to unload the source table article from the database into the data stream article.data. Some of the columns in the table contain NULL values.
Define a separate condition for each of these columns. If this condition is met, the corresponding null value representation is entered in the data stream.

DATAEXTRACT * FROM article
OUTFIELDS
  ano       01-08
  descr     09-39             IF NULL SET '   '
  stock     40-43 INTEGER     IF NULL SET '0'
  min_ord   44-45 INTEGER
  price     46-53 DECIMAL (2) IF NULL SET 'X'
  weight    54-57 REAL
OUTFILE 'article.data' FORMATTED

Example

You want to unload the source table article from the database instance into the data stream article.data. Some of the columns in the table contain NULL values.
Because there is no null value representation defined for the columns in the command, but all values have the external data type CHAR, the SAP DB Loader default null value representation '?' is used.

DATAEXTRACT * FROM article
OUTFIELDS
  ano       01-08
  descr     09-39
  stock     40-51
  min_ord   52-63
  price     64-74
  weight    75-85
OUTFILE 'article.data' FORMATTED

Example

You want to unload the source table article from the database instance into the data stream article.data. Some of the columns in the table contain NULL values.
Because there is no null value representation defined for the columns in the command, the SAP DB Loader attempts to use the null value representation defined as a default (data type CHAR). This causes an error if a numeric external data type has been defined for the columns. The command terminates with an error message.

DATAEXTRACT * FROM article
OUTFIELDS
  ano       01-08
  descr     09-39
  stock     40-43 INTEGER
  min_ord   44-45 INTEGER
  price     46-53 DECIMAL (2)
  weight    54-57 REAL
OUTFILE 'article.data' FORMATTED

 

Leaving content frame