external_column[n]

Default: N/A
Range: N/A

This parameter allows you to globally change the column name, sql_type, or sql_length of the non DMSII columns described in Numeric Date and Time in Non-Contiguous Columns. The syntax is as follows:

external_column[n] = ["name"[,sql_type[,sql_length]]]

Where

Is

n

The corresponding bit number (dms_subtype value) for the non-DMSII column.

Note: The brackets and value are required syntax.

name

Custom column name

sql_type

An integer value that represents the internal code for the SQL type that you want to use. The program only accepts data types that make sense for a particular column. For instance, you cannot set the AFN to a bit or a char, but you can set it to an int or a dec(10). For details, see DMSII and Relational Database Data Types.

sql_length

A value that represents the length of the data type. Specify this value only if the data type requires it. If the data type does not have a length specification, specifying a value may cause an error.

The following table shows allowable sql_type values for external_column.

DMS Subtype

Mask Value
(hex)

Default Column Name

Allowable SQL Types (SQL Server)

Allowable SQL Types (Oracle)

1

0x0001

update_type

tinyint, shortint, int, bigint

number(n)

2

0x0002

update_time

datetime, smalldatetime, datetime2

date

3

0x0004

update_ts

timestamp

N/A

4

0x0008

audit_ts

datetime, smalldatetime, datetime2

date

5

0x0010

audit_filenum

shortint, int, dec(n), bigint

number(n)

6

0x0020

audit_block

int, dec(n), bigint

number(n)

7

0x0040

source_name

varchar(n), char(n)

varchar(n), char(n)

8

0x0080

source_id

tinyint, shortint, int, bigint

number(n)

9

0x0100

my_id

int, dec(n), bigint

N/A

10

0x0200

deleted_record

int, bigint

number(n)

(where n >=9)

11

0x0400

source_name

varchar(n), char(n)

varchar(n), char(n)

12

0x0800

source_id

tinyint, shortint, int, bigint

number(n)

(where n >=3)

13

0x1000

audit_ts

datetime, smalldatetime, datatime2

date

14

0x2000

user_column1

char(n), varchar(n), tinyint, shortint, int, float, datetime, dec(n), smalldatetime, datetime2, date, time

char(n), varchar(n), number(n), float, date

15

0x4000

sequence_no

int, bigint

number(n)

(where n >=9)

16

0x8000

delete_sqno

shortint, int, bigint

number(n)

(where n >=5)

Note: For Oracle, if you choose the tinyint value for sql_type you get number(3), if you choose the smallint value you get number(5) and so on, as the data types in question are not defined for Oracle. Oracle has only one type of date.

For example, the entry below causes the audit_filenum column to be renamed AFN (the double quotation marks are optional since no special characters are involved); the sql_type and sql_length remain unchanged.

external_column[5] = "AFN"

default_user_columns = 0x0010

In the example below, the data type of the audit_block column changed to dec(12).

external_column[6] = ,11,12