B Tables in the BDSS Data Stores

This appendix lists the tables that store data for Business Data Synchronization Server (BDSS) components.

This appendix includes the following sections:

B.1 Overview of BDSS Tables

This appendix lists the tables that store data for such BDSS-related components as PIM servers, connectors, domains, and filters.

B.2 PIM_SERVER_INSTANCES

The PIM_SERVER_INSTANCES table (Table B-1) represents an instance of a PIM server, not a type of PIM Server.

Table B-1 PIM_SERVER_INSTANCES Table

Column Type

CONNECTOR_ID

Number

NAME

VARCHAR2[100]


Unique Constraints

PIM_SERVER_INSTANCES_UK1 on CONNECTOR_ID and NAME

B.3 CONNECTORS

The CONNECTORS table (Table B-2) stores data that represents a type of connector grouping. This table includes the SUPPORTS_EVENTS_FLG and USER_EVENT_FLG columns, which enable the Hub to synchronize only users with changes, rather than synchronizing all users regardless of whether the users have changed data or not. The SUPPORTS_EVENTS_FLG enables a connector to determine that a change has been made to a user's data and can send a message to the Hub telling it to synchronize the user. The USER_EVENT_FLG enables the Hub to synchronize the user immediately or during the next synchronization cycle.

Table B-2 CONNECTORS Table

Column Type Comment

NAME

VARCHAR2[100]

The name of the connector. This name, which must be unique across BDSS, is used (along with a connector user ID) to uniquely identify a connector user.

SERVER_TYPE_CD

Number

The foreign key to the LOVS table for a PIM server type

MAX_SYNC_LVL_CD

Number

The foreign Key to the LOVS table to a synchronization level (SYNC_LVL) synchronization level

ENABLED_FLG

VARCHAR2[1]

A flag that determines if this connector is enabled

SYNC_EVENTS_ENABLED_FLG

VARCHAR2[1]

A flag that determines if this connector supports user synchronization notification events

SUPPORTS_EVENTS_FLG

VARCHAR2[1]

A flag that determines if the Hub synchronizes INSERT/UPDATE/DELETE events for a connector user. Setting this flag to T (true) notifies the Hub that it should synchronize a user's data when it has been changed. When this flag is set to T, the Hub synchronizes the user data independent of a synchronization session for the user.

USER_EVENT_FLG

VARCHAR2[1]

A flag that determines if the connector sends notifications to the Hub when an INSERT/UPDATE/DELETE event occurs for a connector user. The Hub uses this flag to initiate a synchronization session for the user.


Unique Constraints

CONNECTORS_UK1 on NAME

B.4 CONN_INSTANCES

The CONN_INSTANCES table (Table B-3) stores the values for a connector instance.

Table B-3 CONN_INSTANCES Table

Column Type Comment

NAME

VARCHAR2[100]

The name of the connector instance. It must be unique across BDSS

SERVICE_URI

VARCHAR2[100]

The URI (Universal Resource Identifier) used by the Hub components to communicate to the connector instance

CONNECTOR_ID

Number

The foreign key to the LOVS table for a SYNC_LVL (synchronization level)

ACTIVE_FLG

VARCHAR2[1]

A flag to determine if this connector instance is active. (This flag should only be set from an MBean management console.)


B.5 CONNS_TO_PIM_SERVERS

The CONNS_TO_PIM_SERVERS table (Table B-4) intersects the CONN_INSTANCES table and the PIM_SERVER_INSTANCES table.

Table B-4 CONNS_TO_PIM_SERVERS Table

Column Type Comment

CONN_INSTANCE_ID

Number

The foreign key to the CONN_INSTANCES table

PIM_SERVER_INSTANCE_ID

Number

The foreign key to PIM_SERVER_INSTANCES table


B.6 HUB_DOMAINS

The HUB_DOMAINS table (Table B-5) stores the data for a Hub domain.

Table B-5 HUB_DOMAINS Table

Column Type Comment

NAME

VARCHAR2[100]

The name of the domain. This should be unique in this table.

PRIORITY

Number

The priority with which this domain should be synchronized. Zero (0) is the highest priority. This should be unique in this table.

MAX_SYNC_LVL_CD

Number

The foreign key to the LOVS table for a SYNC_LVL (synchronization level).

DOMAIN_CLASS_CD

Number

The foreign key to the LOVS table for a DOMAIN_CLASS (such as task).


Unique Constraints

HUB_DOMAINS_UK1 on NAME

HUB_DOMAINS_UK2 on PRIORITY

B.7 CONN_DOMAINS

Table B-6 lists the columns of the CONN_DOMAINS table.

Table B-6 CONN_DOMAINS Table

