Customization Rules for Client Configurator

All of the client control tables except DATASOURCES have a column named xx_user_bmask (where xx is “ds”, “di”, “dt” or “da”, depending on the table where it resides). This column, which parallels xx_options, is used to indicate whether the bits were changed by the user script or by the Client Configurator. Additionally, some of the bits in the xx_options columns are set by the Client or are set by changing an item to a special client data type, such as a date.

The redefine command, when run in Client Configurator mode (use_dbconfig = true), will restore the bits in xx_options that are referenced by xx_user_bmask, while leaving the remaining bits unchanged. Several bits in xx_options that were previously unused are now used to indicate that a specific field in the record was modified by a user script or the Client Configurator.

Parameters that affect ds_options

The global parameters that affect ds_options settings are as follows:

history_tables = { 0 | 1 | 2}

0 - No history tables will be created.

1 - Creates history tables for all data sets. The bit DSOPT_Save_Updates (8) is automatically set for all data set table entries. (If you used a data set user script to do this, remove it and set history_tables to 1 in the client configuration file using either the Client Configurator or the editor. If you use binary configuration files, you must export the file before editing the file. See Export or Import a Configuration File.

2 - The same as a value of 1, except that it also sets the bit DSOPT_History_Only (0x2000 or decimal 8192). This replaces the DATABridge 6.0 configuration file parameter keep_history_only. Combining the two history parameters in this way eliminates the case where you can have no history and keep_history_only set to true. The Client Configurator will protect you against making this mistake.

clr_dup_extr_recs = {true | false}

Defines the initial value of the new ds_options bit DSOPT_Clrdup_Recs (0x8000 or decimal 32768). This parameter is no longer checked by the process and clone commands.

split_varfmt_dataset = {true | false}

Defines the initial value of the new ds_options bit DSOPT_Split_Vfmt_ds (0x10000 or decimal 65536). It make the client treat variable format data sets in a slightly different manner by putting all the fixed parts of records in the table normally used for type 0 records. The fixed parts of records in all other tables is not included, except for the items that are keys.

force_aa_value_only = {0 | 1 | 2}

Defines the initial value of the ds_options bit DSOPT_Use_AA_Only, which forces the data set to use AA Values or RSNs as keys if the data set has a valid RSN or AA Value. RSNs always take precedence over AA Values unless an embedded data set or a DMSII link is involved.
A value of zero sets the bit to 0 for all data sets. A value of 1 sets the bit to 1 for all data sets that have a valid AA Value. A value of 2 sets the bit 1 for data sets that have an RSN.

Caution:

Any time you explicitly change the value of a bit in ds_options, you must set the corresponding bit in ds_user_bmask. If you set a bit that had a default value of 1 to 0, you must set the corresponding bit in ds_user_bmask to 1 to indicate that the value of this bit should be preserved by the redefine command.

Be aware that some bits in ds_options may already be set. For SQL Server, use the "|" operator. For Oracle, use the BITOR function with the BITAND function to perform logical OR and logical And functions. For best results, avoid directly setting ds_options or using the + operator. The following example uses the BITOR function when updating the ds_options column of DATASETS to set the bit DSOPT_Select_Only (64) while leaving the rest of the bits intact:

ds_options=BITOR(ds_options,64)

When using the Client Configurator, if you change the value of external_columns for a single data set, you must also set the new bit DSOPT_ExtCols_Set (0x2000 or decimal 131072 ) in both ds_options and ds_user_bmask. This ensures that the Client Configurator retains the change.

Sample script for setting a ds_options bit in DATASETS

This script sets the ds_options bit DSOPT_Ignore_Dups (32) for the data set SVHIST without changing any of the other bits in the column. We provide both a SQL Server version and Oracle version of this script.

Filename: script.user_layout..svhist:

SQL Server version:

update DATASETS set ds_options = ds_options | 32

where dataset_name = ‘SVHIST’

Oracle version:

update DATASETS set ds_options = BITOR(ds_options, 32)

where dataset_name = ‘SVHIST’