case_data

The case_data table holds the central copy of the field name and value of each assigned field in each case on the system.

When a work item is sent out to a queue, field data is copied from the case_data table to the pack_data table. The client uses the field values in the pack_data table to fill out the form correctly. When the form is kept any changed fields are updated in the pack_data table. When a work item is released field data is moved from the pack_data table to the case_data table.

Structure

The case_data table has the following structure:

TABLE case_data (
node_id INTEGER NOT NULL,
proc_id INTEGER NOT NULL,
casenum NUMERIC(20) NOT NULL,
field_name VARCHAR(31) NOT NULL,
field_value VARCHAR(255) NULL,
field_value_N VARCHAR(255) NULL)

Column

Description

node_id

ID of the node that this field is hosted on, as defined in the nodes table.

proc_id

ID of the procedure that this field belongs to, as defined in the proc_index table.

casenum

Case number that this field belongs to, as defined in the case_information table.

field_name

Name of this field.

field_value

Value of this field.

field_value_N

“Normalized” value of the field_value value. That is:

Date values are stored as YYYY-MM-DD.
Numeric values are stored as padded strings.
Time and String values are not changed.

Note: This value is stored to make case data searching easier, so that the database can do simple string comparisons, instead of having to do type conversions.

Case data can be normalized either when installing/upgrading the iProcess Engine, or by using the Case Data Normalization Utility - see TIBCO iProcess Engine Administrator's Guide.

Primary Key

The following primary key is defined for this table.

Key Name

Column(s)

pk_case_data

casenum
proc_id
node_id
field_name

Triggers

None.

Indexes

The following indexes are defined for this table.

Index Name

Column(s) Indexed

idx_case_data_fk

casenum
proc_id
node_id

idx_case_data_cnum_procid_fname_fvalue 1

field_name
field_value_N

casenum
proc_id

Table Activity

The case_data table contains n rows for each open case on the system, where n is the number of fields in the case that have assigned data values. Rows are added, updated and deleted in the following situations.

A row is...

When...

added

a field has a value assigned to it.

updated

a field’s value is changed.

deleted

a field becomes unassigned (blank) or when the parent case is purged.