Column Type Comment

DOMAIN_NAME

VARCHAR2[100]

The name of the domain

PRIORITY

Number

The priority at which this domain is synchronized. Zero (0) is the highest priority.

MAX_SYNC_LVL_CD

Number

The foreign key to the LOVS table for a SYNC_LVL (synchronization level)

DOMAIN_CLASS_CD

Number

The foreign key to the LOVS table for a DOMAIN_CLASS (such as task)

CONNECTOR_ID

Number

The foreign key to the CONNECTORS table

HUB_DOMAIN_ID

Number

The foreign key to the HUB_DOMAINS table

FILTER_FLD_LOV_TYPE

VARCHAR2[50]

The type of LOV (list of values) to use for the filter fields of this connector domain. This is unique for a connector type and for a domain.


Unique Constraints

CONN_DOMAINS_UK1 on CONNECTOR_ID and HUB_DOMAIN_ID.

B.8 CONN_DOMAIN_FILTERS

Table B-7 lists the columns of the CONN_DOMAIN_FILTERS table.

Table B-7 CONN_DOMAIN_FILTERS Table

Column Type Comment

CONN_DOMAIN_ID

Number

The foreign key to the CONN_DOMAINS table

FIELD_VALUE

VARCHAR2[100]

The field value used to filter with this field

FILTER_SEQ

Number

The sequence in which to use this filter value

OPERATOR_LOV_CD

Number

The foreign key to the LOVS table for an OPERATOR

FILTER_NAME

VARCHAR2[100]

The name of the filter


B.9 DESC_FIELDS

The columns of the DESC_FIELDS table (listed in Table B-8) hold the fields that are configured for the descriptions of a Hub record. In log messages, these description fields are used instead of the ID to identify a record. The field descriptions can be flagged for use as key fields for the HUB_DOMAINS table.

Table B-8 DESC_FIELDS Table

Column Type Comment

HUB_DOMAIN_ID

Number

The foreign key to the HUB_DOMAINS table

FIELD_NAME

VARCHAR2[100]

The Hub field name used in the description of a log message

KEY_FIELD_FLG

VARCHAR2[1]

A flag that determines if this Hub field should also be used as a key field


B.10 HUB_USERS

The HUB_USERS table (Table B-9) holds the data for a Hub user (a representation of the mapping of CONNECTOR_USERS).

Table B-9 HUB_USERS Table

Column Type Comment

NAME

VARCHAR2[100]

The name for the Hub representation of the user. This name must be unique across BDSS.

SESSION_STATE

VARCHAR2[100]

The state of the user (dispatched, synchronization ended) or a session ID

SYNC_ENABLED_FLG

VARCHAR2[1]

A flag to determine if the Hub user should be considered for synchronizing. Zero (0) indicates that the Hub should not synchronize the user.

LAST_SYNC_HIST_ID

Number

The foreign key to the USER_HISTORY table for the history of the last synchronization cycle for this user

LAST_GOOD_SYNC_HIST_ID

Number

The foreign key to the USER_HISTORY table for the history of the last successful synchronization cycle for this user.

LAST_UPD

Date

The time stamp of the last synchronization cycle for this user.

SYNC_START_TS

timestamp

The timestamp that indicates the start of the current synchronization cycle for a user. This should be set by a database trigger.

Triggers: BDSS.HUB_USERS_SYNC_START_TRG – sets the SYNC_START_TS using database time. This trigger should be fired only when the HUB_USERS.SESSION_STATE is updated with a valid sync session state (that is, not null, DISPATCHED or SYNC_ENDED).


Unique Constraints

HUB_USERS_UK1 on NAME

B.11 CONN_USERS

The columns of the CONN_USERS table (listed in Table B-10) hold the data for a connector user.

Table B-10 CONN_USERS Table

Column Type Comment

USER_ID

VARCHAR2[100]

The user ID for the connector user. For example: pimsi1001@pimsisiebel.com for Microsoft Exchange 2007. This field (along with the CONNECTOR_ID) can uniquely identify a PIM user.

LANG_CD

VARCHAR2[25]

The language used by the user

LAST_SYNC_TS

Date

The time stamp for the last synchronization session in which this user participated

ERROR

VARCHAR2[100]

Any error encountered by the user in the last synchronization session

LAST_SYNC_STATUS

VARCHAR2[1]

A value of 0 indicates that the last synchronization finished successfully. A value of 1 indicates that the synchronization did not complete successfully.

LAST_GOOD_SYNC_TS

Date

The time stamp for the last successful synchronization session for this user

SYNC_NOW_FLAG

VARCHAR2[1]

A flag that determines if a user is synchronized when using synchronization events to initiate synchronization

