<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;
mso-font-charset:2;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:0 268435456 0 0 -2147483648 0;}
@font-face
{font-family:Batang;
panose-1:2 3 6 0 0 1 1 1 1 1;
mso-font-alt:바탕;
mso-font-charset:129;
mso-generic-font-family:roman;
mso-font-pitch:variable;
mso-font-signature:-1342176593 1775729915 48 0 524447 0;}
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"/@Batang";
panose-1:2 3 6 0 0 1 1 1 1 1;
mso-font-charset:129;
mso-generic-font-family:roman;
mso-font-pitch:variable;
mso-font-signature:-1342176593 1775729915 48 0 524447 0;}
@font-face
{font-family:"/@宋体";
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-fareast-language:KO;}
h1
{mso-style-name:"Heading 1/,Section";
mso-style-next:Normal;
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:21.6pt;
margin-bottom:.0001pt;
text-indent:-21.6pt;
mso-pagination:widow-orphan;
page-break-after:avoid;
mso-outline-level:1;
mso-list:l3 level1 lfo1;
tab-stops:list 21.6pt;
font-size:14.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-font-kerning:0pt;
mso-fareast-language:KO;
mso-bidi-font-weight:normal;}
h2
{mso-style-name:"Heading 2/,Char/,Attribute Heading 2/,h2/,Attribute Heading 21/,Attribute Heading 22/,1/)/./,1/)/.1/,1/)/.2/,1/)/.3/,1/)/.4/,1/)/.5/,1/)/.6/,1/)/.11/,1/)/.21/,1/)/.31/,1/)/.41/,1/)/.51/,1/)/.7/,1/)/.12/,1/)/.22/,1/)/.32/,1/)/.42/,1/)/.52/,1/)/.8/,1/)/.13/,1/)/.23/,1/)/.33/,1/)/.43/,1/)/.53/,HD2";
mso-style-update:auto;
mso-style-next:Normal;
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:28.8pt;
margin-bottom:.0001pt;
text-indent:-28.8pt;
mso-pagination:widow-orphan;
page-break-after:avoid;
mso-outline-level:2;
mso-list:l3 level2 lfo1;
tab-stops:list 28.8pt;
font-size:14.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-fareast-language:KO;
mso-bidi-font-weight:normal;}
h3
{mso-style-name:"Heading 3/,Paragraph Heading/,Char1/,h3/,Table Attribute Heading/,Table Attribute Heading1/,Table Attribute Heading2/,가/)/,가/)1/,가/)2/,가/)3/,가/)4/,가/)5/,가/)6/,가/)11/,가/)21/,가/)31/,가/)41/,가/)51/,h31/,Table Attribute Heading3/,Table Attribute Heading11/,Table Attribute Heading21/,가/)7/,가/)12";
mso-style-next:Normal;
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:3.0pt;
margin-left:36.0pt;
text-indent:-36.0pt;
mso-pagination:widow-orphan;
page-break-after:avoid;
mso-outline-level:3;
mso-list:l3 level3 lfo1;
tab-stops:list 36.0pt;
font-size:12.0pt;
mso-bidi-font-size:10.0pt;
font-family:Arial;
mso-fareast-font-family:Batang;
mso-bidi-font-family:"Times New Roman";
mso-fareast-language:KO;
mso-bidi-font-weight:normal;}
h4
{mso-style-next:Normal;
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:3.0pt;
margin-left:43.2pt;
text-indent:-43.2pt;
mso-pagination:widow-orphan;
page-break-after:avoid;
mso-outline-level:4;
mso-list:l3 level4 lfo1;
tab-stops:list 43.2pt;
font-size:12.0pt;
mso-bidi-font-size:10.0pt;
font-family:Arial;
mso-fareast-font-family:Batang;
mso-bidi-font-family:"Times New Roman";
mso-fareast-language:KO;
font-weight:normal;
font-style:italic;
mso-bidi-font-style:normal;}
h5
{mso-style-next:Normal;
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:3.0pt;
margin-left:50.4pt;
text-indent:-50.4pt;
mso-pagination:widow-orphan;
mso-outline-level:5;
mso-list:l3 level5 lfo1;
tab-stops:list 50.4pt;
font-size:11.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-fareast-language:KO;
font-weight:normal;}
h6
{mso-style-next:"Body Text";
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:6.0pt;
margin-left:57.6pt;
text-indent:-57.6pt;
line-height:14.0pt;
mso-line-height-rule:exactly;
mso-pagination:widow-orphan lines-together;
page-break-after:avoid;
mso-outline-level:6;
mso-list:l3 level6 lfo1;
tab-stops:list 57.6pt;
mso-element:frame;
mso-element-frame-hspace:9.35pt;
mso-element-frame-vspace:9.35pt;
mso-element-wrap:auto;
mso-element-anchor-vertical:paragraph;
mso-element-anchor-horizontal:column;
mso-element-top:.05pt;
mso-height-rule:exactly;
font-size:11.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-font-kerning:14.0pt;
mso-fareast-language:EN-US;
mso-bidi-font-weight:normal;}
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
{mso-style-next:"Body Text";
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:6.0pt;
margin-left:64.8pt;
text-indent:-64.8pt;
line-height:14.0pt;
mso-line-height-rule:exactly;
mso-pagination:widow-orphan lines-together;
page-break-after:avoid;
mso-outline-level:7;
mso-list:l3 level7 lfo1;
tab-stops:list 64.8pt;
mso-element:frame;
mso-element-frame-hspace:9.35pt;
mso-element-frame-vspace:9.35pt;
mso-element-wrap:auto;
mso-element-anchor-vertical:paragraph;
mso-element-anchor-horizontal:column;
mso-element-top:.05pt;
mso-height-rule:exactly;
font-size:11.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-font-kerning:14.0pt;
mso-fareast-language:EN-US;}
p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
{mso-style-next:"Body Text";
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:6.0pt;
margin-left:72.0pt;
text-indent:-72.0pt;
line-height:14.0pt;
mso-line-height-rule:exactly;
mso-pagination:widow-orphan lines-together;
page-break-after:avoid;
mso-outline-level:8;
mso-list:l3 level8 lfo1;
tab-stops:list 72.0pt;
mso-element:frame;
mso-element-frame-hspace:9.35pt;
mso-element-frame-vspace:9.35pt;
mso-element-wrap:auto;
mso-element-anchor-vertical:paragraph;
mso-element-anchor-horizontal:column;
mso-element-top:.05pt;
mso-height-rule:exactly;
font-size:11.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-font-kerning:14.0pt;
mso-fareast-language:EN-US;
font-style:italic;
mso-bidi-font-style:normal;}
p.MsoHeading9, li.MsoHeading9, div.MsoHeading9
{mso-style-next:"Body Text";
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:6.0pt;
margin-left:79.2pt;
text-indent:-79.2pt;
line-height:14.0pt;
mso-line-height-rule:exactly;
mso-pagination:widow-orphan lines-together;
page-break-after:avoid;
mso-outline-level:9;
mso-list:l3 level9 lfo1;
tab-stops:list 79.2pt;
mso-element:frame;
mso-element-frame-hspace:9.35pt;
mso-element-frame-vspace:9.35pt;
mso-element-wrap:auto;
mso-element-anchor-vertical:paragraph;
mso-element-anchor-horizontal:column;
mso-element-top:.05pt;
mso-height-rule:exactly;
font-size:11.0pt;
mso-bidi-font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-font-kerning:14.0pt;
mso-fareast-language:EN-US;
font-style:italic;
mso-bidi-font-style:normal;}
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
{margin-top:0cm;
margin-right:0cm;
margin-bottom:6.0pt;
margin-left:0cm;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:Batang;
mso-fareast-language:KO;}
/* Page Definitions */
@page
{mso-page-border-surround-header:no;
mso-page-border-surround-footer:no;}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;
mso-header-margin:36.0pt;
mso-footer-margin:36.0pt;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:249393330;
mso-list-type:hybrid;
mso-list-template-ids:1714861840 -1 -1 -1 -1 -1 -1 -1 -1 -1;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:54.1pt;
mso-level-number-position:left;
margin-left:54.1pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:216.1pt;
mso-level-number-position:left;
margin-left:216.1pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l1
{mso-list-id:507642520;
mso-list-type:hybrid;
mso-list-template-ids:-1033873086 -1 -1 -1 -1 -1 -1 -1 -1 -1;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:18.0pt;
mso-level-number-position:left;
margin-left:18.0pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l1:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
margin-left:36.0pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l1:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:72.0pt;
mso-level-number-position:left;
margin-left:72.0pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l1:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:108.0pt;
mso-level-number-position:left;
margin-left:108.0pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l1:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:180.0pt;
mso-level-number-position:left;
margin-left:180.0pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l2
{mso-list-id:706370966;
mso-list-type:hybrid;
mso-list-template-ids:411215120 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l2:level1
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:18.0pt;
mso-level-number-position:left;
margin-left:18.0pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l2:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
margin-left:36.0pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l3
{mso-list-id:1089501703;
mso-list-template-ids:-1943749610;}
@list l3:level1
{mso-level-style-link:"Heading 1";
mso-level-text:%1;
mso-level-tab-stop:21.6pt;
mso-level-number-position:left;
margin-left:21.6pt;
text-indent:-21.6pt;}
@list l3:level2
{mso-level-style-link:"Heading 2";
mso-level-text:"%1/.%2";
mso-level-tab-stop:28.8pt;
mso-level-number-position:left;
margin-left:28.8pt;
text-indent:-28.8pt;}
@list l3:level3
{mso-level-style-link:"Heading 3";
mso-level-text:"%1/.%2/.%3";
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
margin-left:36.0pt;
text-indent:-36.0pt;}
@list l3:level4
{mso-level-style-link:"Heading 4";
mso-level-text:"%1/.%2/.%3/.%4";
mso-level-tab-stop:43.2pt;
mso-level-number-position:left;
margin-left:43.2pt;
text-indent:-43.2pt;
mso-ansi-font-size:12.0pt;
mso-ascii-font-family:Arial;
mso-fareast-font-family:Batang;
mso-hansi-font-family:Arial;
font-variant:normal !important;
color:windowtext;
mso-text-animation:none;
text-transform:none;
position:relative;
top:0pt;
mso-text-raise:0pt;
letter-spacing:0pt;
border:none;
mso-font-width:100%;
mso-font-kerning:0pt;
text-effect:none;
text-shadow:none;
text-effect:none;
text-effect:none;
font-emphasize:none;
mso-ansi-font-weight:normal;
mso-bidi-font-weight:normal;
mso-ansi-font-style:normal;
mso-bidi-font-style:normal;
text-decoration:none;
text-underline:none;
text-decoration:none;
text-line-through:none;}
@list l3:level5
{mso-level-style-link:"Heading 5";
mso-level-text:"%1/.%2/.%3/.%4/.%5";
mso-level-tab-stop:50.4pt;
mso-level-number-position:left;
margin-left:50.4pt;
text-indent:-50.4pt;}
@list l3:level6
{mso-level-style-link:"Heading 6";
mso-level-text:"%1/.%2/.%3/.%4/.%5/.%6";
mso-level-tab-stop:57.6pt;
mso-level-number-position:left;
margin-left:57.6pt;
text-indent:-57.6pt;}
@list l3:level7
{mso-level-style-link:"Heading 7";
mso-level-text:"%1/.%2/.%3/.%4/.%5/.%6/.%7";
mso-level-tab-stop:64.8pt;
mso-level-number-position:left;
margin-left:64.8pt;
text-indent:-64.8pt;}
@list l3:level8
{mso-level-style-link:"Heading 8";
mso-level-text:"%1/.%2/.%3/.%4/.%5/.%6/.%7/.%8";
mso-level-tab-stop:72.0pt;
mso-level-number-position:left;
margin-left:72.0pt;
text-indent:-72.0pt;}
@list l3:level9
{mso-level-style-link:"Heading 9";
mso-level-text:"%1/.%2/.%3/.%4/.%5/.%6/.%7/.%8/.%9";
mso-level-tab-stop:79.2pt;
mso-level-number-position:left;
margin-left:79.2pt;
text-indent:-79.2pt;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
-->
Detailed DB Schema for BW (BPO, Transaction, and etc.)
The Integration
Server provides a persistence service, which is used to store states and
objects in a relational database.
BusinessWare server (bserv) and channel server (chanserv) do not use
database persistence.
The following
objects are persisted:
1. Application
state
a. BPOs
used in stateful process models
b. Data
Objects (DO) used either in stateful or stateless process models
c.
Timers in stateful process models
d.
Tasks and activities in BusinessWare Task Manager projects
2. Connector state
a.
Source and target connector states
a.
Channel position is stored here when a source connectors are is used
3. Integration
Server internal state
a.
In-doubt transactions
b. Next
available service-id for remote objects created by the Java Transaction Service
(JTS) subsystem in the transaction manager
c.
Target connector transactional state
Objects in
categories (1c), (1d), (2), and (3) are considered internal to BusinessWare and
database tables for those objects should be modified only with extreme care. In
addition, BusinessWare-specific, that is, non-customer specific, fields of BPOs
are also considered internal and should also be modified with extreme care.
DB schema for BPO,
DO is automatically generated by the BusinessWare persistence service.
Table names for BPOs and DOs are provided by
the modeler during design time as part of the Object Table associated with a
stateful process model.
The table names
for BusinessWare internal tables are fixed.
The O-R mapping
tool keeps track of the Java implementation classes and table names in the
following meta-tables:
vitria$table
—keeps track of the Java implementation class and the table name. There is an
entry for every table used by BusinessWare.
Name |
Data Type |
Size |
Nulls |
id (key) |
int, |
4 |
|
impclass |
varchar |
255 |
|
mappedtablename |
varchar |
255 |
|
tablename |
varchar |
255 |
|
vitria$column
—describes the logical schema for the table. There is an entry for every
<table, column> pair.
Name |
Data Type |
Size |
Nulls |
tname (key) |
varchar |
255 |
|
cname (key) |
varchar |
255 |
|
cnum |
int |
4 |
|
vitria$tableid
—used to store the next unique ID. This table has only one row. This is for
non-Oracle databases only.
In case of
Oracle, the sequence vitria$tableid_seq is created.
Name |
Data Type |
Size |
Nulls |
OID |
numeric |
9(19.0) |
x |
The O-R mapping
tool keeps track of the Java implementation classes and table names in the
following meta-tables:
vtconnectorstate -
com.vitria.connectors.framework.common.ConnectorState
·
Insert and updates on
vtconnectorstate table happens all the time.
·
Max Number of rows here are =
number of source connectors + number of instances created
·
Delete is never called on this
table
·
No choice of persistence for
individual connectors I.e. once Integration server is persisted to Db all
connectors by default get DB persistence and every one gets a uniuqe id
assigned
Name |
Data Type |
Size |
Nulls |
connectorid (key) |
varchar |
100 |
|
instanceid (key) |
varchar |
100 |
|
jndiname |
varchar |
8000 |
x |
state |
image (BLOB) |
16 |
x |
xid |
varchar |
255 |
x |
txmarker |
int |
4 |
x |
vitria1 (vtTransactionState) -
com.vitria.services.jta.log.TransactionLogRecordImpl.
·
This table stores the in-doubt
transactions at the beginning of each transaction and removes it after
successful commit.
·
Delete and Inserts are always
called at end and beginning of a new transaction on Transaction state table
(vitria1)
Name |
Data Type |
Size |
Nulls |
appid (key) |
varchar |
100 |
|
xid (key) |
varchar |
100 |
|
xidformat (key) |
int (NUMBER(11)) |
4 |
|
rsids |
image (BLOB) |
16 |
x |
outcome |
int |
4 |
x |
coordservid |
int |
4 |
x |
coordaddr |
varchar |
255 |
x |
recoverycoordior |
text (CLOB) |
16 |
x |
vitria2 (vtJTSServideId) -
com.vitria.services.jts.ServiceId.
For
interoperability with other JTS compliant applications, the transaction manager
uses this table for obtaining the next unique service id for exporting Object
Transaction Service (OTS) coordinator and recovery objects. The table has only
one row.
Name |
Data Type |
Size |
Nulls |
appid (key) |
varchar |
100 |
|
lastusedservid |
int |
4 |
x |
PROCESSTIMER -
com.vitria.container.timer.TimerInstance
Name |
Data Type |
Size |
Nulls |
|
vtoid (key) |
varchar |
100 |
|
|
objectiId |
varchar |
255 |
x |
|
state |
varchar |
255 |
x |
|
model |
varchar |
255 |
x |
|
projectName |
varchar |
255 |
x |
|
duration |
numeric |
9(19.0) |
x |
|
created |
numeric |
9(19.0) |
x |
|
expiration |
numeric |
|