CONNECTOR_ID

Number

The foreign key to the CONNECTORS table

CONNECTOR_INST_ID

Number

The foreign key to the CONN_INSTANCES table

HUB_USER_ID

Number

The foreign key to the HUB_USERS table

SYNC_NOW_FLG

varchar2(1)

Set this flag to 1 to indicate that the user must be synchronized.

SYNC_NOW_TS

timestamp

The timestamp that marks when the SYNC_NOW_FLG was last set. The new trigger must to update SYNC_NOW_TS. BDSS.CONN_USERS_SYNC_NOW_TRG sets the SYNC_NOW_TS using the time of the database. This trigger should be fired only when the SYNC_NOW _FLG is updated to 1.


Unique Constraints

CONN_USERS_UK1 on CONNECTOR_ID and USER_ID

CONN_USERS_UK2 on HUB_USER_ID and CONNECTOR_ID

B.12 USER_CONTEXTS

Table B-11 lists the columns of the USER_CONTEXTS table. Each record in this table represents a connector domain for a user.

Table B-11 USER CONTEXTS Table

Column Type Comment

CONTEXT_NAME

VARCHAR2[500]

The version of the PIM record

HUB_USER_ID

Number

The foreign key to the HUB_USERS table

CONN_DOMAIN_ID

Number

The foreign key to the CONN_DOMAINS table

TARGET

VARCHAR2[100]

The target folder used for synchronizing records

SYNC_LVL_CD

Number

The foreign key to the LOVS table to a SYNC_LVL (synchronization level)

LAST_SYNC_HIST_ID

Number

The foreign key to the USER_HISTORY table

LAST_GOOD_SYNC_TS

Date

The timestamp for the last successful synchronization session for this user

PREV_SYNC_LVL_CD

Number

The foreign key to the LOVS table for a SYNC_LVL (synchronization level) to the previous SYNC_LVL

SYNC_NOW_FLG

varchar2(1)

Set this flag to 1 to indicate that the user must be synchronized.

SYNC_NOW_TS

timestamp

The timestamp that marks when the SYNC_NOW_FLG was last set. The new trigger must to update SYNC_NOW_TS. BDSS.CONN_USERS_SYNC_NOW_TRG sets the SYNC_NOW_TS using the time of the database. This trigger should be fired only when the SYNC_NOW _FLG is updated to 1.


Unique Constraints

USER_CONTEXT_UK1 on HUB_USER_ID and CONN_DOMAIN_ID

B.13 USER_CONTEXT_STATES

The USER_CONTEXT_STATES table (Table B-12) enables connectors to store synchronization state data for users that can be used by the connector on the next synchronization cycle to find record changes.

Table B-12 USER_CONTEXT_STATES Table

Column Type Comment

USER_CONTEXT_ID

Number

The foreign key to the USER_CONTEXTS table

STATE_INDEX

VARCHAR2[100]

Stores the index of the state

LAST_SYNC_TS

Date

The time stamp for the last synchronization session in which this user participated

TEMP_FLG

VARCHAR2[1]

The flag that indicates a temporary synchronization state


B.14 STATE_DATA

Table B-13 lists the columns of the STATE_DATA table.

Table B-13 STATE_DATA Table

Column Type Comment

USER_CONTEXT_STATE_ID

Number

The foreign key to the USER_CONTEXT_STATES table

SEQ_NUM

Float

The sequence in which to return the state data

TEMP_FLG

VARCHAR2[1]

The flag that indicates temporary data synchronization

DATA

VARCHAR2[500]

A chunk of data


B.15 USER_HISTORY

The USER_HISTORY table (Table B-14) stores the history data for a HUB_USER or a USER_CONTEXT.

Table B-14 USER_HISTORY Table

Column Type Comment

SYNC_TS

Date

The time stamp for the synchronization session

SYNC_STATUS

VARCHAR2[200]

The status of the synchronization record. A value of zero (0) indicates that the last synchronization completed successfully. A value of 1 indicates that the synchronization did not complete successfully.

ERROR

VARCHAR2[200]

An error message

HUB_USER_ID

Number

The foreign key to the HUB_USERS table

USER_CONTEXT_ID

Number

The foreign key to the USER_CONTEXTS table


B.16 CONN_USER_RECORDS

Table B-15 lists the columns of the CONN_USER_RECORDS table. Each record represents a user's record on a specific PIM server.

Table B-15 CONN_USER_RECORDS Table

Column Type Comment

VERSION

VARCHAR2[500]

The version of the PIM record

DELETE_FLG

VARCHAR2[1]

A flag that indicates if this record is deleted

USER_CONTEXT_ID

Number

The foreign key to the USER_CONTEXTS table

CONNECTOR_ROW_IDEN

VARCHAR2[225]

The actual record ID for this PIM record on the PIM server

LAST_INBND_TS

Date

The time stamp of the last inbound synchronization for this record

LAST_INBND_STATUS

VARCHAR2[1]

The status of the synchronization record. A value of 0 (zero) indicates that the synchronization completed successfully. A value of 1 indicates that the synchronization did not complete successfully.

SOURCE_TS

Date

The time stamp when this record was updated from the source PIM server

ERROR

VARCHAR2[200]

Any errors for this record

HUB_RECORD_ID

Number

The foreign key to the HUB_RECORD table

ECHO_PENDING_FLG

VARCHAR2[1]

A flag that indicates if the system expects an echo for this record, meaning that the record was updated because of a change from another PIM server and the returning update should be dropped.


Unique Constraints

CONN_USER_RECORDS_UK1 on USER_CONTEXT_ID, CONNECTOR_ROW_IDEN, and HUB_RECORD_ID.

B.17 HUB_RECORDS

The HUB_RECORDS table (Table B-16) stores the Hub record data.

Table B-16 HUB_RECORDS Table

Column Type Comment

HUB_DOMAIN_ID

Number

The foreign key to the HUB_DOMAINS table

LAST_OUTBND_TS

Date

The time stamp for the last outbound synchronization of this record

LAST_OUTBND_STATUS

VARCHAR2[1]

The status of the synchronization record. A value of 0 (zero) indicates that the last synchronization completed successfully. A value of 1 indicates that the synchronization did not complete successfully.

DELETE_FLG

VARCHAR2[1]

A flag used for processing deletions that represent a transient state


B.18 CONN_RECORD_DESCS

The CONN_RECORD_DESCS table (Table B-17) holds the values for the description field for each record.

Table B-17 CONN_RECORD_DESCS Table

Column Type Comment

FIELD_ID

Number

The foreign key to the DESC_FIELDS table

FIELD_VALUE

VARCHAR2[100]

The field value

CONN_RECORD_ID

Number

The foreign key to the CONN_USER_RECORDS table


B.19 ASSOC_DATA

The ASSOC_DATA table (Table B-18) represents the associated data for CONN_USERS or CONN_USER_RECORDS.

Table B-18 ASSOC_DATA Table

Column Type Comment

SEQUENCE

Number

The sequence in which to return this data

DATA_ID

VARCHAR2[50]

The ID of the associated data

DATA_GROUP_NAME

VARCHAR2[50]

The name for a grouping of data, such as ASSOC1 or ASSOC2

DATA_KEY_NAME

VARCHAR2[50]

The key name for the data

DATA_KEY_VALUE

VARCHAR2[100]

The data store

CONN_USERS_ID

Number

The foreign key to the CONN_USERS table

CONN_RECORD_ID

Number

The foreign key to the CONN_USER_RECORDS table


B.20 LOVS

The LOVS table represents the lists of values (LOVS) for the synchronization level (SYNC_LVL), PIM server type (PIM_SERVER_TYPE), domain class, and also standard comparison operators. Table B-19 lists the lists of values by type (VARCHAR2[50]) and value (VARCHAR2[100])

Table B-19 LOVS

LOV_TYPE (VARCHAR2[50]) LOV_VALUE (VARCHAR2[100])

SYNC_LVL

Values include:

  • Full

  • Outbound Only

  • Inbound Only

  • None

PIM_SERVER_TYPE

Values include:

  • Exchange 2007

  • BPEL Tasks

DOMAIN_CLASS

Values include:

  • Task

  • Contact

  • Calendar

Operators

Values include:

  • EQUALS

  • BEFORE

  • AFTER

  • GREATER_THAN

  • LESS_THAN


B.21 PROFILES

The PROFILES table (Table B-20) stores profile, section, parameter, and value information.

Table B-20 PROFILES Table

Column Type Comment

PROFILE_NAME

VARCHAR2[100]

The name of the profile

SECTION_NAME

VARCHAR2[100]

The name of the section

PARAMETER

VARCHAR2[100]

The name of the parameter

VALUE

VARCHAR2[500]

The value of the parameter

COMMENTS

VARCHAR2[200]

Notes and comments about this parameter

LAST_UPD

Date

The last time that this parameter was updated


B.22 SEQUENCE

The SEQUENCE table (Table B-21) stores sequence information used by Oracle TopLink to create unique IDs for new records in each table.

Table B-21 SEQUENCE Table

Column Type Comment

SEQ_NAME

VARCHAR2[50]

The name of the sequence

SEQ_COUNT

Number(30,0)

The counter for the sequence