Administrator's Guide (Oracle)

Administrator's Guide (Oracle)
TIBCO iProcess® Engine
(Oracle)
Administrator's Guide
Software Release 11.6
January 2016
Two-Second Advantage®
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED
OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED
ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED
SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR
ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A
LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE
AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER
LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE
SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE) OR IF THERE IS NO SUCH SOFTWARE
LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED
IN THE “LICENSE” FILE(S) OF THE SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS
AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN
AGREEMENT TO BE BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright laws and
treaties. No part of this document may be reproduced in any form without the written authorization of TIBCO
Software Inc.
TIBCO, Two-Second Advantage, TIBCO ActiveMatrix BusinessWorks, TIBCO Business Studio, TIBCO
Enterprise Message Service, TIBCO Hawk, TIBCO iProcess, TIBCO iProcess Suite, and TIBCO Rendezvous are
either registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other countries.
Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform Enterprise Edition
(J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle Corporation
in the U.S. and other countries.
All other product and company names and marks mentioned in this document are the property of their
respective owners and are mentioned for identification purposes only.
THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL
OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME
TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWARE VERSION ON A SPECIFIC
OPERATING SYSTEM PLATFORM.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS.
CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE
INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO SOFTWARE INC. MAY MAKE
IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN
THIS DOCUMENT AT ANY TIME.
THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR
INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE, INCLUDING
BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.
Copyright © 1994-2016 TIBCO Software Inc. All rights reserved.
TIBCO Software Inc. Confidential Information
| iii
Contents
Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
TIBCO iProcess Engine Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Other TIBCO Product Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Typographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
Connecting with TIBCO Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
How to Join TIBCO Community . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
How to Access TIBCO Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
How to Contact TIBCO Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Chapter 1 The TIBCO iProcess Engine Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Chapter 2 Process Sentinels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
node_cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
process_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
process_event_log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
process_attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
running_processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
active_logins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
checksums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Chapter 3 Mbox Sets and Message Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
iql_queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
mbox_set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
mbox_set_group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Oracle AQ Queue Tables and Queues. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Chapter 4 Sequence Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
About Sequence Numbers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
TIBCO iProcess Engine (Oracle) Administrator’s Guide
iv
| Contents
sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Chapter 5 Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
proc_index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
iap_monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
iap_field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
iap_activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
iap_global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
proc_version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
procedure_lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
proc_instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
proc_audit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
proc_defn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
proc_deadline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
proc_event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
wqd_delta_subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Chapter 6 Procedure Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
About Procedure Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
pm_objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
pm_objects_lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
pmobjects_security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
proc_mgt_hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Chapter 7 Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
case_information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
outstanding_addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
wait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
wait_step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
case_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
audit_trail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
memo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Contents v
|
nmemo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
predict . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
predict_lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
case_deadline_event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
case_event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
casenum_gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Chapter 8 Work Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
staffo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
pack_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
pack_memo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
pack_nmemo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
qaccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Chapter 9 Case Data Queue Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
cdqp_def . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
cdqp_cfg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Chapter 10 Queue Participation and Redirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .157
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
part_defn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
part_list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
redir_defn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Chapter 11 Administrative Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .165
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
flag_table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Chapter 12 Users and Work Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173
About User Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
user_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
user_attrib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
user_setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
TIBCO iProcess Engine (Oracle) Administrator’s Guide
vi
| Contents
user_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
user_memb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
leavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
tsys_user_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
tsys_user_attrib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
tsys_user_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
tsys_user_memb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
Chapter 13 Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
About Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
role_users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
tsys_role_users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Chapter 14 TIBCO iProcess Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
About TIBCO iProcess Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
dbs_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
dbs_fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
dbs_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
tsys_dbs_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
tsys_dbs_fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
tsys_dbs_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
str_dbs_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
str_dbs_fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
ttmp_dbs_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
ttmp_dbs_fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
ttmp_dbs_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Chapter 15 Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
About Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
list_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
list_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
tsys_list_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
tsys_list_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Contents vii
|
ttmp_list_names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
ttmp_list_values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Chapter 16 iProcess Server Plug-ins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .229
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
eai_registry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Chapter 17 Firewall Port Ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
port_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
port_range_active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
port_range_conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
port_range_nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Chapter 18 WQS/WIS Shared Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
wqs_index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Chapter 19 System Event Logging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Table Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
system_event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
system_event_conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Appendix A Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
Appendix B STORAGE Configuration Macro Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .259
TABLESIZE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
TABLEPCTINCREASE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
INDEXSIZE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
TABLESPACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
INDEXSPACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
AQTABLESPACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Appendix C SSOLite Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
Using SSOLite Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Processing Asynchronous Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
TIBCO iProcess Engine (Oracle) Administrator’s Guide
viii
| Contents
Transactional Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Handling Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Processing Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Prioritizing Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
269
269
271
273
Data Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
Command Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Control Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
Debug Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Appendix D Database Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
CASENUM_FIND_GAPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
Appendix E Unused Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| ix
Preface
This guide describes the TIBCO iProcess Engine (Oracle) database schema.
Topics
•
Related Documentation, page x
•
Typographical Conventions, page xii
•
Connecting with TIBCO Resources, page xv
TIBCO iProcess Engine (Oracle) Administrator’s Guide
x
| Related Documentation
Related Documentation
This section lists documentation resources you may find useful.
TIBCO iProcess Engine Documentation
The following documents form the TIBCO iProcess Engine documentation set:
•
TIBCO iProcess Engine Installation Read this manual for instructions on site
preparation and installation.
•
TIBCO iProcess Engine Release Notes Read the release notes for a list of new
and changed features. This document also contains lists of known issues and
closed issues for this release.
•
TIBCO iProcess Suite Documentation This documentation set contains all the
manuals for TIBCO iProcess Engine and other TIBCO products in TIBCO
iProcess® Suite. The manuals for TIBCO iProcess Engine are as follows:
— TIBCO iProcess Engine Architecture Guide
— TIBCO iProcess Engine Administrator’s Guides:
TIBCO iProcess Engine Administrator’s Guide
TIBCO iProcess Objects Director Administrator’s Guide
TIBCO iProcess Objects Server Administrator’s Guide
— TIBCO iProcess Engine Database Administrator's Guides:
TIBCO iProcess Engine (DB2) Administrator's Guide
TIBCO iProcess Engine (Oracle) Administrator's Guide
TIBCO iProcess Engine (SQL) Administrator's Guide
— TIBCO iProcess swutil and swbatch Reference Guide
— TIBCO iProcess Engine System Messages Guide
— TIBCO iProcess User Validation API User's Guide
— LDAPCONF Utility User’s Guide
Other TIBCO Product Documentation
You may find it useful to read the documentation for the following TIBCO
products:
•
TIBCO ActiveMatrix BusinessWorks™
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Preface xi
|
•
TIBCO Business Studio™
•
TIBCO Enterprise Message Service™
•
TIBCO Hawk®
•
TIBCO Rendezvous®
TIBCO iProcess Engine (Oracle) Administrator’s Guide
xii
| Typographical Conventions
Typographical Conventions
TIBCO iProcess Engine can be run on both Microsoft Windows and UNIX/Linux
platforms. In this manual, the Windows convention of a backslash (\) is used. The
equivalent pathname on a UNIX or Linux system is the same, but using the
forward slash (/) as a separator character.
UNIX or Linux pathnames are occasionally shown explicitly, using forward
slashes as separators, where a UNIX or Linux-specific example or syntax is
required.
Any references to UNIX in this manual also apply to Linux unless explicitly stated
otherwise.
The following typographical conventions are used in this manual
Table 1 General Typographical Conventions
Convention
Use
SWDIR
TIBCO iProcess Engine installs into a directory. This directory is referenced in
documentation as SWDIR. The value of SWDIR depends on the operating system.
For example,
•
on a Windows server (on the C: drive)
if SWDIR is set to the C:\swserver\staffw_nod1 directory, then the full path
to the swutil command is in the C:\swserver\staffw_nod1\bin\swutil
directory.
•
on a UNIX or Linux server
if SWDIR is set to the /swserver/staffw_nod1 directory, then the full path to
the swutil command is in the /swserver/staffw_nod1/bin/swutil
directory or the $SWDIR/bin/swutil directory.
Note: On a UNIX or Linux system, the environment variable $SWDIR should
be set to point to the iProcess system directory for the root and swadmin users.
code font
Code font identifies commands, code examples, filenames, pathnames, and
output displayed in a command window. For example:
Use MyCommand to start the foo process.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Preface xiii
|
Table 1 General Typographical Conventions (Cont’d)
Convention
Use
bold code
Bold code font is used in the following ways:
font
•
In procedures, to indicate what a user types. For example: Type admin.
•
In large code samples, to indicate the parts of the sample that are of
particular interest.
•
In command syntax, to indicate the default parameter for a command. For
example, if no parameter is specified, MyCommand is enabled:
MyCommand [enable | disable]
italic font
Key
combinations
Italic font is used in the following ways:
•
To indicate a document title. For example: See TIBCO ActiveMatrix
BusinessWorks Concepts.
•
To introduce new terms. For example: A portal page may contain several
portlets. Portlets are mini-applications that run in a portal.
•
To indicate a variable in a command or code syntax that you must replace.
For example: MyCommand PathName
Key name separated by a plus sign indicate keys pressed simultaneously. For
example: Ctrl+C.
Key names separated by a comma and space indicate keys pressed one after the
other. For example: Esc, Ctrl+Q.
The note icon indicates information that is of special interest or importance, for
example, an additional action required only in certain circumstances.
The tip icon indicates an idea that could be useful, for example, a way to apply
the information provided in the current section to achieve a specific result.
The warning icon indicates the potential for a damaging situation, for example,
data loss or corruption if certain steps are taken or not taken.
Table 2 Syntax Typographical Conventions
Convention
Use
[ ]
An optional item in a command or code syntax.
For example:
MyCommand [optional_parameter] required_parameter
TIBCO iProcess Engine (Oracle) Administrator’s Guide
xiv
| Typographical Conventions
Table 2 Syntax Typographical Conventions (Cont’d)
Convention
Use
|
A logical OR that separates multiple items of which only one may be chosen.
For example, you can select only one of the following parameters:
MyCommand param1 | param2 | param3
{ }
A logical group of items in a command. Other syntax notations may appear
within each logical group.
For example, the following command requires two parameters, which can be
either the pair param1 and param2, or the pair param3 and param4.
MyCommand {param1 param2} | {param3 param4}
In the next example, the command requires two parameters. The first parameter
can be either param1 or param2 and the second can be either param3 or param4:
MyCommand {param1 | param2} {param3 | param4}
In the next example, the command can accept either two or three parameters.
The first parameter must be param1. You can optionally include param2 as the
second parameter. And the last parameter is either param3 or param4.
MyCommand param1 [param2] {param3 | param4}
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Preface xv
|
Connecting with TIBCO Resources
How to Join TIBCO Community
TIBCO Community is an online destination for TIBCO customers, partners, and
resident experts. It is a place to share and access the collective experience of the
TIBCO community. TIBCO Community offers forums, blogs, and access to a
variety of resources. To register, go to the following web address:
https://community.tibco.com
How to Access TIBCO Documentation
You can access TIBCO documentation here:
https://docs.tibco.com
How to Contact TIBCO Support
For comments or problems with this manual or the software it addresses, contact
TIBCO Support as follows:
•
For an overview of TIBCO Support, and information about getting started
with TIBCO Support, visit this site:
http://www.tibco.com/services/support
•
If you already have a valid maintenance or support contract, visit this site:
https://support.tibco.com
Entry to this site requires a user name and password. If you do not have a user
name, you can request one.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
xvi
| Connecting with TIBCO Resources
TIBCO iProcess Engine (Oracle) Administrator’s Guide
|1
Chapter 1
The TIBCO iProcess Engine Node
This chapter describes the table that is used to store information about the TIBCO
iProcess Engine node.
Topics
•
Table Relationships, page 2
•
nodes, page 3
TIBCO iProcess Engine (Oracle) Administrator’s Guide
2
| Table Relationships
Table Relationships
The following diagram shows how the nodes table is related to other tables in the
schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
proc_index
list_names
dbs_names
tsys_role_users
user_attrib
nodes
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
tsys_list_names
tsys_dbs_names
role_users
user_names
ttmp_list_names
|3
nodes
The nodes table holds information about this iProcess Engine node. A node is a
single logical iProcess Engine, which may be installed either on a single computer,
or spread over several using a node cluster architecture).
Structure
The nodes table has the following structure:
TABLE nodes(
node_id
node_name
dir_name
mail_addr
mail_cert
mail_type
node_public
node_slave
node_deleted
rpc_majvers
rpc_minvers
server_majvers
server_minvers
number(5)
varchar2(24)
varchar2(28)
varchar2(149)
varchar2(31)
number(5)
number(1)
number(1)
number(1)
number(3)
number(3)
number(3)
number(3)
Column
Description
node_id
Unique ID of this iProcess node.
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL)
Note: This value is always 1.
node_name
Logical name for this node.
dir_name
Name of the directory which holds the node's data (SWDIR).
mail_addr
Not used. Reserved for possible future use.
mail_cert
Not used. Reserved for possible future use.
mail_type
Not used. Reserved for possible future use.
node_public
Not used. Reserved for possible future use.
node_slave
Not used. Reserved for possible future use.
node_deleted
Not used. Reserved for possible future use.
rpc_majvers
Not used. Reserved for possible future use.
rpc_minvers
Not used. Reserved for possible future use.
server_majvers
Not used. Reserved for possible future use.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
4
| nodes
Primary Key
Column
Description
server_minvers
Not used. Reserved for possible future use.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_nodes
node_id
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The nodes table contains one row, which is the entry for the iProcess Engine.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
never.
updated
never.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
|5
Chapter 2
Process Sentinels
This chapter describes the tables that are used to store information used by the
Process Sentinels.
Topics
•
Table Relationships, page 6
•
node_cluster, page 7
•
process_config, page 9
•
process_event_log, page 12
•
process_attributes, page 14
•
running_processes, page 17
•
active_logins, page 19
•
checksums, page 21
TIBCO iProcess Engine (Oracle) Administrator’s Guide
6
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
eai_registry
process_event_log
process_attributes
node_cluster
running_processes
process_config
active_logins
checksums
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
|7
node_cluster
The node_cluster table defines the server computers that make up this iProcess
Engine node.
Structure
The node_cluster table has the following structure:
TABLE node_cluster(
logical_machine_id
number(5)
physical_machine_namevarchar2(256)
master
number(1)
check_error_files
number(1)
machine_comment
varchar2(256)
Primary Key
Unique Key
Foreign Keys
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
logical_machine_id
Unique ID for this server.
physical_machine_name
If a UNIX server, the name of this server (as returned
by the UNIX uname command). If a Windows server,
then the name of this server or the Microsoft
Windows cluster network name.
master
Flag that defines whether this computer is acting as
the master server (1) or, if a node-cluster architecture
is being used, as a slave server (0).
check_error_files
Flag that defines whether the Process Sentinels on
this server check (1) or do not check (0) for the
creation of SWDIR\logs\sw_error and sw_warn
files.
machine_comment
Descriptive comment describing this server.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_node_cluster
logical_machine_id
TINYINDEXSPACE
The following unique key is defined for this table.
Key Name
Column(s)
Index Tablespace
unq_node_cluster
physical_machine_name
TINYINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
8
| node_cluster
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The node_cluster table contains one row for each server computer that is part of
the iProcess Engine node.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new server is added to the node, either at installation or by using the
SWDIR\util\swadm utility.
updated
a server’s details are updated, using the SWDIR\util\swadm utility.
deleted
a server is removed from the node, using the SWDIR\util\swadm
utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
|9
process_config
The process_config table stores information about each process instance that is
defined on the system.
Multiple instances of each server process can be used to optimize iProcess Engine
efficiency - for example, to increase the processing capability on one server, or to
spread the processing load across multiple servers.
Structure
The process_config table has the following structure:
TABLE process_config(
logical_machine_id
number(5)
logical_process_name varchar2(10)
logical_process_instancenumber(5)
enabled
number(1)
persistent
number(1)
last_known_status
varchar2(20)
status_comment
varchar2(255)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
logical_machine_id
ID of the server where this process instance runs, as
defined in the node_cluster table.
logical_process_name
Logical name of this process instance.
Note: See "Administering iProcess Engine Server
Processes" in TIBCO iProcess Engine Administrator's
Guide for a list of logical process names.
logical_process_instance
Unique ID for this process instance.
enabled
Flag that defines whether this process instance
starts automatically (1) when the iProcess Engine
starts, or whether it must be started manually (0).
persistent
Flag that defines whether this process instance is
automatically restarted (1) or not (0) when the
iProcess Engine is shut down and restarted.
Note: Any row in which the persistent value is 0 is
deleted when the iProcess Engine starts up.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
10
| process_config
Column
Description
last_known_status
Last known status of this process instance, as
reported to the Process Sentinels by the process.
Either: STARTING, RUNNING, PAUSED,
SUSPENDED, SHUTTING DOWN or STOPPED.
Note: The process_event_log table provides an
audit trail of changes to the status of a process
instance.
status_comment
Primary Key
Foreign Keys
Brief explanation of the last_known_status, as
reported to the Process Sentinels by the process.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_process_config
logical_machine_id
logical_process_name
logical_process_instan
ce
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_process_config1
logical_machine_id
node_cluster
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_process_config_fk
logical_machine_id
SMALLINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 11
Table Activity
The process_config table contains one row for each instance of each server
process defined on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new process instance is added, either at installation or by using the
SWDIR\util\swadm, SWDIR\util\swsvrmgr utilities or the
iProcess Server Manager.
updated
a process instance’s settings or status are updated, either by system
activity, or by using the SWDIR\util\swadm,
SWDIR\util\swsvrmgr utilities or the iProcess Server Manager.
deleted
a process instance is deleted, either at installation or by using the
SWDIR\util\swadm, SWDIR\util\swsvrmgr utilities or the
iProcess Server Manager.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
12
| process_event_log
process_event_log
The process_event_log table logs all changes in the status of server process
instances.
Structure
The process_event_log table has the following structure:
TABLE process_event_log (
logical_machine_id
number(5)
logical_process_name varchar2(10)
logical_process_instancenumber(5)
process_id
number(10)
process_status
number(5)
process_status_commentvarchar2(255)
timestamp
date
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NOT NULL)
Column
Description
logical_machine_id
ID of the server where the process instance that this
event applies to is running, as defined in the
node_cluster table.
logical_process_name
Logical name of the process that this event applies to.
Note: See "Administering iProcess Engine Server
Processe" in TIBCO iProcess Engine Administrator's
Guide for a list of logical process names.
logical_process_
instance
ID of the process instance that this event applies to,
as defined in the process_config table.
process_id
Process ID (PID) of the process instance that this
event applies to.
process_status
Status change event that occurred for the specified
process instance. One of the following:
•
3000
- process instance started.
•
3001
- process instance stopping.
•
3002
- process instance stopped.
•
3003
- process instance died.
•
3004
- process instance paused.
•
3005
- process instance unpaused.
process_status_comment
Description of the process_status entry, as
reported to the Process Sentinels by the process.
timestamp
Date and time that this event occurred.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 13
Primary Key
None.
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The process_event_log table contains one row for each status change event that
has occurred to each instance of a server process.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a process starts, receives a shutdown command, or shuts down.
updated
never.
deleted
never.
Note: Because rows are never deleted automatically, TIBCO
recommend that you regularly monitor the size of this table and
delete or archive rows manually if you need to.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
14
| process_attributes
process_attributes
The process_attributes table stores process attribute definitions, which
provide configuration information for iProcess Engine server processes.
Structure
The process_attributes table is structured as follows:
TABLE process_attributes (
logical_machine_id
number(5)
NOT NULL,
logical_process_name varchar2(10)
NOT NULL,
logical_process_instance number(5)
NOT NULL,
attribute_name
attribute_value
attribute_type
NOT NULL,
NOT NULL,
NOT NULL)
varchar2(50)
varchar2(1024)
varchar2(2)
Column
Description
logical_machine_id
ID of the server where the process instance that this
attribute applies to is running, as defined in the
node_cluster table.
A value of 0 means that this attribute applies to all
servers that are part of this node.
logical_process_name
Logical name of the process that this attribute applies
to.
A value of ALL means that this attribute applies to all
processes on the indicated server.
Note: See "Administering iProcess Engine Server
Processes" in TIBCO iProcess Engine Administrator's
Guide for a list of logical process names.
logical_process_
instance
ID of the process instance that this attribute applies to,
as defined in the process_config table.
A value of 0 means that this attribute applies to all
instances of the indicated process.
attribute_name
Name of this process attribute.
Note: See "Administering Process Attributes" in
TIBCO iProcess Engine Administrator's Guide for a list of
the available process attributes.
attribute_values
Value of this process attribute.
Note: See "Administering Process Attributes" in
TIBCO iProcess Engine Administrator's Guide for a list of
the valid values for each process attributes.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 15
Column
Description
attribute_type
Type of this process attribute: either I (Integer), C
(Character) or S (String).
Note: All attribute_values are stored as strings in
this table. This value determines how the value is
returned to the SWDIR\bin\swadm interface.
Primary Key
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_process_
attributes
logical_machine_id
logical_process_name
logical_process_insta
nce
attribute_name
SMALLINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The process_attribute table contains one row for each unique definition of a
process attribute on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new process attribute definition is added, either at installation or
by using the SWDIR\util\swadm utility.
updated
a process attribute definition is updated, using the
SWDIR\util\swadm utility.
deleted
a process attribute definition is deleted, using the
SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
16
| process_attributes
This table can contain orphan rows in which data can exist that does not apply to
any process currently being used.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 17
running_processes
The running_processes table stores information about each process instance
that is currently running on the system.
Structure
The running_processes table has the following structure:
TABLE running_processes (
logical_machine_id
number(5)
logical_process_name varchar2(10)
logical_process_instancenumber(5)
process_id
number(10)
port_number
number(5)
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
logical_machine_id
ID of the server where this process instance is
running, as defined in the node_cluster table.
logical_process_name
Logical name of this process instance.
Note: See "Administering iProcess Engine Server
Processes" in TIBCO iProcess Engine Administrator's
Guide for a list of logical process names.
logical_process_instanc
e
ID of this process instance, as defined in the
process_config table.
process_id
Process ID (PID) of this process instance.
port_number
Port number that this process instance is running on.
Primary Key
None.
Foreign Keys
None.
Indexes
None.
The following index is defined for this table.
Index Name
Column(s) Indexed
logical_machine_id
logical_process_name
logical_process_instance
TIBCO iProcess Engine (Oracle) Administrator’s Guide
18
| running_processes
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The running_processes table contains one row for each instance of an iProcess
Engine server process that is currently running on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new process instance is started.
updated
a process instance is restarted (process_id and port_number are
updated).
deleted
a process instance is stopped.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 19
active_logins
The active_logins table stores details of all users who are currently logged in to
this iProcess Engine node.
Structure
The active_logins table has the following structure:
TABLE active_logins(
logical_machine_id
number(5)
logical_process_name varchar2(10)
logical_process_instancenumber(5)
user_name
varchar2(64)
user_id
varchar2(37)
process_id
number(10)
filsh
number(5)
windows
number(2)
station_id
varchar2(32)
Primary Key
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
logical_machine_id
ID of the server where the process that made the login
request is running, as defined in the node_cluster table.
logical_process_na
me
Logical name of this process instance.
logical_process_
instance
ID of this process instance, as defined in the process_config
table.
user_name
Name of the user who is logged in, as defined in the
user_names table.
user_id
ID of the user who made the login request (for internal use
only).
process_id
Process ID (PID) of the process that made the login request.
filsh
FIL session handle (for internal use only).
windows
Flag that defines whether the login request came from
TIBCO iProcess Objects (0) or from an TIBCO iProcess®
Workspace or other SAL application (1).
station_id
Comment that identifies where a user is logged in.
Note: See "Administering iProcess Engine Server
Processes" in TIBCO iProcess Engine Administrator's Guide
for a list of logical process names.
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
20
| active_logins
Foreign Keys
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_active_logins1
logical_machine_id
node_cluster
1. This key enforces the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_active_
logins_fk
logical_machine_id
SMALLINDEXSPACE
idx_active_logins
user_id
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The active_logins table contains one row for each user who is currently logged
into this iProcess Engine node.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a user is logged in.
updated
never.
deleted
a user is logged out or the iProcess Engine shuts down.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 21
checksums
The checksums table is used internally by the iProcess Enginee to provide
security checks on the active_logins and port_range tables.
Structure
The checksums table has the following structure:
TABLE checksums (
area_id
area_name
check_sum
Primary Key
number(5)
varchar2(20)
varchar2(54)
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
area_id
Unique ID of the area using this checksum
area_name
Name of the area using this checksum. Currently this is
always PORT RANGING.
check_sum
Encrypted checksum for the indicated area.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_checksums
area_id
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
22
| checksums
Table Activity
The checksums table contains one row for each checksum used internally bythe
iProcess Engine.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
the iProcess Engine is started.
updated
a login is performed.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 23
Chapter 3
Mbox Sets and Message Queues
This chapter describes the tables that are used to control the behavior of the
message queueing system.
It also describes the Oracle AQ Queue Tables and Queues which provide the
underlying message queuing system used by the iProcess message queues.
Topics
•
Table Relationships, page 24
•
iql_queues, page 25
•
mbox_set, page 28
•
mbox_set_group, page 30
•
Oracle AQ Queue Tables and Queues, page 32
TIBCO iProcess Engine (Oracle) Administrator’s Guide
24
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
AQ queue tables
mbox_set
mbox_set_group
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
iql_queues
| 25
iql_queues
The iql_queues table defines each message queue that is available on this
iProcess Engine node.
Structure
The iql_queues table has the following structure:
TABLE iql_tables (
queue_id
queue_name
queue_type
queue_phys_descr
number(5)
varchar2(24)
number(2)
varchar2(100)
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL)
Column
Description
queue_id
Unique identifier for this message queue.
queue_name
Name of this message queue.
queue_type
Message type used by this message queue. This value is
always 1, for local messages.
queue_phys_descr
ID of the Oracle AQ queue that is used to hold this message
queue. See:
Format of the Oracle AQ QueueID on page 25 for a
description of the format used for this value.
Oracle AQ Queue Tables and Queues on page 32 for more
information about the required structure of AQ queue
tables and queues, and how to create them.
Format of the Oracle AQ QueueID
The ID of the Oracle AQ queue that is used to hold this message queue (in the
queue_phys_descr column) is specified using the following format:
0001:[instance]:queue_table:queue
where:
•
0001
•
instance is the Oracle Service Name of the Oracle instance that holds the AQ
queue. If this is blank, the default local instance is assumed.
•
queue_table is the name of the AQ queue table that holds the AQ queue.
•
queue is the name of the AQ queue used to hold this message queue.
indicates that the remainder of the string uses Oracle AQ format.
For example, the entry:
TIBCO iProcess Engine (Oracle) Administrator’s Guide
26
| iql_queues
0001::bgmboxtable1:bgmboxqueue1
describes the AQ queue called bgmboxqueue1 contained in queue table
bgmboxtable1 on the default Oracle instance.
Default Message Queues and AQ Tables
When the iProcess Engine is installed, the init2Kora.sql (on UNIX, or on
Windows init2Kora_tok.sql) script creates the following default set of message
queues and AQ queue tables required by the system.
Primary Key
Queue Name
Oracle AQ Queue ID
BGMBOX1
0001::bgmboxtable1:bgmboxqueue1
BGMBOX2
0001::bgmboxtable2:bgmboxqueue2
WISMBOX1
0001::wismboxtable1:wismboxqueue1
WISMBOX2
0001::wismboxtable2:wismboxqueue2
PREDICTMBOX1
0001::predictmboxtable1:predictmboxqueue1
PREDICTMBOX2
0001::predictmboxtable2:predictmboxqueue2
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_iql_queues
queue_id
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 27
Table Activity
The iql_queues table contains one row for each message queue that is available
on this node.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new message queue is added to the node, either at installation or
by using the SWDIR\util\swadm utility.
updated
a message queue’s details are updated, using the
SWDIR\util\swadm utility.
deleted
a message queue is deleted from the node, using the
SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
28
| mbox_set
mbox_set
The mbox_set table defines the list of Mbox sets that are available on this iProcess
Engine node.
Structure
The mbox_set table has the following structure:
TABLE mbox_set (
mbox_set_id
mbox_set_name
mbox_set_msgtype
number(5)
varchar2(32)
NOT NULL,
NOT NULL,
number(2)
NOT NULL)
Each row provides the following information about a Mbox set.
Column
Description
mbox_set_id
Unique identifier for this Mbox set.
mbox_set_name
Name of this Mbox set.
mbox_set_msgtype
Message type used by this Mbox set. This value is always
1, for local messages.
Default Mbox Sets and Message Queues
When the iProcess Engine is installed, the init2Kora.sql (on UNIX, or on
Windows init2Kora_tok.sql) script creates the following default Mbox sets
that are required by the system. (The mbox_set_group table defines which
message queues are stored in which Mbox set.)
Primary Key
Foreign Keys
Mbox Set
Contains these message queues
BGMBSET
BGMBOX1, BGMBOX2
WMDMBSET
WISMBOX1, WISMBOX2
PREDICTMBSET
PREDICTMBOX1, PREDICTMBOX2
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_mbox_set
mbox_set_id
TINYINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 29
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The mbox_set table contains one row for each Mbox set that is available on this
iProcess Engine node.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new Mbox set is added to the node, either at installation or by
using the SWDIR\util\swadm utility.
updated
an Mbox set’s details are updated, using the SWDIR\util\swadm
utility.
deleted
an Mbox set is deleted from the node, using the
SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
30
| mbox_set_group
mbox_set_group
The mbox_set_group table defines the list of individual message queues that are
stored in each Mbox set.
Structure
The mbox_set_group table has the following structure:
TABLE mbox_set_group (
mbox_set_id
mbox_queue_id
Primary Key
Foreign Keys
NOT NULL,
number(5)
NOT NULL)
Column
Description
mbox_set_id
Unique identifier of the Mbox set that contains the
associated message queue, as defined in the mbox_set
table.
mbox_queue_id
Unique identifier of the message queue that is included in
the associated Mbox set, as defined in the iql_queues table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_mbox_set_group
mbox_set_id
mbox_queue_id
TINYINDEXSPACE
The following foreign keys are defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_mbox_set_id1
mbox_set_id
mbox_set
fk_mbox_queue_id
queue_id
iql_queues
1. This key enforces the DELETE
Indexes
number(5)
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Indexed Column(s)
Tablespace
idx_mbox_set_id_fk
mbox_set_id
TINYINDEXSPACE
idx_mbox_queue_id_fk
mbox_queue_id
TINYINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 31
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The mbox_set_group table contains one row for each message queue that is
available on this node.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new message queue is added to the node, either at installation or
by using the SWDIR\util\swadm utility.
updated
never.
deleted
a message queue is deleted from the node, using the
SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
32
| Oracle AQ Queue Tables and Queues
Oracle AQ Queue Tables and Queues
Oracle Advanced Queuing (AQ) provides the underlying message queuing
system used by the iProcess message queues. Each message queue defined in the
iql_queues table must be mapped to an AQ queue, which in turn must be stored
in an AQ table.
When the iProcess Engine is installed, the init2Kora.sql script (on UNIX, or on
Windows init2Kora_tok.sql) creates the default set of AQ tables, queues and
object types required by the system (see Default Message Queues and AQ Tables
on page 26.)
The init2Kora.sql script (on UNIX, or on Windows init2Kora_tok.sql) also
creates a non-persistent Oracle AQ queue called sw_system_events. This queue
is used to route all iProcess events to the iProcess event manager. (iProcess event
management is provided by the Oracle Event Manager on UNIX, and by the
iProcess Events COM+ application on Windows.)
If you subsequently decide to add additional message queues, you must use the
Oracle DBMS_AQADM package to manually create the Oracle AQ queue tables and
queues needed by those message queues. The following sections explain how to
do this.
For a detailed description of the DBMS_AQADM package procedures referred to in
this section, see the Oracle9i Supplied PL/SQL Packages and Types Reference guide in
your Oracle documentation set.
SWLOCALMSG Object Type
An AQ queue table must be associated with one particular message type, which
must already exist when you create the AQ queue table.
All AQ queue tables used by the iProcess Engine must use the SWLOCALMSG object
type, which is created when the iProcess Engine is installed.
CREATE TYPE TABLE_OWNER.SWLOCALMSG AS OBJECT (
msginfo
VARCHAR2(500),
node
varchar2(24),
contenttype
number(2),
data
VARCHAR2(1000)
);
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 33
AQ Queue Tables
Use the DBMS_AQADM.CREATE_QUEUE_TABLE procedure to create an AQ queue
table. The following parameters are required.
Column
Description
queue_table
Unique name of this queue table.
This name is used in the queue_phys_descr column
of the iql_queues table.
queue_payload_type
Object type of data stored by this queue table. This value
must be swlocalmsg.
storage_clause
Tablespace to be used by this queue table.
Note: Each queue table can be associated with a different
tablespace, which in turn can be associated with a
different datafile. Distributing queue tables in this way
provides an easy way of reducing I/O contention and
optimizing performance. See Appendix B on page 259
for more information.
sort_list
Sort criteria by which messages are sorted in ascending
order and dequeued based on this order.
comment
Description of this queue table.
compatible
Lowest database version that this queue table is
compatible with. This value must be 8.1.
The following example, from the init2Kora.sql script, shows the SQL used to
create one of the default background Mbox tables that is created when the
iProcess Engine is installed.
DBMS_AQADM.CREATE_QUEUE_TABLE (
queue_table => 'TABLE_OWNER.bgmboxtable1',
queue_payload_type => 'TABLE_OWNER.swlocalmsg',
sort_list => ' priority, enq_time',
storage_clause => 'tablespace AQTABLESPACE',
comment => 'default background mbox',
compatible => ’8.1’);
TIBCO iProcess Engine (Oracle) Administrator’s Guide
34
| Oracle AQ Queue Tables and Queues
AQ Queues
To create an AQ queue and make it available to be used as an iProcess message
queue:
1. Use the DBMS_AQADM.CREATE_QUEUE procedure to create the AQ queue. The
following parameters are required.
Column
Description
queue_name
Unique name of this queue.
This name is used in the queue_phys_descr column of the
iql_queues table.
queue_table
Name of the queue table that holds this queue.
This name is used in the queue_phys_descr column of the
iql_queues table.
Note: Multiple queues can be stored in the same queue table.
retry_delay
Delay time, in seconds, before a message is scheduled for
processing again after an application rollback.
max_retries
Number of times that a dequeue with the REMOVE mode can be
attempted on a message.
The count is incremented when the application issues a
rollback after executing the dequeue. The message is moved to
the default exception queue when it is reaches its
max_retries.
The following example, from the init2Kora.sql script, shows the SQL used
to create one of the default background Mbox queues that is created when the
iProcess Engine is installed.
DBMS_AQADM.CREATE_QUEUE (queue_name => 'TABLE_OWNER.bgmboxqueue1',
'TABLE_OWNER.bgmboxtable1', retry_delay => 300, max_retries => 12);
queue_table =>
2. Use the DBMS_AQADM.START_QUEUE procedure to start the queue.
3. Use the DBMS_AQADM.GRANT_QUEUE_PRIVILEGE procedure to grant the
privileges on the queue. The following parameters are required.
Column
Description
privilege
The AQ queue privilege to grant. This value must be ALL
(which means both ENQUEUE and DEQUEUE).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 35
Column
Description
queue_name
Name of the queue.
grantee
Grantee. This value must be the name of the iProcess Oracle
Foreground user.
Note: The Oracle Foreground user is defined in the third entry
(after the second backslash character) on line 9 of the
SWDIR\etc\staffpms file. For example:
3\swpro\swuser\swpro\staffdb1\10\0
grant_option
Defines whether the access privilege is granted with the
GRANT option or not. This value must be false.
The following example, from the init2Kora.sql script, shows the SQL used
to grant the required privileges on one of the default background Mbox
queues that is created when the iProcess Engine is installed.
dbms_aqadm.grant_queue_privilege (privilege => 'all', queue_name =>
'TABLE_OWNER.bgmboxqueue1', grantee => 'FOREGROUND_USER', grant_option => false )
Example
Suppose that the volume of messages handled by your system has increased
significantly, and the default messages queues are no longer able to cope. To deal
with the additional load you have decided that you need to add a new BGMBOX3
message queue to the BGMBSET Mboxset. This queue requires a new
bgmboxqueue3 Oracle AQ queue and bgmboxtable3 queue table .
This example uses UNIX syntax.
To do this:
1. Use SQLPLUS to connect to the Oracle instance.
$ORACLE_HOME/bin/sqlplus
connect swpro/staffpro1;
2. Create an AQ queue table called bgmboxtable3.
EXECUTE DBMS_AQADM.CREATE_QUEUE_TABLE (queue_table => 'swpro.bgmboxtable3',
queue_payload_type => 'swpro.swlocalmsg', comment => '3rd background mbox', compatible =>
8.1);
TIBCO iProcess Engine (Oracle) Administrator’s Guide
36
| Oracle AQ Queue Tables and Queues
3. Create an AQ queue called bgmboxqueue3 in this queue table.
EXECUTE DBMS_AQADM.CREATE_QUEUE (queue_name => 'swpro.bgmboxqueue3',
'swpro.bgmboxtable3', retry_delay => 300, max_retries => 12);
queue_table =>
4. Start the bgmboxqueue3 queue.
EXECUTE DBMS_AQADM.START_QUEUE (queue_name => 'swpro.bgmboxqueue3');
5. Grant the required privileges on the bgmboxqueue3 queue.
EXECUTE dbms_aqadm.grant_queue_privilege (privilege => 'all',
'bgmboxqueue3', grantee => 'swuser', grant_option => false );
queue_name =>
6. Commit the changes, disconnect and exit.
commit;
disconnect;
exit;
7. Use the SWDIR\util\swadm utility to add a new message queue called
BGMBOX3, which uses the bgmboxqueue3 queue.
cd $SWDIR/util
swadm ADD_QUEUE BGMBOX3 Local 0001::bgmboxtable3:bgmboxqueue3
8. Add the BGMBOX3 queue to the BGMBSET Mbox set.
swadm ADD_QUEUE_TO_MBOXSET 1 8
1 is the number of the BGMBSET Mboxset (from the swadm SHOW_MBOXSETS
command) and 8 is the number of the message queue (from the swadm
SHOW_QUEUES command).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 37
Chapter 4
Sequence Numbers
This chapter describes sequence numbers - unique numbers that are used by TIBCO
iProcess Engine server processes, and the table that is used to generate them.
Topics
•
About Sequence Numbers, page 38
•
Table Relationships, page 40
•
sequences, page 41
TIBCO iProcess Engine (Oracle) Administrator’s Guide
38
| About Sequence Numbers
About Sequence Numbers
A sequence number is simply a unique identifier for an object. TIBCO iProcess
Engine uses six different types of sequence number, as shown in the following
table.
Sequence Number
Stored in table...
Unique identifier for a...
o_reqid
staffo
Work item
casenum
case_information
Case
proc_id
proc_index
Procedure
wait_id
wait
Outstanding Wait
def_id
cdqp_def
CDQP definition
cfg_id
cdqp_cfg
CDQP value
monitor_id
iap_monitor
Procedure that IAP is
monitoring
provider_id
eaiws_jms_provider*
JMS provider
destination_id
eaiws_jms_destinati
on*
JMS endpoints for for JMS
provider
*. Only created if TIBCO iProcess Technology Plugins are installed.
These sequence numbers are generated on an “as required” basis by iProcess
Engine, which calls one of the following stored database procedures:
•
sp_cdqp_cfg_sequence
•
sp_cdqp_def_sequence
•
sp_cnum_sequence
•
sp_procid_sequence
•
sp_reqid_sequence
•
sp_waitid_sequence
•
sp_iap_monitor_id_sequence
•
sp_eaiws_jms_provider_seq
•
sp_eaiws_jms_destination_seq
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 39
The procedure accesses the sequences table, increments the value of the seq_val
column for the appropriate row, identified by the seq_id column, and returns
that value. The returned value is then used as the next sequence number in the
appropriate table.
For more information about these stored procedures please see the database
creation script (init2Kora.sql on UNIX, init2Kora_tok.sql on Windows).
However, getting sequence numbers directly from the database in this way can
create a performance bottleneck, because while one process is requesting a
number it must block any other process from attempting to do so.
To minimize the effect of this bottleneck, you can assign a cache of a block of
sequence numbers to a process, by using process attributes. The process gets a
sequence number from its cache when it needs one, and only accesses the
database to refresh the cache when it has run out of numbers. For more
information, see "Sequence Caching" in TIBCO iProcess Engine Administrator's
Guide.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
40
| Table Relationships
Table Relationships
The sequences table has no database-enforced relationships, that is, foreign keys,
with other tables.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 41
sequences
The sequences table is used to generate unique sequence numbers for the use of
TIBCO iProcess Engine server processes.
Structure
The sequences table has the following structure:
TABLE sequences (
seq_id
seq_val
seq_name
number(5)
number(20)
varchar2(24)
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
seq_id
Sequence ID of the associated seq_val value. One of the
following values:
1
(o_reqid)
2
(casenum)
3
(proc_id)
4
(wait_id)
5
(def_id)
6
(cfg_id)
seq_val
Current sequence number value for the sequence defined by
seq_id.
seq_name
Name of the associated seq_id column. One of the following
values:
REQID
CNUM
PROC
WAIT
CDQP_DEF
CDQP
Note: This value is not currently used by the iProcess Suite.
Primary Key
None.
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
42
| sequences
The following clustered index is defined for this table.
Storage
Table Activity
Index Name
Column(s) Indexed
idx_sequence
seq_id
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
This table always contains 6 rows—one row for each type of sequence number
used by the iProcess Engine server processes. The table is populated when the
iProcess Engine is installed.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
never.
updated
when a new sequence number of that type is requested.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 43
Chapter 5
Procedures
This chapter describes the tables that are used to store information about iProcess
procedures, sub-procedures and sub-procedure parameter templates.
Topics
•
Table Relationships, page 44
•
proc_index, page 45
•
iap_monitor, page 49
•
iap_field, page 51
•
iap_activity, page 53
•
iap_global, page 55
•
proc_version, page 57
•
procedure_lock, page 60
•
proc_instance, page 62
•
proc_audit, page 65
•
proc_defn, page 68
•
proc_deadline, page 72
•
proc_event, page 75
•
wqd_delta_subscriptions, page 78
TIBCO iProcess Engine (Oracle) Administrator’s Guide
44
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
procedure_lock
proc_event
proc_deadline
case_information
proc_defn
proc_instance
proc_index
nodes
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
proc_audit
iap_activity
iap_global
iap_monitor
iap_field
| 45
proc_index
The proc_index table holds information that is specific to a procedure (or
sub-procedure or sub-procedure parameter template).
Data that can change between versions or instances of a procedure is not held in
this table. See the proc_version and proc_instance tables instead.
Structure
The proc_index table has the following structure:
TABLE proc_index (
node_id
proc_id
proc_used_count
proc_name
proc_desc
proc_owner
dir_name
proc_used
work_days
auto_purge
networked
cdesc_type
ignore_blanks
is_predict
normalise_data
delay_purge
delay_value
number(5)
number(5)
number(5)
varchar2(8)
varchar2(24)
varchar2(24)
varchar2(12)
number(1)
number(1)
number(1)
number(1)
number(1)
number(1)
number(1)
number(1)
number(1)
varchar(512)
NOT NULL,
NOT NULL,
NOT NULL,
,
,
,
,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
node_id
ID of the node that this procedure is defined on, as defined in
the nodes table.
proc_id
Unique ID of this procedure, generated from the sequences
table.
proc_used_count
Not used.
proc_name
Name of this procedure.
Note: Internal procedures are prefixed with a dollar sign ($)
character.
proc_desc
Description of this procedure.
proc_owner
Name of the owner of this procedure, as defined in the
user_names table.
dir_name
Not used.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
46
| proc_index
Column
Description
proc_used
Flag that defines whether this record is currently free (0) or
being used (1).
work_days
Flag that defines whether the procedure uses a 7-day week (0)
or a configurable working week (1) in date calculations.
auto_purge
Flag that defines whether (1) or not (0) cases of this procedure
are automatically purged when they are closed.
networked
Reserved for possible future use.
cdesc_type
Flag that defines whether a case description is Required (0),
Optional (1) or Hidden (2) when a case of this procedure is
started.
ignore_blanks
Flag that defines whether or not a blank field is treated as an
error when used as an addressee for a step of this procedure:
•
0 means that the field is treated as an error and the
step is delivered to the undelivered queue.
•
1
means that the field is not treated as an error.
is_predict
Flag that defines whether (1) or not (0) case prediction is
enabled for this procedure.
normalise_data
Flag that defines whether (1) or not (0) case data normalization
is enabled for this procedure.
delay_purge
Flag that defines whether or not to delay the auto-purge
operation.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
•
0 means that the auto-purge operation is not
delayed.
•
1
means that the auto-purge operation is delayed.
| 47
Column
Description
delay_value
The value of the delay_value column is:
•
If the value of the delay_purge column is 0, then the
value of the delay_value column is NULL.
•
If the value of the delay_purge column is 1, then the
value of the delay_value column is specified in one
of the following ways:
— The period of the delay in days.
— Delayed date and time expressions:
date expression^time expression
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_proc_index
proc_id
node_id
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_index1
node_id
nodes
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_proc_index_fk
node_id
SMALLINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
48
| proc_index
Table Activity
The proc_index table contains one row for each procedure defined on the
system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new procedure is created.
updated
a procedure’s details are updated.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 49
iap_monitor
The iap_monitor table holds the monitor ID records for each procedure and
node. If a procedure or node has any activity monitoring configured, it is assigned
a monitor ID. The monitor ID is then used when correlating between the
iap_activity and iap_field tables.
Structure
The iap_monitor table has the following structure:
TABLE iap_monitor(
node_id
proc_id
monitor_id
Primary Key
Foreign Keys
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
node_id
ID of the node that this procedure is defined on, as defined in
the nodes table.
proc_id
Unique ID of this procedure, generated from the sequences
table.
monitor_id
Unique ID of the record for the procedure or node being
monitored.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_iap_monitor
monitor_id
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_iap_monitor1
proc_id
node_id
proc_index
nodes
1. This key enforces the DELETE
Indexes
number(5)
number(5)
numberic(10)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
idx_iap_monitor_fk
proc_id
node_id
TIBCO iProcess Engine (Oracle) Administrator’s Guide
50
| iap_monitor
The following index is defined for this table.
Storage
Table Activity
Index Name
Column(s) Indexed
Tablespace
idx_iap_monitor_fk
node_id
SMALLINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The iap_monitor table contains one row for each procedure or node that has
activity monitoring configured for it. Rows are added, updated and deleted in the
following situations.
A row is...
When...
added
a new procedure or node has activity monitoring configured.
updated
a procedure or node’s activity monitoring configuration is updated.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 51
iap_field
The iap_field table holds the list of fields that will be published for a given
monitor ID.
Structure
The iap_field table has the following structure:
TABLE iap_field (
monitor_id
field_name
Primary Key
Foreign Keys
Storage
NOT NULL,
NOT NULL)
Column
Description
monitor_id
Unique ID of the record for the procedure or node being
monitored, as defined in the iap_monitor table.
field_name
The name of the iProcess Engine field for which data is to be
sent out with the activity event.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_iap_field
monitor_id
field_name
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_iap_field1
monitor_id
iap_monitor
1. This key enforces the DELETE
Indexes
number(10)
varchar2(31)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_iap_field_fk
monitor_id
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
52
| iap_field
Table Activity
Value
Definition
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The iap_field table contains one row for each field that will be published for
every activity. Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new field is created.
updated
a field’s details are updated.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 53
iap_activity
The iap_activity table holds the activity and steps which are configured for a
given monitor record.
Structure
The iap_activity table has the following structure:
TABLE iap_activity(
monitor_id
activity_id
step_name
Primary Key
Foreign Keys
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
monitor_id
Unique ID of the record for the procedure or node being
monitored, as defined in the iap_monitor table.
activity_id
Unique ID which represents the activity that is being
monitored on the specified iProcess Engine procedure or step.
step_name
The name of the step in the procedure to be monitored. If the
step name is $ALL$, it means every step in the procedure.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_iap_activity
monitor_id
activity_id
step_name
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_iap_activity1
monitor_id
iap_monitor
1. This key enforces the DELETE
Indexes
number(10)
number(3)
varchar2(8)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
idx_iap_activity_fk
proc_id
node_id
TIBCO iProcess Engine (Oracle) Administrator’s Guide
54
| iap_activity
The following index is defined for this table.
Storage
Table Activity
Index Name
Column(s) Indexed
Tablespace
idx_iap_activity_fk
proc_id
node_id
SMALLINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The iap_activity table contains one row for each activity that is being
monitored on a procedure or node. Rows are added, updated and deleted in the
following situations.
A row is...
When...
added
a new activity to be monitored has been configured for a procedure
or node.
updated
an activity’s details have been updated for a procedure or node.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 55
iap_global
The iap_global table holds the fields that have been allocated globally to the
specified procedure.
Structure
The iap_global table has the following structure:
TABLE iap_global(
node_id
proc_id
field_name
Primary Key
Foreign Keys
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
node_id
ID of the node that this procedure is stored on, as defined in
the nodes table.
proc_id
Unique ID of this procedure, generated from the sequences
table.
field_name
The name of the iProcess Engine field for which data is to be
sent out with the activity event.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_iap_global
proc_id
node_id
field_name
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_iap_global1
proc_id
node_id
proc_index
nodes
1. This key enforces the DELETE
Indexes
number(5)
number(5)
varchar2(31)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_iap_global_fk
proc_id
node_id
SMALLINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
56
| iap_global
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The iap_global table contains one row for each field that has been allocated
globally to the specified procedure. Rows are added, updated and deleted in the
following situations.
A row is...
When...
added
a new global field has been allocated to the specified procedure.
updated
a global field’s details have been updated.
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 57
proc_version
The proc_version table holds information that is specific to a version of a
procedure (or sub-procedure or sub-procedure parameter template).
Data that is specific to a procedure or to an instance of a procedure is not held in
this table. See the proc_index and proc_instance tables instead.
Structure
The proc_version table has the following structure:
TABLE proc_version(
node_id
proc_id
major_vers
minor_vers
pd_version
pv_status
pv_user
pv_comment
pv_created
pv_modified
pv_released
pv_withdrawn
pv_is_subproc
number(5)
number(5)
NOT NULL,
NOT NULL,
number(5)
number(5)
number(7)
number(2)
varchar2(49)
varchar2(128)
date
date
date
date
number(1)
NOT NULL,
NOT NULL,
,
,
,
NULL,
,
,
,
,
)
Column
Description
node_id
ID of the node that this procedure is stored on, as defined
in the nodes table.
proc_id
Procedure number of the procedure associated with this
version, as defined in the proc_index table.
major_vers
Major version number of this version.
minor_vers
Minor version number of this version.
pd_version
Instance number of the procedure definition that
corresponds to this version, as defined in the proc_instance
table.
pv_status
Status of this version. Either: Released (0), Incomplete (1),
Unreleased (2), Model (3) or Withdrawn (14).
pv_user
Name of the user who created this version, as defined in
the user_names table.
pv_comment
Comment describing this version.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
58
| proc_version
Primary Key
Foreign Keys
Column
Description
pv_created
Date and time that this version was created.
pv_modified
Date and time that this version was last modified.
pv_released
Date and time that this version was released.
pv_withdrawn
Date and time that this version was withdrawn.
pv_is_subproc
Flag that defines whether (1) or not (0) this version is a
sub-procedure.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_proc_version
node_id
proc_id
major_vers
minor_vers
BIGINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_version1
node_id
proc_id
proc_index
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_proc_version_fk
node_id
proc_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 59
Table Activity
The proc_version table contains one row for every version of every procedure
(or sub-procedure or sub-procedure parameter template) defined on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new procedure or version is created.
updated
a version’s details are updated.
deleted
a procedure or version is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
60
| procedure_lock
procedure_lock
The procedure_lock table holds the locks that are used to control access to
procedures.
Structure
The procedure_lock table has the following structure:
TABLE procedure_lock (
node_id
proc_id
lock_state
lock_owner
lock_date
lock_reason
Primary Key
number(5)
number(5)
number(1)
varchar2(24)
date
number(1)
NOT
NOT
NOT
,
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this procedure is defined on, as defined
in the nodes table.
proc_id
ID of this procedure, as defined in the proc_index table.
lock_state
Flag that defines the procedure state: either unlocked (0) or
locked (1).
lock_owner
Name of the user who has the procedure definition locked
(if lock_state = 1), as defined in the user_names table.
lock_date
Date and time when the procedure lock was created.
lock_reason
Defines why the procedure is locked:
•
0
not locked.
•
1
locked by the TIBCO iProcess Modeler.
•
2
locked by SWDIR\bin\swutil
IMPORT.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_procedure_lock
proc_id
node_id
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 61
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The procedure_lock table contains one row for each procedure on the system
that is currently being edited.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a procedure is opened (for example, in the iProcess Modeler).
updated
Never.
deleted
a procedure is closed (for example, in the iProcess Modeler).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
62
| proc_instance
proc_instance
The proc_instance table holds information that is specific to an instance of a
version of a procedure (or sub-procedure or sub-procedure parameter template).
Data that is specific to a procedure or to a version of a procedure is not held in this
table. See the proc_index and proc_version tables instead.
Structure
The proc_instance table has the following structure:
TABLE proc_instance(
node_id
proc_id
major_vers
minor_vers
pd_version
pi_first_step
pi_rpa_start
pi_rpa_admin
pi_has_eis_objs
pi_has_subprocs
number(5)
number(5)
number(5)
number(5)
number(7)
varchar2(8)
number(1)
number(1)
number(1)
number(1)
NOT
NOT
NOT
NOT
NOT
,
,
,
,
)
NULL,
NULL,
NULL,
NULL,
NULL,
Column
Description
node_id
ID of the node that this instance is stored on, as defined in
the nodes table.
proc_id
Procedure number of the procedure associated with this
instance, as defined in the proc_index table.
major_vers
Major version number of the version associated with this
instance, as defined in the proc_version table.
minor_vers
Minor version number of the version associated with this
instance, as defined in the proc_version table.
pd_version
Instance number of this procedure definition.
pi_first_step
Start step for this instance of the procedure.
pi_rpa_start
Flag that defines whether (1) or not (0) Remote Procedure
Access (RPA) case start restrictions are set in the procedure
definition.
pi_rpa_admin
Flag that defines whether (1) or not (0) Remote Procedure
Access (RPA) administration restrictions are set in the
procedure definition.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 63
Primary Key
Foreign Keys
Column
Description
pi_has_eis_objs
Flag that defines whether (1) or not (0) the procedure
definition contains EIS objects.
pi_has_subprocs
Flag that defines whether (1) or not (0) the procedure
definition contains sub-procedure steps or graft steps.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_proc_instance
node_id
proc_id
pd_version
BIGINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_instance1
node_id
proc_id
proc_index
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_proc_instance_fk
node_id
proc_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
64
| proc_instance
Table Activity
The proc_instance table contains one row for each instance of each procedure
(or sub-procedure or sub-procedure parameter template) defined on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new procedure or version is created, or when an existing
procedure definition is edited.
updated
never.
deleted
a procedure or version is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 65
proc_audit
The proc_audit table stores audit events for a version of a procedure (or
sub-procedure or sub-procedure parameter template). An audit event occurs
whenever:
Structure
•
a version is created, updated, released or withdrawn,
•
the procedure definition instance associated with the version is updated. (For
example, when a user makes changes to the procedure definition in the
iProcess Modeler but does not change the version number).
The proc_audit table has the following structure:
TABLE proc_audit(
node_id
proc_id
major_vers
minor_vers
pd_version
pa_comment
pa_event
pa_date
pa_user
number(5)
number(5)
number(5)
number(5)
number(7)
varchar2(128)
number(5)
date
varchar2(24)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
,
NULL,
,
,
)
Column
Description
node_id
ID of the node that this audit event is stored on, as defined
in the nodes table.
proc_id
Procedure number of the procedure associated with this
audit event, as defined in the proc_index table.
major_vers
Major version number of the version associated with this
audit event, as defined in the proc_version table.
minor_vers
Minor version number of the version associated with this
audit event, as defined in the proc_version table.
pd_version
Instance number of the procedure definition associated
with this audit event, as defined in the proc_instance table.
pa_comment
Comment describing the audit event.
pa_event
The audit event that occurred. Either: Created (0), Updated
(1), Released (2) or Withdrawn (3).
pa_date
Date and time that the audit event occurred.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
66
| proc_audit
Primary Key
Foreign Keys
Column
Description
pa_user
Name of the user who performed the audit event, as
defined in the user_names table.
None.
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_audit1
node_id
proc_id
pd_version
proc_instance
1. This key enforces the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_proc_audit_fk
node_id
proc_id
pd_version
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGTABLESPACE
The proc_audit table contains one row for every audit event for every version of
every procedure (or sub-procedure or sub-procedure parameter template)
defined on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a version is created, updated, released or withdrawn.
updated
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 67
A row is...
When...
deleted
a procedure or version is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
68
| proc_defn
proc_defn
The proc_defn table holds procedure definitions.
Structure
The proc_defn table has the following structure:
TABLE proc_defn (
node_id
proc_id
pd_version
pd_type
pd_index
pd_size
pd_directory
pd_file
pd_data
number(5)
number(5)
number(5)
number(1)
number(10)
number(10)
varchar2(25)
varchar2(25)
blob
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this procedure definition is defined on, as
defined in the nodes table.
proc_id
ID of the procedure that this procedure definition relates to, as
defined in the proc_index table.
pd_version
ID of the procedure instance that this row relates to, as defined
in the proc_instance table.
pd_type
Type of procedure definition data stored in this row. Either:
TIBCO iProcess Engine (Oracle) Administrator’s Guide
•
0
pro data (textual procedure definition)
•
1
lst data (binary procedure definition)
•
2
nod data (not used)
•
3
gwd data (iProcess Modeler layout information)
•
4
nod data (not used)
•
5
VBA project data (VBA project files)
| 69
Column
Description
pd_index
Index number into the set of rows that make up this procedure
definition.
If the procedure definition is longer than 30,000 bytes, multiple
rows (in 30,000 byte chunks) are used to store the data. Each
segment of the procedure definition data is uniquely identified
by its pd_index value.
Note:
•
If you have upgraded your system from one of the
following versions, existing procedure definitions
are divided into 2000 byte chunks:
— (UNIX Oracle) any Version i9.n-o iProcess
Engine, or from a pre-Version 9.0-o(0.15) Process
Engine.
— (Windows Oracle) any Version 9.0-o Process
Engine.
•
However, if a procedure definition is modified, the
new instance is added using 30,000 byte chunks.
pd_size
Size (in bytes) of the procedure definition data for the current
row. This is 30,000 bytes (or 2000—see above) for all but the
last row of the procedure definition.
pd_directory
If pd_type is 5, contains the sub-directory path (relative to
SWDIR\projects) where any VBA project files related to
this procedure definition are stored. Filenames are stored in
pd_file.
If pd_type is 0 to 4, this field contains a hyphen.
pd_file
If pd_type is 5, contains the filename of a VBA project file
related to this procedure definition (if there is one). The file is
physically stored in the location defined by pd_directory.
If pd_type is 0 to 4, this field contains a hyphen.
pd_data
Raw data for this (portion of the) procedure definition.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
70
| proc_defn
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_proc_defn
proc_id
pd_index
pd_type
node_id
pd_version
pd_directory
pd_file
LARGEINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_defn1
node_id
proc_id
pd_version
proc_instance
1. This key enforces the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_proc_defn_fk
proc_id
node_id
pd_version
LARGEINDEXSPACE
idx_proc_defn
proc_id
pd_version
pd_type
node_id
LARGEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
LARGETABLESIZE
Percentage Increase
LARGETABLEPCTINCREASE
Tablespace
LARGETABLESPACE
The proc_defn table contains one or more rows for each instance of each
procedure definition on the system.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 71
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a procedure is saved in the iProcess Modeler (thus creating a new
instance), or imported.
updated
never.
deleted
a procedure is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
72
| proc_deadline
proc_deadline
The proc_deadline table stores definitions of procedure deadlines.
Structure
The proc_deadline table has the following structure:
TABLE proc_deadline(
node_id
proc_id
major_vers
minor_vers
pd_version
dead_name
event_name
dead_value
number(5)
NOT NULL,
number(5)
NOT NULL,
SMALLINTnumber(5)
NOT NULL,
SMALLINTnumber(5)
NOT NULL,
INTEGERnumber(7)
NOT NULL,
VARCHAR(32)varchar(32)NOT NULL,
VARCHAR(32)varchar(32)NOT NULL,
VARCHAR(512)varchar(512)NOT NULL)
Column
Description
node_id
ID of the node that this procedure is defined on, as defined in
the nodes table.
proc_id
Unique ID of this procedure, generated from the sequences
table.
major_vers
The major version number of the procedure that this case
belongs to, as defined in the proc_version table.
minor_vers
The minor version number of the procedure that this case
belongs to, as defined in the proc_version table.
pd_version
Instance number of the procedure definition, as defined in the
proc_instance table.
dead_name
The name of the case deadline.
event_name
The name of the event step that is triggered when the case
deadline expires.
dead_value
The value of the case deadline. The value is specified in
one of the following formats:
•
If the case deadline is specified as a period, then the
value is in the format:
minutes^hours^days^weeks^months^years
•
If the case deadline is specified as an expression, then
the value is in the format:
date expression^time expression
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 73
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
pk_proc_deadline
node_id
proc_id
pd_version
dead_name
Key Name
Column(s)
Index Tablespace
pk_proc_deadline
node_id
proc_id
pd_version
dead_name
BIGINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_deadline1
node_id
proc_id
pd_version
proc_instance
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Key Name
Column(s) Indexed
idx_proc_dl_fk
node_id
pro_id
pd_version
Index Name
Column(s) Indexed
Tablespace
idx_proc_dl_fk
node_id
proc_id
pd_version
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
74
| proc_deadline
Table Activity
Value
Definition
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGINDEXSPACE
The proc_deadline table contains one or more rows for each instance of each
procedure definition on the system. Rows are added, updated, and deleted in the
following situations.
A row is...
When...
added
The deadlines are created.
updated
The deadlines are updated.
deleted
The deadlines are deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 75
proc_event
The proc_event table stores definitions of procedure events.
Structure
The proc_event table has the following structure:
TABLE proc_event(
node_id
proc_id
major_vers
minor_vers
pd_version
eventname
user_event_name
NOT NULL)
INTEGERnumber(5)
NOT NULL,
INTEGERnumber(5)
NOT NULL,
INTEGERnumber(5)
NOT NULL,
INTEGERnumber(5)
NOT NULL,
INTEGERnumber(7)
NOT NULL,
VARCHAR(32)varchar(32)NOT NULL,
VARCHAR(32)VARCHAR_TYPE(32)varchar(32)
Column
Description
node_id
ID of the node that this case is hosted on, as defined in the nodes
table.
proc_id
ID of the procedure that this event belongs to, as defined in the
proc_index table.
major_vers
Major version number of the procedure version that this case
belongs to, as defined in the proc_version table.
minor_vers
Minor version number of the procedure version that this case
belongs to, as defined in the proc_version table.
pd_version
Instance number of the procedure definition, as defined in the
proc_instance table.
eventname
The name of the procedure event. The value of this column is
one of the following:
•
BeforePurge
•
BeforeClose
•
AfterClose
•
BeforeResurrect
•
AfterResurrect
•
BeforeSuspend
•
AfterSuspend
•
BeforeResume
•
AfterResume
TIBCO iProcess Engine (Oracle) Administrator’s Guide
76
| proc_event
Primary Key
Foreign Keys
Column
Description
user_event_name
The name of the event step which you set for the procedure
event.
The following primary key is defined for this table.
Key Name
Column(s)
pk_proc_event
node_id
proc_id
pd_version
eventname
Key Name
Column(s)
Index Tablespace
pk_proc_event
node_id
proc_id
pd_version
eventname
BIGINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_event1
node_id
proc_id
pd_version
proc_instance
1. This key enforces the DELETE
Index
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
idx_proc_event_fk
node_id
proc_id
pd_version
Index Name
Column(s) Indexed
Tablespace
idx_proc_event_fk
node_id
proc_id
pd_version
BIGINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 77
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGINDEXSPACE
The proc_event table contains one or more rows for each instance of each
procedure definition on the system. Rows are added, updated, and deleted in the
following situations.
A row is...
When...
added
If one of the following conditions occurred:
•
A new procedure event is added.
•
A procedure event is modified.
Note: When updating a procedure event, the record
related to this event is deleted and then a new record
with the event changes is added in the table.
•
A new version of a procedure is released.
updated
Never.
deleted
If one of the following conditions occurred:
•
A procedure event is deleted.
•
A procedure event is modified.
Note: When updating a procedure event, the record
related to this event is deleted and then a new record
with the event changes is added in the table.
•
The version of this procedure is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
78
| wqd_delta_subscriptions
wqd_delta_subscriptions
The wqd_delta_subscriptions table holds a list of the work queues, JMS topics
and WQDIDs that are currently in use for Work Queue Delta subscriptions
published via JMS. It provides a permanent store of subscription details if a WIS
process is restarted. See TIBCO iProcess Engine Administrator’s Guide for details of
Work Queue Delta publication via JMS.
Structure
The wqd_delta_subscriptions table has the following structure:
TABLE wqd_delta_subscriptions(
wis_process_instance number(5)
queue_name
varchar(51)
wqdid
varchar(36)
jms_topic_name
varchar(1024)
Primary Key
NOT NULL,
NOT NULL,
NOT NULL
Column
Description
wis_process_inst
ance
The instance of the WIS process that is responding to
Work Queue Delta publication requests.
queue_name
The name of the work queue being monitored.
wqdid
The unique ID of the subscription.
jms_topic_name
The name of the JMS topic being used for publication.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_wqd_delta_subscription
wqdid
MEDIUMINDEXSPACE
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 79
Chapter 6
Procedure Management
This chapter describes the tables that are used to store information about the
iProcess procedure objects that are stored in the Procedure Management library.
Topics
•
About Procedure Objects, page 80
•
Table Relationships, page 81
•
pm_objects, page 82
•
pm_objects_lock, page 85
•
pmobjects_security, page 88
•
proc_mgt_hierarchy, page 90
TIBCO iProcess Engine (Oracle) Administrator’s Guide
80
| About Procedure Objects
About Procedure Objects
Information is stored in these tables about the following types of procedure
object:
•
libraries
•
procedures
•
sub-procedures
•
sub-procedure parameter templates
•
shortcuts.
Shortcuts are not real procedure objects. They are simply placeholders that
allow you to access a procedure object from different locations in the
Procedure Management library. Data on shortcuts is only stored in the
proc_mgt_hierarchy table.
Information about procedure versions is stored in other tables - see Procedures on
page 43 for more information.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 81
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
pm_objects_lock
pmobjects_security
proc_mgt_hierarchy
pm_objects
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
82
| pm_objects
pm_objects
The pm_objects stores information about each procedure object (except
shortcuts) in the Procedure Management library.
Structure
The pm_objects table has the following structure:
TABLE pm_objects (
object_guid
object_type
object_name
version_major
version_minor
icon_mod_time
icon_binary
icon_size
object_url
author
object_create_time
object_mod_time
release_id
security_all
proc_id
proc_status
varchar2(36)
number(5)
varchar2(64)
number(5)
number(5)
date
blob
number(8)
varchar2(1000)
varchar2(64)
date
date
varchar2(64)
number(1)
number(5)
number(5)
NOT
NOT
NOT
,
,
NOT
,
NOT
,
,
NOT
NOT
,
NOT
NOT
)
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
Column
Description
object_guid
Globally unique, system-generated identifier for this
procedure object.
The row defining the Procedure Management library root
has the value ROOT_LIBRARY_GUID.
object_type
Procedure object type. Either: library (0), procedure (1),
sub-procedure (2) or sub-procedure parameter template
(3).
object_name
Name of this procedure object.
Note: The object’s description (if defined) is also included
as part of this field, in brackets following the name.
version_major
Major version number of the version associated with this
procedure object, as defined in the proc_version table.
This value is always 0 if the object is a library.
version_minor
Minor version number of the version associated with this
procedure object, as defined in the proc_version table.
This value is always 0 if the object is a library.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 83
Column
Description
icon_mod_time
Time that the icon associated with this procedure object
was last modified.
icon_binary
Binary form of the icon associated with this procedure
object.
icon_size
Size (in bytes) of the icon associated with this procedure
object.
object_url
Usage URL associated with this procedure object.
author
Value of the Author extended property for this procedure
object.
object_create_time
Value of the Date Created extended property for this
procedure object, showing the time that this object was
created.
object_mod_time
Value of the Date Modified extended property for this
procedure object, showing the time that this procedure
object was last modified.
release_id
Value of the Release Identification extended property for
this procedure object.
security_all
Flag that defines whether (1) or not (0) the OEM lock is set
for this procedure object.
proc_id
Procedure number of the procedure associated with this
procedure object, as defined in the proc_index table.
This value is always -1 if the object is a library.
proc_status
Primary Key
For internal use only.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_pm_objects
object_guid
SMALLINDEXSPACE
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
84
| pm_objects
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The pm_objects table contains one row for each procedure object (except
shortcuts) in the Procedure Management library.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a procedure object is created.
updated
a procedure object is modified.
deleted
a procedure object is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 85
pm_objects_lock
The pm_objects_lock table stores information about every procedure object that
is currently locked.
Structure
The pm_objects_lock table has the following structure:
TABLE pm_objects_lock (
object_guid
varchar2(36)
lck_state
number(5)
lck_owner
varchar2(24)
lck_time
date
Primary Key
Foreign Keys
NOT NULL,
,
,
)
Column
Description
object_guid
ID for this procedure object, as defined in the pm_objects
table.
lck_state
Flag that defines (1) that this procedure object is locked.
lck_owner
Name of the user who has this procedure object locked, as
defined in the user_names table.
lck_time
Time that the lock was set on this procedure object.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_pm_objects_lock
object_guid
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_pm_objects_lock1
object_guid
pm_objects
1. This key enforces the DELETE
CASCADE
referential action.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
86
| pm_objects_lock
Table Activity
Value
Definition
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The pm_objects_lock table contains one row for each procedure object that is
currently locked.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a procedure object is locked.
updated
never.
deleted
a procedure object is unlocked.
Unlocking Incorrectly Locked Procedure Objects
A procedure object is normally shown as locked in the Procedure Manager when
it is open in the TIBCO iProcess Modeler. However, an object may also be locked if
it was not closed properly from a previous TIBCO iProcess Modeler session - for
example, if the system failed while the procedure was open.
If this happens the object cannot be accessed again until the locks in the
proc_index and pm_objects tables are released. To do this:
1. Log in to Oracle as the background user.
2. In SQL*Plus, use the following query to delete all locks associated with the
locked procedure (where procedure_name is the name of the locked procedure):
delete procedure_lock where proc_id = (select proc_id from proc_index where
proc_name = ’procedure_name’)
delete pm_objects_lock where object_guid = (select object_guid from pm_objects
where object_name like ’proc_name%’)
3. Commit the transaction.
The object should now appear unlocked in Procedure Manager. (You may
need to refresh the display first.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 87
The like statement requires a % sign prefixed or suffixed to the procedure_name.
However, this will select similarly-named procedures - for example, ’TEST%’
would select procedures named TEST1, TEST2, TEST3, even if only TEST4
needed to be cleared.
You are recommended to ensure that the procedure name is complete - in the
case in the previous paragraph, specify ’TEST4%’ - so that the % character only
covers the option procedure description.
TIBCO also recommend that you ensure you are connected to the correct
database and table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
88
| pmobjects_security
pmobjects_security
The pmobjects_security table stores the encrypted security settings for every
procedure object (except shortcuts) in the Procedure Management library.
Structure
The pmobjects_security table has the following structure:
TABLE pmobjects_security (
object_guid
varchar2(36)
security_id
number(5)
attrib_expr
varchar2(260)
security_level
varchar2(8)
Primary Key
Foreign Keys
NULL,
NULL,
NULL,
NULL)
Column
Description
object_guid
ID for this procedure object, as defined in the pm_objects
table.
security_id
Internal identifier for this procedure object.
attrib_expr
Encrypted security attribute expression for this procedure
object.
security_level
Encrypted security level for this procedure object.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_pmobjects_security
object_guid
security_id
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_pmobjects_security1
object_guid
pm_objects
1. This key enforces the DELETE
Indexes
NOT
NOT
NOT
NOT
CASCADE
referential action.
None.
The following index is defined for this table.
Index Name
Column(s) Indexed
idx_pmobjects_security_fk
object_guid
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 89
Storage
Table Activity
Index Name
Column(s) Indexed
idx_pmobjs_sec_fk
object_guid
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The pmobjects_security table contains one row for each procedure object
(except shortcuts) in the Procedure Management library.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a procedure object is created.
updated
a procedure object’s security settings are modified.
deleted
a procedure object is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
90
| proc_mgt_hierarchy
proc_mgt_hierarchy
The proc_mgt_hierarchy table stores a set of hierarchy records, which define the
hierarchical structure of the Procedure Management library. Each record defines
the location of a procedure object in the library.
Structure
The proc_mgt_hierarchy table has the following structure:
TABLE proc_mgt_hierarchy(
parent_guid
varchar2(36)
object_guid
is_shortcut
varchar2(36)
number(1)
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
parent_guid
ID for the parent library, as defined in the pm_objects table.
object_guid
ID for this procedure object, as defined in the pm_objects
table.
Note: If is_shortcut is 1, this value is the identifier of the
procedure object pointed to by the shortcut.
is_shortcut
Primary Key
Foreign Keys
Flag that defines whether this hierarchy record is for a real
procedure object (0) or for a shortcut (1).
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_proc_mgt_hierarchy
parent_guid
object_guid
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_proc_mgt_hierarchy1
object_guid
pm_objects
1. This key enforces the DELETE
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 91
The following index is defined for this table.
Storage
Table Activity
Index Name
Column(s) Indexed
idx_proc_mgt_hierarchy_fk
object_guid
Index Name
Column(s) Indexed
idx_proc_mgt_h_fk
object_guid
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The proc_mgt_hierarchy table contains one row for every procedure object in
the Procedure Management library (except for the root Procedure Management
library).
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a procedure object is created, copied or moved.
updated
never.
deleted
a procedure object is deleted or moved.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
92
| proc_mgt_hierarchy
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 93
Chapter 7
Cases
This chapter describes the tables that are used to store information about iProcess
cases.
Topics
•
Table Relationships, page 94
•
case_information, page 95
•
outstanding_addr, page 99
•
wait, page 102
•
wait_step, page 104
•
status, page 106
•
case_data, page 108
•
audit_trail, page 111
•
memo, page 114
•
nmemo, page 117
•
predict, page 120
•
predict_lock, page 124
•
case_deadline_event, page 126
•
case_event, page 129
•
casenum_gaps, page 133
TIBCO iProcess Engine (Oracle) Administrator’s Guide
94
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
wait
wait_step
status
memo
nmemo
outstanding_addr
case_data
audit_trail
predict_lock
case_deadline_event
case_event
case_information
1
1
1
Many
proc_index
TIBCO iProcess Engine (Oracle) Administrator’s Guide
predict
| 95
case_information
The case_information table holds information about every case and sub-case
that has been started and not yet purged on the system.
Structure
The case_information table has the following structure:
TABLE case_information (
node_id
number(5)
proc_id
number(5)
casenum
number(20)
starter
varchar2(49)
casedesc
varchar2(24)
procflags
number(5)
next_deadline
date
is_subcase
number(1)
is_dead
number(1)
is_suspended
number(1)
major_vers
number(5)
minor_vers
number(5)
proc_precedence
number(5)
started
date
started_usecs
number(6)
using_blob
number(1)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NOT NULL,
,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL)
NOT NULL)
Column
Description
node_id
ID of the node that this case is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that this case belongs to, as defined in the
proc_index table.
casenum
Unique case number for this case, generated from the
sequences table.
Note: If the system has been upgraded from a Version 9
Process Engine, any cases that were started before the upgrade
do not have a unique case number. (They have a number that
is unique to that procedure.)
starter
Name of the user who started this case, as defined in the
user_names table.
casedesc
Case description supplied when the case was started.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
96
| case_information
Column
Description
procflags
The procedure flags that were set at the time the case was
started. For internal use only.
Note: These flags are stored to allow consistent operation of
the case if the procedure changes status during the lifetime of
the case. For example, if the procedure is unreleased when the
case is started, but changes to released before the case
completes, the case can continue using the original procedure
flags.
next_deadline
Date and time that the next deadline expires on this case.
If no deadline is set this value appears as 12/31/3000
11:15:00 PM.
is_subcase
Flag that defines whether this case is a main case (0) or a
sub-case (1).
is_dead
Flag that defines whether (1) or not (0) this case has
completed.
is_suspended
Flag that defines whether (1) or not (0) the case is currently
suspended (from a TIBCO iProcess Objects or SAL
application).
major_vers
Major version number of the version of the procedure that this
case belongs to, as defined in the proc_version table.
minor_vers
Minor version number of the version of the procedure that this
case belongs to, as defined in the proc_version table.
proc_precedence
Stores the procedure precedence settings for opening
sub-cases. One of:
started
•
32
- Released only.
•
64
- Unreleased > Released.
•
96
- Model > Released.
•
128 -
Unreleased > Model > Released.
•
160 -
Model > Unreleased > Released.
Date and time that the case was started, to the resolution of a
second.
Note: The started_usecs column can be combined with this
column to provide resolution to a microsecond.
started_usecs
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Number of microseconds since the start of the seconds value
specified in the started column.
| 97
Primary Key
Foreign Keys
Column
Description
using_blob
Decides to use the old memo data table or the new one.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_case_information
casenum
proc_id
node_id
LARGEINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_case_information1
proc_id
node_id
proc_index
1. This key enforces the DELETE
Indexes
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_case_information_
fk
proc_id
node_id
LARGEINDEXSPACE
idx_ci_casedesc_UC1
UPPER(casedesc)
casenum
proc_id
LARGEINDEXSPACE
1. Oracle function-based index, to facilitate case insensitive searches.
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
LARGETABLESIZE
Percentage Increase
LARGETABLEPCTINCREASE
Tablespace
LARGETABLESPACE
The case_information table contains one row for every open and closed case
and sub-case on the system.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
98
| case_information
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new case or sub-case is started.
updated
any of the following occur:
deleted
•
a case or sub-case is closed.
•
a deadline on a case or sub-case is set or expires.
•
a case or sub-case is suspended or re-opened.
•
a new version of a procedure is released and the option is
chosen to migrate cases (and sub-cases) that use the previously
released version to the new version.
a case is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 99
outstanding_addr
The outstanding_addr table holds information about each outstanding step on
the system.
Structure
The outstanding_addr table has the following structure:
TABLE outstanding_addr (
rowid UNIQUEIDENTIFIER ROWGUIDCOLNUMERIC(15)NOT NULL GENERATED
ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, CACHE 50),
node_id
number(5)
NOT NULL,
proc_id
number(5)
NOT NULL,
casenum
number(20)
NOT NULL,
sentdate
date
NOT NULL,
deadline
number(1)
NOT NULL,
deadline_exprired
number(1)
NOT NULL,
sub_procedure
number(1)
NOT NULL,
deaddate
date
NOT NULL,
stepname
varchar2(8)
NOT NULL,
user_name
varchar2(64)
NOT NULL,
reqid
number(20)
NOT NULL,
item_suspended
number(1)
NOT NULL,
item_withdrawn
number(1)
NOT NULL,
array_idx
number(5)
NOT NULL)
Column
Description
rowid
Unique identifier for this row
node_id
ID of the node that this outstanding step is hosted on, as
defined in the nodes table.
proc_id
ID of the procedure that this outstanding step belongs to, as
defined in the proc_index table.
casenum
Number of the case that this outstanding step belongs to, as
defined in the case_information table.
sentdate
Date and time that this outstanding step was sent to the
user_name queue.
deadline
Flag that defines whether (1) or not (0) this outstanding step
has a deadline defined.
deadline_expired
Flag that defines whether (1) or not (0) the deadline (if
defined) has expired and been processed.
sub_procedure
Flag that defines whether (1) or not (0) this outstanding step is
a sub-procedure call.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
100
| outstanding_addr
Column
Description
deaddate
Date and time that the deadline (if defined) expires on this
outstanding step.
If no deadline is set this value appears as 12/31/3000
11:15:00 PM.
stepname
Stepname of this outstanding step.
user_name
Name of the queue that this outstanding step has been sent to,
as defined in the user_names table.
reqid
Unique ID for this work item, generated from the sequences
table.
item_suspended
Flag that defines whether (1) or not (0) this outstanding step is
currently suspended.
Note: item_suspended is only set if the case is suspended
and the ignore suspend attribute is not set on the step.
Primary Key
Foreign Keys
item_withdrawn
Flag that defines whether (1) or not (0) this outstanding step is
withdrawn.
array_idx
Either:
•
The array element index number of the sub-procedure that
generated this outstanding step, if the sub-procedure was
called from either a graft step or a dynamic sub-procedure
call step.
•
-1, otherwise.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_outstanding_addr
reqid
node_id
LARGEINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_outstand_addr1
casenum
proc_id
node_id
case_information
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 101
Indexes
Storage
Table Activity
The following indexes aredefined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_outstanding_addr_fk
casenum
proc_id
node_id
LARGEINDEXSPACE
idx_deadline_date
deaddate
LARGEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
LARGETABLESIZE
Percentage Increase
LARGETABLEPCTINCREASE
Tablespace
LARGETABLESPACE
The outstanding_addr table contains one row for each outstanding step on the
system.
Rows are added, updated and deleted in the following situations.
A row is...
added
When...
a new step is sent out.
Note:
updated
deleted
•
if a step has multiple addressees one row is added per
addressee.
•
for a dynamic sub-procedure, one row is added per called
sub-procedure.
•
for a graft step, one row is added per grafted sub-procedure or
external step.
any of the following occur:
•
a deadline on an outstanding step expires.
•
a case is suspended or re-opened.
•
an outstanding step is withdrawn.
the background processes a release, withdraw, close or purge
operation that affects an outstanding step.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
102
| wait
wait
The wait table holds information about each outstanding wait on the system.
Structure
The wait table has the following structure:
TABLE wait (
wait_id
node_id
proc_id
casenum
parentstep
expression
type
Primary Key
number(10)
number(5)
number(5)
number(20)
varchar2(8)
varchar2(200)
number(1)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NULL,
NOT NULL)
Column
Description
wait_id
Unique ID for this wait, generated from the sequences table.
node_id
ID of the node that this wait is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that this wait belongs to, as defined in the
proc_index table.
casenum
Case number that this wait belongs to, as defined in the
case_information table.
parentstep
Step name of the parent step for this wait.
expression
Not used. Reserved for possible future use.
type
Wait type. Currently the only supported type is a Step wait (1),
that is, the step is waiting for one or more other steps to be
released.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_wait
wait_id
node_id
BIGINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 103
Foreign Keys
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_wait1
node_id
proc_id
casenum
case_information
1. This key enforces the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_wait_fk
casenum
proc_id
node_id
BIGINDEXSPACE
idx_wait
casenum
proc_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGTABLESPACE
The wait table contains one row for each outstanding wait on the system. An
associated record exists in the wait_step table for each step being waited for.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new wait is triggered.
updated
never.
deleted
a wait is processed.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
104
| wait_step
wait_step
The wait_step table holds information about each step that is currently being
waited for by a wait defined in the wait table.
Structure
The wait_step table has the following structure:
TABLE wait_step (
node_id
proc_id
wait_id
step_id
Primary Key
Foreign Keys
number(5)
number(5)
number(10)
number(9)
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that the wait is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that the wait belongs to, as defined in the
proc_index table.
wait_id
ID of the wait, as defined in the wait_step table.
step_id
Number of the step that is being waited for, as defined (by the
step_num column) in the status table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_wait_step
wait_id
step_id
BIGINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_wait_step1
node_id
wait_id
wait
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 105
Indexes
Storage
Table Activity
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_wait_step_fk
wait_id
node_id
BIGINDEXSPACE
idx_wait_step
wait_id
proc_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGTABLESPACE
The wait_step table contains one row for each for each step currently being
waited for.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new wait is triggered.
updated
never.
deleted
a step that is being waited for is released or withdrawn.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
106
| status
status
The status table holds the current status of each step of each case on the system.
Structure
The status table has the following structure:
TABLE status (
node_id
proc_id
casenum
step_num
step_status
Primary Key
Foreign Keys
number(5)
number(5)
number(20)
number(4)
number(1)
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this step is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that this step belongs to, as defined in the
proc_index table.
casenum
Case number that this step belongs to, as defined in the
case_information table.
step_num
Place number for this step (a unique ID that does not change
between edits of a procedure). For internal use only.
step_status
Step status. Either: Not processed (0), Released (1),
Outstanding (2) or Withdrawn (3).
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_status
casenum
proc_id
step_num
node_id
HUGETABLESPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_status1
node_id
proc_id
casenum
case_information
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 107
Indexes
Storage
Table Activity
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_status_fk
casenum
proc_id
node_id
HUGEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
The status table contains one row for each step of each case (open or closed) on
the system. Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a step is sent out, or a case is started.
updated
a step’s status changes.
deleted
a case is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
108
| case_data
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
proc_id
casenum
field_name
field_value
field_value_N
number(5)
number(5)
number(20)
varchar2(31)
varchar2(255)
varchar2(255)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
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.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 109
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_case_data
casenum
proc_id
node_id
field_name
MASSIVEINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_case_data1
node_id
proc_id
casenum
case_information
1. This key enforces the DELETE
Indexes
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_case_data_fk
casenum
proc_id
node_id
MASSIVEINDEXSPACE
idx_case_data_cnum_
procid_fnfv1
field_name
field_value_N
casenum
proc_id
MASSIVEINDEXSPACE
1. This index can impact purge performance. If a large number of purges are being
made at the same time TIBCO recommends that you delete this index before performing the purge, then recreate it when the purge has completed.
Storage
The following STORAGE values are defined for this table.
Value
Definition
Initial
MASSIVETABLESIZE
Percentage Increase
MASSIVETABLEPCTINCREASE
Tablespace
MASSIVETABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
110
| case_data
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.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 111
audit_trail
The audit_trail table holds information about each event that has happened to
each case on the system.
Structure
The audit_trail table has the following structure:
TABLE audit_trail (
node_id
proc_id
casenum
type_id
audit_date
stepdesc
user_name
stepname
audit_usecs
major_vers
minor_vers
number(5)
number(5)
number(20)
number(3)
date
varchar2(24)
varchar2(64)
varchar2(8)
number(6)
number(5)
number(5)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NULL,
NULL,
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
node_id
ID of the node that this audit event is hosted on, as defined in
the nodes table.
proc_id
ID of the procedure that this audit event belongs to, as defined
in the proc_index table.
casenum
Case number that this audit event belongs to, as defined in the
case_information table.
type_id
ID of the audit event that occurred. Either:
•
a system-defined audit event (<=255), as defined in the
SWDIR\etc\language.lng\audit.mes file.
•
a custom, application-defined event (256-999), as defined
in the SWDIR\etc\language.lng\auditusr.mes file.
Note: See "Defining Audit Trail Entries" in TIBCO iProcess
swutil and swbatch Reference Guide for more information about
system-defined and application-defined audit trail entries.
audit_date
Date and time that this audit event occurred.
Note: The audit_usecs column can be combined with this
column to provide resolution to a microsecond.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
112
| audit_trail
Column
Description
stepdesc
If type_id is:
user_name
stepname
•
<= 255, the step description of the step that this audit
event occurred to.
•
=> 256, a user-defined string, containing for example the
description of this audit event.
If type_id is:
•
<= 255, the name of the user who performed this audit
event, as defined in the user_names table.
•
=> 256, a user-defined string, containing for example the
name of the user who performed this audit event.
Name of the step that this audit event occurred for.
For internal use only.
audit_usecs
Number of microseconds since the start of the seconds value
specified in the audit_date column.
Note: On systems that have been upgraded from Version 9, for
any existing cases the 6 least significant digits of the at_id
column are copied into this column to ensure that audit trail
entries remain in the correct order.
Primary Key
Foreign Keys
major_vers
Major version number of the version of the procedure that this
audit event belongs to, as defined in the proc_version table.
minor_vers
Minor version number of the version of the procedure that this
audit event belongs to, as defined in the proc_version table.
None.
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_audit_trail1
node_id
proc_id
casenum
case_information
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 113
Indexes
Storage
Table Activity
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_audit_trail_fk
casenum
proc_id
node_id
MASSIVEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MASSIVETABLESIZE
Percentage Increase
MASSIVETABLEPCTINCREASE
Tablespace
MASSIVETABLESPACE
The audit_trail table contains one or more rows for each step of each case on
the system. Rows are added, updated and deleted in the following situations.
A row is...
When...
added
an audit event occurs.
updated
never.
deleted
a case is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
114
| memo
memo
The memo table stores the case memo data before upgrading to iProcess Engine
11.6. Since iProcess Engine 11.6, all the new case memo data is stored in the BLOB
data type in the nmemo table.
You can migrate case memo data in the memo table to the nmemo table when
upgrading to iProcess Engine 11.6 or migrate them by using the swutil
MIGRATEMEMOS command after the upgrades.
A copy of a memo is kept in the pack_memo table if the memo is marked on an
outstanding form.
Structure
The memo table has the following structure:
TABLE memo (
node_id
proc_id
casenum
memo_id
memo_index
memo_size
memo_data
array_idx
number(5)
number(5)
number(20)
number(4)
number(10)
number(10)
blob
number(6)
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this memo is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that this memo belongs to, as defined in
the proc_index table.
casenum
Case number that this memo belongs to, as defined in the
case_information table.
memo_id
Unique (for this case) ID of this memo.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 115
Column
Description
memo_index
Index number into the set of rows that make up this memo.
If a memo is longer than 30,000 bytes multiple rows (in 30,000
byte chunks) are used to store the memo data. Each segment of
the memo data is uniquely identified by its memo_index
value.
Note:
•
If you have upgraded your system from iProcess
Engineone of the following versions, existing memos are
divided into 2,000 byte chunks:
— (UNIX Oracle) any Version i9.n-o iProcess Engine, or
from a pre-Version 9.0-o(0.15) Process Engine.
— (Windows Oracle) any Version 9.0-o Process Engine.
However, if a memo is modified, the existing rows are deleted
and then re-added using 30,000 byte chunks.
Primary Key
Foreign Keys
memo_size
Size (in bytes) of the memo data for this row.
memo_data
Memo data.
array_idx
Either:
•
The array element index number of the memo.
•
-1,
if the memo is not an array memo field.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_memo
casenum
memo_id
memo_index
proc_id
node_id
array_idx
HUGEINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_memo1
node_id
proc_id
casenum
case_information
1. This key enforces the DELETE
CASCADE
referential action.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
116
| memo
Indexes
Storage
Table Activity
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_memo_fk
casenum
proc_id
node_id
HUGEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
The memo table contains one or more rows for each memo on the system. Rows are
added, updated and deleted in the following situations.
A row is...
When...
added
either:
•
a memo field is first assigned.
•
a memo field is modified. (All rows for the memo are deleted
and then re-added.)
updated
never.
deleted
either:
•
a memo field is modified. (All rows for the memo are deleted
and then re-added.)
•
a case is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 117
nmemo
The nmemo table stores the case memo data after upgrading to iProcess Engine
11.6. Since iProcess Engine 11.6, all the new case memo data is stored in the blob
data type in the nmemo table.
You can migrate case memo data in the memo table to the nmemo table when
upgrading to iProcess Engine 11.6 or migrate them by using the swutil
MIGRATEMEMOS command after the upgrades.
A copy of a memo is kept in the pack_nmemo table if the memo is marked on an
outstanding form.
Structure
The nmemo table has the following structure:
TABLE nmemo (
node_id
proc_id
casenum
memo_id
memo_index
memo_size
memo_data
array_idx
number(5)
number(5)
number(20)
number(4)
number(10)
number(10)
blob
number(6)
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this memo is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that this memo belongs to, as defined in
the proc_index table.
casenum
Case number that this memo belongs to, as defined in the
case_information table.
memo_id
Unique (for this case) ID of this memo.
memo_index
Index number into the set of rows that make up this memo.
This value is always 1.
memo_size
Size (in bytes) of the memo data for this row.
memo_data
Memo data.
array_idx
Either:
•
The array element index number of the memo.
•
-1,
if the memo is not an array memo field.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
118
| nmemo
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_nmemo
casenum
memo_id
memo_index
proc_id
node_id
array_idx
HUGEINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_nmemo1
node_id
proc_id
casenum
case_information
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_nmemo_fk
casenum
proc_id
node_id
HUGEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 119
Table Activity
The nmemo table contains one row for each memo on the system. Rows are added,
updated and deleted in the following situations.
A row is...
When...
added
either:
•
a memo field is first assigned.
•
a memo field is modified.
updated
never.
deleted
either:
•
a memo field is modified.
•
a case is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
120
| predict
predict
The predict table stores the prediction data for all expected work items currently
defined on the system.
Structure
The predict table has the following structure:
TABLE predict (
node_id
proc_num
case_num
parent_proc_num
parent_case_num
main_proc_num
main_case_num
step_name
step_desc
step_desc2
step_addr
step_durn_secs
step_durn_usecs
step_start
step_start_usecs
step_end
step_end_usecs
field_name
field_value
number(5)
number(5)
number(20)
number(5)
number(20)
number(5)
number(20)
varchar2(8)
varchar2(24)
varchar2(24)
varchar2(49)
number(10)
number(10)
date
number(10)
date
number(10)
varchar2(31)
varchar2(255)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NULL,
NOT NULL,
NULL,
NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this predicted work item is hosted on, as
defined in the nodes table.
proc_num
ID of the procedure associated with this predicted work item,
as defined in the proc_index table.
case_num
Either:
parent_proc_num
TIBCO iProcess Engine (Oracle) Administrator’s Guide
•
Case number of the case associated with this predicted
work item, as defined in the case_information table.
•
0, if this is a predicted work
item in a future sub-case,
rather than in a currently outstanding sub-case.
ID of the parent procedure associated with this predicted work
item, as defined in the proc_index table, if proc_num is a
sub-procedure.
| 121
Column
Description
parent_case_num
Either:
•
ID of the parent case associated with this predicted work
item, as defined in the case_information table, if
case_num is a sub-case.
•
0, if this is a
predicted work item in a future sub-case,
rather than a currently outstanding sub-case, that was
itself started from a predicted future sub-case.
main_proc_num
ID of the procedure associated with the main case that
generated this predicted work item, as defined in the
proc_index table.
main_case_num
ID of the main case that generated this predicted work item, as
defined in the case_information table.
step_name
Stepname of the step associated with this predicted work item.
step_desc
Step description of the step associated with this predicted
work item.
step_desc2
Additional description of the step associated with this
predicted work item.
step_addr
Queue name that this predicted work item will be delivered to.
step_durn_secs
Expected duration (in seconds) between this predicted work
item being delivered to and released from the step_addr
queue.
Note: The step_durn_usecs column can be combined with
this column to provide resolution to a microsecond.
step_durn_usecs
Number of microseconds to be added to the value specified in
the step_durn_secs column.
step_start
Date and time that this predicted work item is expected to
arrive in the step_addr queue, to the resolution of a second.
Note: The step_start_usecs column can be combined
with this column to provide resolution to a microsecond.
step_start_usecs
Number of microseconds since the start of the seconds value
specified in the step_start column.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
122
| predict
Column
Description
step_end
Date and time that this predicted work item is expected to be
released from the step_addr queue, to the resolution of a
second.
Note: The step_end_usecs column can be combined with
this column to provide resolution to a microsecond.
Primary Key
Foreign Keys
step_end_usecs
Number of microseconds since the start of the seconds value
specified in the step_end column.
field_name
Name of the field that has a CDQP assigned to it for this
predicted work item.
field_value
Value of the CDQP assigned to the field_name field for this
predicted work item.
None.
The following foreign key is defined for this table.
Column(s)
fk_predict1
main_case_num
main_proc_num
node_id
1. This key enforces the DELETE
Indexes
Referenced in
Table...
Key Name
CASCADE
predict_lock
referential action.
None.
The following index is defined for this table.
Storage
Index Name
Column(s) Indexed
idx_predict_fk
main_case_num
main_proc_num
node_id
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Column(s)
case_num
proc_num
node_id
| 123
Value
Definition
Tablespace
SMALLTABLESPACE
By default, the predict and predict_lock tables use the SMALL macro values. If
you intend to enable case prediction on your system, TIBCO recommends that
you change these tables to use a larger value in line with the level of prediction
activity you expect.
Table Activity
The predict table contains one or more rows for each predicted work item
generated by each step of each case of each procedure that currently has
prediction data defined for it.
If a predicted work item contains one or more fields that have CDQPs assigned to
them, duplicate rows are added for each CDQP. In the first row, the field_name
and field_value columns are blank. Each subsequent row contains the
field_name and field_value entries for one assigned CDQP. For example, if a
predicted work item contains 5 fields that have CDQPs assigned to them, it will
have 6 rows in this table.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
background prediction is enabled on the iProcess Engine, and
anything occurs that causes prediction data for a case to be
calculated or recalculated. For example, when a case is started, a
work item is kept or released, a deadline expires or an event occurs.
Note: One row is added for each step in the procedure that can
occur on the currently predicted path(s).
updated
never.
deleted
background prediction is enabled on the iProcess Engine, and
anything occurs that causes prediction data for a case to be
recalculated. For example, when a work item is kept or released, a
deadline expires or an event occurs.
Note: All rows for a given main case number are deleted for each
step in the procedure that can no longer occur on the currently
predicted path(s).
Case prediction can be enabled and disabled using the ENABLE_CASE_PREDICTION
process attribute. See TIBCO iProcess Engine Administrator's Guide for more
information.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
124
| predict_lock
predict_lock
The predict_lock table stores the locks that are used to control access to the
predict table.
Structure
The predict_lock table has the following structure:
TABLE predict_lock (
node_id
proc_num
case_num
Primary Key
Foreign Keys
number(5)
number(5)
number(20)
Column
Description
node_id
ID of the node that this prediction lock is hosted on, as defined
in the nodes table.
proc_num
ID of the procedure that this prediction lock applies to, as
defined in the proc_index table.
case_num
Case number of the main case that this prediction lock applies
to, as defined in the case_information table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_predict_lock
node_id
proc_num
case_num
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
fk_predict_loc
k1
node_id
proc_num
case_num
1. This key enforces the DELETE
Indexes
NOT NULL,
NOT NULL,
NOT NULL)
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Referenced in
Table...
case_information
CASCADE
referential action.
Column(s)
node_id
proc_id
casenum
| 125
The following index is defined for this table.
Storage
Index Name
Column(s) Indexed
idx_pred_lock_fk
case_num
proc_num
node_id
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
By default, the predict and predict_lock tables use the SMALL macro values. If
you intend to enable case prediction on your system, TIBCO recommends that
you change these tables to use a larger value in line with the level of prediction
activity you expect.
Table Activity
The predict_lock table contains one row for every main case on the system that
currently has prediction data defined in the predict table. Rows are added,
updated and deleted in the following situations.
A row is...
When...
added
background prediction is enabled on the iProcess Engine, and a case
that has prediction enabled is started.
Note: Case prediction can be enabled and disabled using the
ENABLE_CASE_PREDICTION process attribute. See TIBCO iProcess
Engine Administrator's Guide for more information.
updated
never.
deleted
a case that has prediction enabled is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
126
| case_deadline_event
case_deadline_event
The case_deadline_event table stores information about case deadlines when
the case is running.
Structure
The case_deadline_event table has the following structure:
TABLE case_deadline_event (
node_id
INTEGERnumber(5)
NOT NULL,
proc_id
INTEGERnumber(5)
NOT NULL,
casenum
NUMERIC(20)numeric(20)NOT NULL,
dead_id
VARCHAR(32)varchar(32)NOT NULL,
dead_name
VARCHAR(32)VARCHAR(32)varchar(32)NOT
NULL,
event_name
varchar(32)
NOT NULL,
dead_value
varchar(512)
NOT NULL)
Column
Description
node_id
ID of the node that this procedure is defined on, as defined in
the nodes table.
proc_id
Unique ID of this procedure, generated from the sequences
table.
casenum
The number of the case that this case deadline belongs to, as
defined in the case_information table.
dead_id
For internal use only. This column is referenced from the
stepname column in the outstanding_addr table.
dead_name
The name of the case deadline.
event_name
The name of the event step.
dead_value
The value of the case deadline when the case is running.
The value is specified in one of the following formats:
•
If the case deadline is specified as a period, then the
value is in the format:
minutes^hours^days^weeks^months^years
•
If the case deadline is specified as an expression, then
the value is in the format:
date expression^time expression
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 127
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_case_dl_event
node_id
proc_id
casenum
dead_id
BIGINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_case_dl_event1
casenum
proc_id
node_id
case_information
1. This key enforces the DELETE
Indexes
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_case_dl_fk
casenum
proc_id
node_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
LARGETABLESIZE
Percentage Increase
LARGETABLEPCTINCREASE
Tablespace
LARGETABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
128
| case_deadline_event
Table Activity
The case_deadline_event table contains one or more rows for each instance of
each procedure definition on the system. Rows are added, updated, and deleted
in the following situations.
A row is...
When...
added
If one of the following conditions occurs:
•
A case is starting and its deadline is defined in the
procedure.
•
The CreateCaseDeadline expression is called in the EAI
step.
updated
The UpdateCaseDeadline expression is called in the EAI
step.
deleted
If one of the following conditions occurs:
•
The DeleteCaseDeadline expression is called in the EAI
step.
•
The case deadline expired and an event is triggered.
•
The case is closed.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 129
case_event
The case_event table stores information about cases that are interrupted by
triggered events when processing the purge, close, resurrect, suspend, or resume
operation. The case information is recorded in this table only when the BG process
is handling the delayed release EAI steps, which are defined in the triggered
event. After finishing the event, the case resumes execution and fetches the
temporary case data from this table.
Structure
The case_event table has the following structure:
TABLE case_event(
node_id
proc_id
major_vers
minor_vers
eventname
NULL,
user_event_name
NULL,
casenum
state
actionparameter
number(5)
NOT NULL,
INTEGERnumber(5)
NOT NULL,
INTEGERnumber(5)
NOT NULL,
INTEGERnumber(5)
NOT NULL,
VARCHAR(32)varchar(32)VARCHAR(32)NOT
VARCHAR(32)VARCHARvarchar(32)(32)NOT
NUMERIC(20)numeric(20)NOT NULL,
INTEGERinteger
NOT NULL,
VARCHAR(256)VARCHARvarchar(256)(256))
Column
Description
node_id
ID of the node that this case is hosted on, as defined in the
nodes table.
proc_id
ID of the procedure that this procedure event belongs to, as
defined in the proc_index table.
major_vers
Major version number of the procedure version that this case
belongs to, as defined in the proc_version table.
minor_vers
Minor version number of the procedure version that this case
belongs to, as defined in the proc_version table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
130
| case_event
Column
Description
eventname
The name of the procedure event. The value of this column is
one of the following:
•
BeforePurge
•
BeforeClose
•
AfterClose
•
BeforeResurrect
•
AfterResurrect
•
BeforeSuspend
•
AfterSuspend
•
BeforeResume
•
AfterResume
user_event_name
The name of the event step which you set for the procedure
event.
casenum
ID of the case that this event belongs to, as defined in the
case_information table.
state
Flag that defines the state of the procedure event after the
event is triggered. The meaning for each flag is:
actionparameter
•
2 the triggered event is in the processing state.
•
3 the triggered event is finished.
•
4 the triggered event is cancelled.
•
-1 the triggered event failed.
When an event is triggered, the processing purge, close,
resurrect, suspend, or resume operation is interrupted. This
column saves case data of the processing operation when the
BG process is handling the delayed release EAI steps, which are
defined in the triggered event. After finishing the event, the
case resumes execution of the operation and fetches the
temporary case data from this column.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 131
Primary Key
Foreign Keys
The following primary key is defined for this table.
Key Name
Column(s)
pk_case_event
node_id
proc_id
casenum
eventname
Key Name
Column(s)
Index Tablespace
pk_case_event
node_id
proc_id
casenum
eventname
LARGETABLESPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_case_event1
casenum
proc_id
node_id
case_information
1. This key enforces the DELETE
Index
Storage
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_case_event_fk
casenum
proc_id
node_id
LARGETABLESPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
LARGETABLESIZE
Percentage Increase
LARGETABLEPCTINCREASE
Tablespace
LARGETABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
132
| case_event
Table Activity
The case_event table contains one or more rows for each instance of each
procedure definition on the system. Rows are added, updated, and deleted in the
following situations.
A row is...
When...
added
The procedure event enters the processing state.
updated
The procedure event changes from processing to failed or
to cancelled.
deleted
If one of the following conditions occurred:
•
The case is purged.
•
The procedure event is finished.
•
The procedure event failed.
•
The procedure event is cancelled.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 133
casenum_gaps
The casenum_gaps table holds the free case number gaps.
If the case number or the subcase number generated from the sequence table
reaches the maximum case number, 4294967295, then the following cases cannot
be started. This table is used to create more available case numbers by reusing
previous blocks of case numbers, which are no longer exist. The free case numbers
are available either because the case numbers have never been used or from the
original cases that have been purged.
TIBCO iProcess Engine checks the casenum_gaps table to find out whether there
are any free case numbers available for reuse before allocating a sequence from
the end of the case numbers.
The CASENUM_FIND_GAPS stored procedure adds a list of free case number gaps to
the casenum_gaps table, it scans a range of case numbers and create available
blocks of free case numbers for reuse. See CASENUM_FIND_GAPS for more
information.
This table is not populated by the system and it remains empty unless the
CASENUM_FIND_GAPS stored procedure is running to populate it.
Structure
The casenum_gaps table has the following structure:
TABLE casenum_gaps(
casenum_min
casenum_max
Primary Key
bigintnumber(20)
bigintnumber(20)
NOT NULL,
NOT NULL)
Column
Description
casenum_min
The minimum case number in a gap.
casenum_max
The maximum case number in a gap.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_casenum_gaps
casenum_min
MASSIVETABLESPACE
Foreign Keys
None.
Triggers
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
134
| casenum_gaps
Storage
Table Activity
See Also
The following STORAGE values are defined for this table.
Value
Definition
Initial
MASSIVETABLESIZE
Percentage Increase
MASSIVETABLEPCTINCREASE
Tablespace
MASSIVETABLESPACE
The casenum_gaps table contains one or more rows for each instance of each
procedure definition on the system. Rows are added, updated, and deleted in the
following situations.
A row is...
When...
added
running the CASENUM_FIND_GAPS stored procedure.
updated
running TIBCO iProcess Engine.
deleted
running TIBCO iProcess Engine.
CASENUM_FIND_GAPS
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 135
Chapter 8
Work Items
This chapter describes the tables that are used to store information about work
item data - the combination of fields and their values that are held in iProcess
forms (also known as “pack data”).
Topics
•
Table Relationships, page 136
•
staffo, page 137
•
pack_data, page 141
•
pack_memo, page 143
•
pack_nmemo, page 146
•
qaccess, page 149
TIBCO iProcess Engine (Oracle) Administrator’s Guide
136
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
staffo
pack_data
pack_memo
qaccess
1
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Many
pack_nmemo
| 137
staffo
The staffo table holds information about outstanding steps, that is, steps that have
been delivered to work queues but not yet released (or otherwise removed).
Structure
The staffo table is structured as follows:
TABLE staffo(
o_flags
o_queuename
o_locker
o_username
o_startname
o_dirname
o_dirdesc
o_procname
o_procdesc
o_casedesc
o_casenum
o_placeno
o_dirflags
o_procflags
o_host
o_pnum
o_pnumcount
o_caseptr
o_reqidhost
o_reqid
o_deadline
o_reqstamp
o_qparam1
o_qparam2
o_qparam3
o_qparam4
o_itempriority
o_priority_changed
o_majorvers
o_minorvers
number(5)
NULL,
varchar2(24)
NULL,
varchar2(24)
NULL,
varchar2(49)
NULL,
varchar2(49)
NULL,
varchar2(12)
NOT NULL,
varchar2(24)
NULL,
varchar2(8)NOT NULL,
varchar2(24)NULL,
varchar2(24)
NULL,
number(20)
NULL,
number(5)
NULL,
number(5)
NULL,
number(5)
NULL,
varchar2(24)
NOT NULL,
number(5)
NOT NULL,
number(5)
NOT NULL,
number(15)
NULL,
number(24)
NOT NULL,
number(20)NOT NULL,
dateNULL,
date
NULL,
varchar2(24)
NULL,
varchar2(24)
NULL,
varchar2(12)
NULL,
varchar2(12)
NULL,
varchar2(24)
NULL,
dateNULL,
number(5)NOT NULL,
number(5)NOT NULL)
Column
Description
o_flags
Flags associated with this work item. For internal use only.
o_queuename
Queue name of the user or group queue that contains this
work item, as defined in the user_names table.
o_locker
Name of the user who has locked the queue (if it is locked),
as defined in the user_names table.
Note: This column is not written to or updated unless the
WIS_WRITELOCKS parameter in the
SWDIR\etc\staffcfg file is set.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
138
| staffo
Column
Description
o_username
Queue name of the user or group queue that contains this
work item, as defined in the user_names table.
o_startname
Username of the user who started the case that this work
item belongs to, as defined in the user_names table.
o_dirname
Step name of the step that generated this work item.
o_dirdesc
Step description of the step that generated this work item.
o_procname
Procedure name of the procedure that generated this work
item, as defined in the proc_index table.
o_procdesc
Procedure description of the procedure that generated this
work item, as defined in the proc_index table.
o_casedesc
Case description of the case that this work item belongs to,
as defined in the case_information table.
o_casenum
Case number of the case that this work item belongs to, as
defined in the case_information table.
o_placeno
Step mark number. For internal use only.
o_dirflags
Step flags. For internal use only.
o_procflags
Procedure flags. For internal use only.
o_host
ID of the node that this work item is associated with, as
defined in the nodes table.
o_pnum
Procedure number of the procedure that generated this
work item, as defined in the proc_index table.
o_pnumcount
Version count of procedure. For internal use only.
o_caseptr
Case control record number. For internal use only.
o_reqidhost
Nodename of the node where the o_reqid is generated,
as defined in the nodes table.
o_reqid
Unique ID for this work item, generated from the
sequences table.
o_deadline
Date and time that the deadline (if defined) expires on this
work item.
If no deadline is set this value appears as 12/31/3000
11:15:00 PM.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 139
Column
Description
o_reqstamp
Timestamp when this work item was delivered to the
queue.
o_qparam1
Value of work queue parameter 1 for this work item.
o_qparam2
Value of work queue parameter 2 for this work item.
o_qparam3
Value of work queue parameter 3 for this work item.
o_qparam4
Value of work queue parameter 4 for this work item.
o_itempriority
Priority definition for this work item, in the format:
base:increment:number:period:type
where:
Primary Key
Foreign Keys
•
base is the base priority value for this work item.
•
increment is the amount that will be added to the item’s
priority value whenever the period expires.
•
number is the number of increments that will be added
to the item’s priority value.
•
period is the time period, in the units specified in type,
which must expire before the item’s priority value is
incremented.
•
type is the unit of measure of the period, either “M” or
“m” for minutes, “H” or “h” for hours or “D” or “d” for
days.
o_priority_changed
Timestamp when the priority value for this work item was
last changed.
o_majorvers
Major version number of the procedure that generated this
work item, as defined in the proc_version table.
o_minorvers
Minor version number of the procedure that generated this
work item, as defined in the proc_version table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_staffo
o_reqid
o_reqidhost
HUGEINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
140
| staffo
Indexes
Storage
Table Activity
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_staffo
o_queuename
HUGEINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
The staffo table contains one row for every outstanding step on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a work item is sent out to a queue.
updated
any of the following occur:
deleted
•
a work item is kept and any changes have been made.
•
a work item’s priority value changes.
•
a work item is opened and the WIS_WRITELOCKS parameter in
the SWDIR\etc\staffcfg file is set.
either:
•
a work item is released or withdrawn.
•
a case is closed or purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 141
pack_data
The pack_data table holds the field name and value of every assigned field in
every outstanding step 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 pack_data table has the following structure:
TABLE pack_data (
reqid
node_id
proc_id
casenum
field_name
field_value
field_flags
number(20)
number(5)
number(5)
number(20)
varchar2(31)
varchar2(255)
number(5)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NOT NULL)
Column
Description
reqid
ID of the work item that this field belongs to, as defined in
the staffo table.
node_id
ID of the node that this field is associated with, as defined
in the nodes table.
proc_id
Number 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 the field, as defined in the case_data table.
field_value
Value of the field.
Note: A memo field has a value of 1. The associated memo
data is stored in the pack_memo table.
field_flags
Status of the field. For internal use only.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
142
| pack_data
Primary Key
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_pack_data
reqid
node_id
field_name
HUGEINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
The pack_data table contains one record for every assigned field that contains
data (i.e. that has a value other than SW_NA) in every outstanding step on the
system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
Either:
•
a step is sent out.
•
a field is assigned a value on a keep or release.
updated
An assigned field has its value changed on a keep or release.
deleted
any of the following occur:
•
a release instruction for a work item is processed by the
background process.
•
a work item is withdrawn.
•
a case is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 143
pack_memo
The pack_memo table stores memo data associated with memo fields in the
pack_data table before upgrading to iProcess Engine 11.6.
Since iProcess Engine 11.6, all the new memo data associated with the memo
fields is stored in the BLOB data type in the pack_nmemo table.
You can migrate case memo data in the pack_memo table to the pack_nmemo
table when upgrading to iProcess Engine 11.6 or migrate them by using the
swutil MIGRATEMEMOS command after the upgrades.
When a work item is sent out to a queue, memo data is copied from the memo
table to the pack_memo table. The client uses the memo data in the pack_memo
table to fill out the form correctly. When the form is kept any changed memo data
is updated in the pack_memo table. When a work item is released memo data is
moved from the pack_memo table to the memo table.
Structure
The pack_memo table is structured as follows:
TABLE pack_memo (
reqid
node_id
proc_id
casenum
memo_id
memo_index
memo_size
memo_data
array_idx
number(20)NOT NULL,
number(5)NOT NULL,
number(5)NOT NULL,
number(20)NOT NULL,
number(4)NOT NULL,
number(10)NOT NULL,
number(10)NOT NULL,
blobNOT NULL,
number(6)NOT NULL)
Column
Description
reqid
ID of the work item that this memo belongs to, as defined
in the staffo table.
node_id
ID of the node that this memo is associated with, as
defined in the nodes table.
proc_id
Number of the procedure that this memo belongs to, as
defined in the proc_index table.
casenum
Case number that this memo belongs to, as defined in the
case_information table.
memo_id
Unique (for this case) ID of this memo.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
144
| pack_memo
Column
Description
memo_index
Index number into the set of rows that make up this memo.
If a memo is longer than 30,000 bytes multiple rows (in
30,000 byte chunks) are used to store the memo data. Each
segment of the memo data is uniquely identified by its
memo_index value.
Note:
•
If you have upgraded your system from one of the
following versions, existing memos are divided into
2000 byte chunks:
— (UNIX Oracle) any Version i9.n-o iProcess Engine,
or from a pre-Version 9.0-o(0.15) Process Engine.
— (Windows Oracle) any Version 9.0-o Process
Engine.
•
Primary Key
However, if a memo is modified, the existing rows are
deleted and then re-added using 30,000 byte chunks.
memo_size
Size (in bytes) of the memo data for this row.
memo_data
Memo data.
array_idx
Either:
•
The array element index number of the memo.
•
-1,
if the memo is not an array memo field.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_pack_memo
reqid
node_id
casenum
memo_id
memo_index
array_idx
HUGEINDEXSPACE
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 145
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
The pack_memo table contains one or more rows for every assigned memo field
that contains data (i.e. that has a value other than SW_NA) in every outstanding
step on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
Either:
•
a step containing memo data is sent out.
•
a memo field is assigned a value on a keep or release.
updated
An assigned memo field has its data changed on a keep or release.
deleted
any of the following occur:
•
a release instruction for a work item containing memo data is
processed by the background process.
•
a work item containing memo data is withdrawn.
•
a case containing memo data is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
146
| pack_nmemo
pack_nmemo
The pack_nmemo table stores memo data associated with memo fields in the
pack_data table after upgrading to iProcess Engine 11.6.
Since iProcess Engine 11.6, all the new memo data associated with the memo
fields is stored in the BLOB data type in the pack_nmemo table.
You can migrate case memo data in the pack_memo table to the pack_nmemo table
when upgrading to iProcess Engine 11.6 or migrate them by using the swutil
MIGRATEMEMOS command after the upgrades.
When a work item is sent out to a queue, memo data is copied from the nmemo
table to the pack_nmemo table. The client uses the memo data in the
pack_nmemo table to fill out the form correctly. When the form is kept any
changed memo data is updated in the pack_nmemo table. When a work item is
released memo data is moved from the pack_nmemo table to the nmemo table.
Structure
The pack_nmemo table is structured as follows:
TABLE pack_nmemo (
reqid
node_id
proc_id
casenum
memo_id
memo_index
memo_size
memo_data
array_idx
number(20)NOT NULL,
number(5)NOT NULL,
number(5)NOT NULL,
number(20)NOT NULL,
number(4)NOT NULL,
number(10)NOT NULL,
number(10)NOT NULL,
blobNOT NULL,
number(6)NOT NULL)
Column
Description
reqid
ID of the work item that this memo belongs to, as defined
in the staffo table.
node_id
ID of the node that this memo is associated with, as
defined in the nodes table.
proc_id
Number of the procedure that this memo belongs to, as
defined in the proc_index table.
casenum
Case number that this memo belongs to, as defined in the
case_information table.
memo_id
Unique (for this case) ID of this memo.
memo_index
Index number into the set of rows that make up this memo.
This value is always 1.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 147
Primary Key
Column
Description
memo_size
Size (in bytes) of the memo data for this row.
memo_data
Memo data.
array_idx
Either:
•
The array element index number of the memo.
•
-1,
if the memo is not an array memo field.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_pack_nmemo
reqid
node_id
casenum
memo_id
memo_index
array_idx
HUGEINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
HUGETABLESIZE
Percentage Increase
HUGETABLEPCTINCREASE
Tablespace
HUGETABLESPACE
The pack_nmemo table contains one row for every assigned memo field that
contains data (for example, that has a value other than SW_NA) in every
outstanding step on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
Either:
•
a step containing memo data is sent out.
•
a memo field is assigned a value on a keep or release.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
148
| pack_nmemo
A row is...
When...
updated
An assigned memo field has its data changed on a keep or release.
deleted
any of the following occur:
•
a release instruction for a work item containing memo data is
processed by the background process.
•
a work item containing memo data is withdrawn.
•
a case containing memo data is purged.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 149
qaccess
The qaccess table stores details of any non-default sort, filter and display criteria
used by iProcess users to access their iProcess queues.
Structure
The qaccess table has the following structure:
TABLE qaccess (
user_name
access_type
queue_name
access_str
varchar2(64)
NOT NULL,
varchar2(8)
varchar2(51)
varchar2(1024)
NOT NULL,
NOT NULL,
NULL)
Column
Description
user_name
Name of the user that this row applies to, as defined in the
user_names table.
access_type
Type of access criteria defined in this row. Any of the
following:
queue_name
•
SORT defines how work items in the specified queue
are sorted.
•
FILTER
•
DISPLAY
•
QVERS defines when the queue was last accessed. For
internal use only.
defines how work items in the specified
queue are filtered.
defines how work items in the specified
queue are displayed.
Name of the (user or group) queue that this row applies to,
as defined in the proc_version table.
Note: Test queues have the suffix /t.
access_str
Primary Key
Foreign Keys
Access criteria. For internal use only.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_qaccess
user_name
queue_name
access_type
MEDIUMINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
150
| qaccess
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The qaccess table contains one row per set of non-default access criteria defined
per user per queue.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a set of non-default access criteria is saved for a user.
updated
a set of non-default access criteria is updated for a user.
deleted
a user reverts to using the default criteria.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 151
Chapter 9
Case Data Queue Parameters
This chapter describes the tables that are used to store information about Case
Data Queue Parameters (CDQPs).
Topics
•
Table Relationships, page 152
•
cdqp_def, page 153
•
cdqp_cfg, page 155
TIBCO iProcess Engine (Oracle) Administrator’s Guide
152
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
cdqp_def
1
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Many
cdqp_cfg
| 153
cdqp_def
The cdqp_def table holds information about each field that is defined as a Case
Data Queue Parameter (CDQP).
Structure
The cdqp_def table has the following structure:
TABLE cdqp_def (
def_id
field_name
data_size
description
is_predict
Primary Key
number(10)
varchar2(31)
number(5)
varchar2(40)
number(1)
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
def_id
Unique identifier for this CDQP, generated from the sequences
table.
field_name
Name of the iProcess field assigned to this CDQP, as defined
in the case_data table.
data_size
Maximum size, in characters, of this CDQP.
description
Name used to represent this CDQP in Work Queue Manager
dialogs.
is_predict
Flag that defines whether (1) or not (0) this CDQP is used for
case prediction.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_cdqp_def
def_id
MEDIUMINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
154
| cdqp_def
Table Activity
Value
Definition
Tablespace
MEDIUMTABLESPACE
The cdqp_def table contains one row for each field on the system that is currently
defined as a CDQP.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a field is first defined as a CDQP.
updated
an existing CDQP definition is updated.
deleted
an existing CDQP definition is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 155
cdqp_cfg
The cdqp_cfg table holds the details of each mapping of a CDQP to a queue.
Structure
The cdqp_cfg table has the following structure:
TABLE cdqp_cfg (
cfg_id
def_id
queue_name
Primary Key
Foreign Keys
number(10)
number(10)
varchar2(48)
Column
Description
cfg_id
Unique ID for this CDQP/queue mapping generated from the
sequences table.
def_id
ID of the CDQP that is mapped to the queue_name queue, as
defined in the cdqp_def table.
queue_name
Name of the iProcess queue that the CDQP defined in def_id
is mapped to, as defined in the user_names table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_cdqp_cfg
cfg_id
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_cdqp_cfg1
def_id
cdqp_def
1. This key enforces the DELETE
Indexes
NOT NULL,
NOT NULL,
NOT NULL)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_cdqp_cfg_fk
def_id
MEDIUMINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
156
| cdqp_cfg
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The cdqp_cfg table contains one row for each mapping of a CDQP to a queue that
is defined on the system. For example, if CDQP1 is mapped to 6 queues, and CDQP2
is mapped to 4 queues, the cdqp_cfg table contains 10 rows.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a field (that is already defined as a CDQP) is mapped to a queue.
updated
never.
deleted
an existing CDQP mapping is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 157
Chapter 10
Queue Participation and Redirection
This chapter describes the tables that are used to store information about iProcess
participation and redirection records.
Topics
•
Table Relationships, page 158
•
part_defn, page 159
•
part_list, page 161
•
redir_defn, page 163
TIBCO iProcess Engine (Oracle) Administrator’s Guide
158
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
part_defn
redir_defn
1
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Many
part_list
| 159
part_defn
The part_defn table holds all the participation records defined on the system. A
participation record defines the dates and times that users are allowed to
participate in a particular queue. (The part_list table defines what users are
allowed to use a particular participation record.)
Structure
The part_defn table has the following structure:
TABLE part_defn (
part_id
queue_name
days_mask
start_time
end_time
style
start_date
end_date
Primary Key
Foreign Keys
number(5)
varchar2(24)
varchar2(7)
number(4)
number(4)
varchar2(24)
number(7)
number(7)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NOT NULL,
NOT NULL)
Column
Description
part_id
Unique ID for this participation record.
queue_name
Name of the queue that this participation record allows users
to participate in, as defined in the user_names table.
days_mask
Days of the week that users can participate in the specified
queue_name. For example, -TWT-SS indicates every day
except Monday or Friday.
start_time
Time of day when participation starts.
end_time
Time of day when participation ends.
style
Not used. Reserved for possible future use.
start_date
Date on which participation starts.
end_date
Date on which participation ends.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_part_defn
part_id
MEDIUMINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
160
| part_defn
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The part_defn table contains one row for each participation record defined on
the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new participation record is added.
updated
an existing participation record is updated.
deleted
an existing participation record is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 161
part_list
The part_list table holds the names of all users who are currently allowed to
participate in other queues.
Structure
The part_list table has the following structure:
TABLE part_list (
part_id
user_name
Primary Key
Foreign Keys
number(5)
varchar2(64)
Column
Description
part_id
ID of the participation record that this participant is a member
of, as defined in the part_defn table.
user_name
Name of the user who is allowed to participate (according to
the participation definition identified by the part_id value),
as defined in the user_names table.
None.
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_part_list1
part_id
part_defn
1. This key enforces the DELETE
Indexes
Storage
NOT NULL,
NOT NULL)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) indexed
Tablespace
idx_part_list_fk
part_id
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
162
| part_list
Table Activity
The part_list table contains one record for each user designated as a participant
in each participation record on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
Either:
•
a new participation record is added.
•
an existing participation record is updated (if a user is added as
part of the update).
updated
never.
deleted
Either:
•
an existing participation record is deleted.
•
an existing participation record is updated (if a user is deleted
as part of the update).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 163
redir_defn
The redir_defn table holds information about which queues are being redirected
and which queues they are being redirected to.
Structure
The redir_defn table has the following structure:
TABLE redir_defn (
redir_id
start_time
start_date
end_time
end_date
queue_name
destination
Primary Key
number(5)
number(4)
number(7)
number(4)
number(7)
varchar2(24)
varchar2(49)
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
redir_id
Unique ID for this redirection record.
start_time
Time that this queue redirection starts.
start_date
Date that this queue redirection starts.
end_time
Time that this queue redirection ends.
end_date
Date that this queue redirection ends.
queue_name
Name of the queue from which work items are to be
redirected, as defined in the user_names table.
destination
Name of the queue to which work items are to be redirected,
as defined in the user_names table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_redir_defn
redir_id
MEDIUMINDEXSPACE
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
164
| redir_defn
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The redir_defn table contains one record for each redirection record defined on
the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a queue is redirected.
updated
the details of an existing redirection are updated.
deleted
redirection for a queue is turned off.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 165
Chapter 11
Administrative Tables
This chapter describes the tables that are used to store administrative information
about the iProcess system.
Topics
•
Table Relationships, page 166
•
flag_table, page 167
•
version, page 170
TIBCO iProcess Engine (Oracle) Administrator’s Guide
166
| Table Relationships
Table Relationships
The flag_table and version tables have no database-enforced relationships with
each other or with any other tables.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 167
flag_table
The flag_table table provides a locking mechanism which controls access to the
four areas of iProcess administrative data - users, lists, roles and TIBCO iProcess
Engine tables. iProcess administrative data is maintained in two sets of tables:
•
The main system data, which iProcess references during normal operation, is
stored in tables without a prefix (for example, user_names or dbs_fields).
•
A copy of this data, containing users’ edits that have not yet been released for
use by the system, is stored in identical tables which have the same name
prefixed by tsys_ (for example, tsys_user_names or tsys_dbs_fields).
The flag_table table contains a row for each area of iProcess administrative
data, and is used to prevent multiple users from editing the same data at the same
time.
When a user edits the data in a particular row (for example, using User Manager
to edit user data), the area_locked flag is set while editing takes place. On
completion of the edit, the area_locked flag is cleared. If changes have been
made, the area_changed flag is set.
When a user requests a Move System Information, the move_req flag is set on any
rows that have the area_changed flag set. When the background process sees a
row with move_req flagged that is not locked, it locks the area and updates the
main system data tables from the tsys_ tables. When the Move System
Information operation completes, all the flags are cleared.
Structure
The flag_table table has the following structure:
TABLE flag_table (
area_id
area_locked
area_changed
move_req
user_name
number(5)
number(1)
number(1)
number(1)
varchar2(64)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
area_id
Unique ID of this area of iProcess administrative data: Either
Users (1), iProcess Tables (2), Lists (3) or Roles (4).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
168
| flag_table
Primary Key
Column
Description
area_locked
Flag that defines whether (1) or not (0) the specified area_id
is locked. The flag is set by:
•
an editor (for example, User Manager) when a user is
editing the specified area, to prevent other users from
editing the same data.
•
the background process while it is updating the system
data, to prevent any users from editing the same data.
area_changed
Flag that defines whether (1) or not (0) the tsys_ tables for
the specified area_id contain modified data.
move_req
Flag that defines whether (1) or not (0) the specified area_id
needs to be updated by a Move System Information operation.
user_name
Name of the user currently altering data in the given area, as
defined in the user_names table. This is either:
•
the name of the user doing the editing, or
•
swpro
if the background process has the area locked.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_flag_table
area_id
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The flag_table table always contains 4 rows - one row for each area of iProcess
administrative data (users, lists, roles and TIBCO iProcess Engine tables).
The table is populated when the iProcess Engine is installed.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 169
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
never.
updated
either:
deleted
•
a Move System Information operation either starts or completes.
•
an edit of a data area either starts or completes.
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
170
| version
version
The version table contains version information on system data: currently either
CDQP or user data. Processes that hold user details query this table to determine
if their internal cache is up to date or not.
Structure
The version table has the following structure:
TABLE version (
version_type
version_value
Primary Key
varchar2(20)
number(6)
NOT NULL,
NOT NULL)
Column
Description
version_type
Data type: either cdqp or user.
version_value
Number that is incremented whenever the data is changed.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_version
version_type
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 171
Table Activity
The version table always contains a single row. The table is populated when the
iProcess Engine is installed.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
never.
updated
a Move System Information operation is performed and data for
users, groups or attributes has been modified (that is, if the
move_req flag for the Users data area in the flag_table is set to 1).
deleted
never.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
172
| version
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 173
Chapter 12
Users and Work Queues
This chapter describes the tables that are used to store information about iProcess
user and group queues.
Topics
•
About User Tables, page 174
•
Table Relationships, page 175
•
user_names, page 176
•
user_attrib, page 178
•
user_setting, page 181
•
user_values, page 182
•
user_memb, page 185
•
leavers, page 187
•
tsys_user_names, page 189
•
tsys_user_attrib, page 190
•
tsys_user_values, page 191
•
tsys_user_memb, page 192
TIBCO iProcess Engine (Oracle) Administrator’s Guide
174
| About User Tables
About User Tables
Note that there are two sets of user tables:
•
The tables prefixed with user_ hold the main system data, which TIBCO
iProcess Engine references during normal operation.
•
The tables prefixed with tsys_user_ hold a copy of this data, containing
users’ edits that have not yet been released for use by the system.
The tsys_user_ tables are purged and rewritten whenever a user edits user data
(either by saving changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil USERINFO, or by using
TIBCO iProcess Objects).
The user_ tables are purged and rewritten with the updated information from the
tables when a Move System Information is performed - if the
flag_table indicates that the appropriate data area has been modified.
tsys_user_
Access to the user_ and tsys_user_ tables is controlled by a locking mechanism
provided by the flag_table table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 175
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
user_memb
tsys_user_memb
user_values
tsys_user_values
tsys_user_attrib
user_attrib
user_names
leavers
tsys_user_names
nodes
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
176
| user_names
user_names
The user_names table holds the names of all iProcess user and group queues
registered on the system.
Structure
The user_names table has the following structure:
TABLE user_names (
node_id
user_id
user_name
user_type
number(5)
number(6)
varchar2(64)
varchar2(1)
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this (user or group) queue is registered on,
as defined in the nodes table.
user_id
Unique ID for this (user or group) queue.
Note: Users and groups have separate ID sequences, as
defined in the user_type column, so both a user and a group
can have the same user_id value.
Primary Key
Foreign Keys
user_name
Name of this (user or group) queue.
user_type
Queue type: user (U) or group (G).
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_user_names
user_id
user_type
node_id
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_user_names1
node_id
nodes
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 177
Indexes
Storage
Table Activity
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_user_names_fk
node_id
MEDIUMINDEXSPACE
idx_user_names
user_name
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The user_names table contains one row for each user or group queue defined on
the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
178
| user_attrib
user_attrib
The user_attrib table holds the definitions of all iProcess attributes defined on
the system.
Structure
The user_attrib table has the following structure:
TABLE user_attrib (
node_id
attribute_id
attribute_name
attribute_type
Primary Key
Foreign Keys
number(5)
number(5)
varchar2(15)
varchar2(1)
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this attribute is defined on, as defined in
the nodes table.
attribute_id
Unique ID for this attribute.
attribute_name
Name of this attribute.
attribute_type
Attribute type: Either ASCII (A), Numeric (R), Date (D) or Time
(T).
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_user_attrib
attribute_id
node_id
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_user_attrib1
node_id
nodes
1. This key enforces the DELETE
Indexes
NOT
NOT
NOT
NOT
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_user_attrib_fk
node_id
SMALLINDEXSPACE
idx_user_attrib
attribute_name
SMALLINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 179
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The user_attrib table contains one or more rows for each iProcess attribute
defined on the system. If an attribute’s maximum length is defined as:
•
24 characters or less, one row is created for the attribute.
•
25 characters or more, one row is created for each 24 characters of the
attribute’s maximum length, and a number is appended to the
attribute_name entry for each row.
The following example illustrates this:
•
DESCRIPTION
•
QSUPERVISORS is a system-defined attribute of type ASCII with a maximum
length of 48 characters; two rows are therefore added to the table QSUPERVISORS_01 and QSUPERVISORS_02, each with a unique attribute_id.
•
JOBDESC
is a system-defined attribute of type ASCII with a maximum
length of 24 characters; one row is therefore added to the table.
is a user-defined attribute of type ASCII with a maximum length of
60 characters; two rows are therefore added to the table - JOBDESC_01 and
JOBDESC_02, each with a unique attribute_id.
node_id
------1
1
1
1
1
1
1
1
1
attribute_id
-----------1
2
3
4
5
6
7
9
10
attribute_name
-------------DESCRIPTION
LANGUAGE
MENUNAME
SORTMAIL
USERFLAGS
QSUPERVISORS_01
QSUPERVISORS_02
JOBDESC_01
JOBDESC_02
attribute_type
-------------A
A
A
A
A
A
A
A
A
TIBCO iProcess Engine (Oracle) Administrator’s Guide
180
| user_attrib
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 181
user_setting
The user_setting table holds the settings that a given user has defined in the
iProcess Workspace (Browser). This enables a user to keep the same settings when
working on any machine.
Structure
The user_setting table has the following structure:
TABLE user_setting (
username
userkey
valindex
vallen
uservalue
varchar2(32 char)
varchar2(128 char)
number(10)
number(10)
blob
NOT NULL,
NOT NULL
NOT NULL,
NOT NULL
NULL
Column
Description
username
The name of the user whose preferences these are, as defined
in the user_names table.
userkey
The key of the user.
valindex
The index number into the set of rows that make up the user
value.
If the user value is longer than 30,000 bytes, multiple rows (in
30,000 byte chunks) are used to store the user value. Each
segment of the user value is uniquely identified by its
vaindex value.
Note: Since iProcess Engine 11.6, the volume of a row is
upgraded. The value of valindex might always be 1.
Primary Key
vallen
The size (in bytes) of the memo data for this row.
uservalue
The value of the particular user identified by userkey.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_user_setting
username
userkey
valindex
BIGINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
182
| user_values
user_values
The user_values table holds the values for all attributes defined for all users and
groups on the system.
Structure
The user_values table has the following structure:
TABLE user_values (
node_id
user_id
attribute_id
attribute_value
user_type
number(5)
number(6)
number(5)
varchar2(24)
varchar2(1)
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NOT NULL)
Column
Description
node_id
ID of the node that this attribute is defined on, as defined in
the nodes table.
user_id
ID of the (user or group) queue that this attribute value is
associated with, as defined in the user_names table.
attribute_id
ID of the attribute that this attribute value is associated with,
as defined in the user_attrib table.
attribute_value
Value of this attribute.
Note: If an attribute value is longer than 24 characters multiple
rows are used to store the value. Each segment of the value is
uniquely identified by its attribute_id value, as defined in
the user_attrib table.
user_type
Primary Key
Type of the (user or group) queue that this attribute value is
associated with, as defined in the user_names table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_user_values
user_id
attribute_id
user_type
node_id
BIGINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 183
Foreign Keys
The following foreign keys are defined for this table.
Key Name1
Column(s)
Referenced in Table...
fk_user_values1
node_id
user_id
user_type
user_names
fk_user_values2
attribute_id
node_id
user_attrib
1. These keys enforce the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_user_values_fk1
node_id
user_id
user_type
BIGINDEXSPACE
idx_user_values_fk2
attribute_id
node_id
BIGINDEXSPACE
idx_user_values
attribute_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
Tablespace
BIGTABLESPACE
The user_values table contains one or more rows per assigned attribute per
(user or group) queue on the system. If an attribute value’s length is:
•
24 characters or less, one row is created for the attribute value.
•
more than 24 characters, one row is created for each 24 characters of the
attribute value.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
184
| user_values
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 185
user_memb
The user_memb table defines users’ membership of groups.
Structure
The user_memb table has the following structure:
TABLE user_memb (
node_id
user_id
group_id
Primary Key
Foreign Keys
Indexes
Storage
number(5)
number(6)
number(6)
NOT NULL,
NOT NULL,
NOT NULL)
Column
Description
node_id
ID of the node that this user/group combination is defined on,
as defined in the nodes table.
user_id
ID of the user who belongs to the group, as defined in the
user_names table.
group_id
ID of the group that the user belongs to, as defined in the
user_names table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_user_memb
user_id
node_id
group_id
BIGINDEXSPACE
None.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_user_memb
user_id
group_id
BIGINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
BIGTABLESIZE
Percentage Increase
BIGTABLEPCTINCREASE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
186
| user_memb
Table Activity
Value
Definition
Tablespace
BIGTABLESPACE
The user_memb table contains one row for every user/group member relationship
defined on the system. For example, if a user is a member of three different
groups, there are three rows for that user in this table.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Users data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_user_names table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 187
leavers
The leavers table stores information about the recently deleted users.
Structure
The leavers table has the following structure:
TABLE leavers (
node_id
user_name
destination
timestamp
status
Primary Key
number(5)
varchar2(64)
varchar2(64)
number(20)
number(2)
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this (user or group) queue is registered on,
as defined in the nodes table.
user_name
Name of this deleted user.
destination
Description of this deleted user.
timestamp
When the current status is set.
status
Status of the redirection performed on the leaver. One of the
following values:
•
0 (LEAVER_WILL_BE_REDIRECTED) The leaver will be
redirected.
•
1 (LEAVER_IS_BEING_REDIRECTED) The leaver is being
redirected.
•
2 (LEAVER_FINISH_REDIRECTION) The leaver has been
redirected.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_leavers
user_name
node_id
MEDIUMINDEXSPACE
Foreign Keys
None.
Indexes
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
188
| leavers
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The leavers table contains one row for each recently deleted user.
Rows are added, updated, and deleted in the following situations.
A row is...
When...
added
a user is deleted.
updated
one of the following conditions is met:
deleted
•
the iProcess Engine is started,
•
the status of the deleted user is changed.
all of the following conditions are met:
•
the status field is set to 2 (LEAVER_FINISH_REDIRECTION),
•
the time length definied by the WQS_LEAVER_PERIOD process
attribute has passed since the status field was set to 2,
•
the iProcess Engine is shut down, or a Move System
Information operation is performed.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 189
tsys_user_names
The tsys_user_names table is a copy of the user_names table. It is identical to the
user_names table except for the following:
•
The primary key name is pk_tsys_user_names.
•
No foreign keys or indexes are defined.
•
The table is purged and rewritten when a user edits user data, either by saving
changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil USERINFO, or by
using TIBCO iProcess Objects. (The flag_table is also updated to indicate that
the Users data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
190
| tsys_user_attrib
tsys_user_attrib
The tsys_user_attrib table is a copy of the user_attrib table. It is identical to the
user_attrib table except for the following:
•
The primary key name is pk_tsys_user_attrib.
•
No foreign keys or indexes are defined.
•
The table is purged and rewritten when a user edits user data, either by saving
changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil USERINFO, or by
using TIBCO iProcess Objects. (The flag_table is also updated to indicate that
the Users data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 191
tsys_user_values
The tsys_user_values table is a copy of the user_values table. It is identical to
the user_values table except for the following:
•
The primary key name is pk_tsys_user_values.
•
The foreign key names are fk_tsys_user_values1 and
fk_tsys_user_values2.
•
The index names are idx_tsys_user_values_fk1 and
idx_tsys_user_values_fk2.
•
The table is purged and rewritten when a user edits user data, either by saving
changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil USERINFO, or by
using TIBCO iProcess Objects. (The flag_table is also updated to indicate that
the Users data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
192
| tsys_user_memb
tsys_user_memb
The tsys_user_memb table is a copy of the user_memb table. It is identical to the
user_memb table except for the following:
•
The primary key name is pk_tsys_user_memb.
•
The index name is idx_tsys_user_memb.
•
The table is purged and rewritten when a user edits user data, either by saving
changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil USERINFO, or by
using TIBCO iProcess Objects. (The flag_table is also updated to indicate that
the Users data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 193
Chapter 13
Roles
This chapter describes the tables that are used to store information about iProcess
roles.
Topics
•
About Roles, page 194
•
Table Relationships, page 195
•
role_users, page 196
•
tsys_role_users, page 198
TIBCO iProcess Engine (Oracle) Administrator’s Guide
194
| About Roles
About Roles
Note that:
•
The role_users table holds the main system data, which TIBCO iProcess
Engine references during normal operation.
•
The tsys_role_users holds a copy of this data, containing users’ edits that have
not yet been released for use by the system.
The tsys_role_users table is purged and rewritten whenever a user edits role data
(either by saving changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil ROLEINFO, or by using
TIBCO iProcess Objects).
When a Move System Information is performed, if the tsys_role_users table has
been changed, the role_users table is purged and rewritten with the updated
information from the tsys_role_users table.
Access to the role_users and tsys_role_users tables is controlled by a locking
mechanism provided by the flag_table table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 195
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
tsys_role_users
role_users
nodes
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
196
| role_users
role_users
The role_users table holds information about which roles are defined on the
system, and which queues are assigned to them.
Structure
The role_users table has the following structure:
TABLE role_users (
node_id
role_id
role_name
usernode_name
Primary Key
Foreign Keys
number(5)
number(5)
varchar2(15)
varchar2(49)
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this role is registered on, as defined in the
nodes table.
role_id
Unique ID for this role.
role_name
Name of this role.
usernode_name
Name of the (user or group) queue that the role is assigned to,
as defined in the user_names table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_role_users
role_id
node_id
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_role_users1
node_id
nodes
1. This key enforces the DELETE
Indexes
NOT
NOT
NOT
NOT
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_role_users_fk
node_id
MEDIUMINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 197
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The role_users table contains one row for each role defined on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Roles data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_role_users table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Roles data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_role_users table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
198
| tsys_role_users
tsys_role_users
The tsys_role_users table is a copy of the role_users table. It is identical to the
role_users table except for the following:
•
The primary key name is pk_tsys_role_users.
•
The foreign key name is fk_tsys_role_users_fk.
•
The index name is idx_tsys_role_users_fk.
•
The table is purged and rewritten when a user edits role data, either by saving
changes made in the User Manager utility in the TIBCO iProcess
Administrator, importing data with SWDIR\bin\swutil ROLEINFO, or by
using TIBCO iProcess Objects. (The flag_table is also updated to indicate that
the Roles data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 199
Chapter 14
TIBCO iProcess Tables
This chapter describes the tables that are used to store information about TIBCO
iProcess tables.
This chapter uses the term TIBCO iProcess table to mean an iProcess table, and table
to mean an Oracle table.
Topics
•
About TIBCO iProcess Tables, page 200
•
Table Relationships, page 201
•
dbs_names, page 202
•
dbs_fields, page 204
•
dbs_values, page 206
•
tsys_dbs_names, page 208
•
tsys_dbs_fields, page 209
•
tsys_dbs_values, page 210
•
str_dbs_names, page 211
•
str_dbs_fields, page 212
•
ttmp_dbs_names, page 213
•
ttmp_dbs_fields, page 214
•
ttmp_dbs_values, page 215
TIBCO iProcess Engine (Oracle) Administrator’s Guide
200
| About TIBCO iProcess Tables
About TIBCO iProcess Tables
Note that there are four sets of related tables, as follows:
Prefix
Description
dbs_
Hold the main system data on installed TIBCO iProcess tables,
which iProcess references during normal operation.
str_dbs_
Hold the main system data on uninstalled TIBCO iProcess tables,
which iProcess references during normal operation.
Note: There is no str_dbs_values table, because no data is
associated with uninstalled TIBCO iProcess tables.
tsys_dbs_
Hold a copy of the main (dbs_ and str_dbs_) system data,
containing users’ edits that have not yet been released for use by
the system.
ttmp_dbs_
Temporary tables used only when importing TIBCO iProcess
Engine tables (using SWDIR\bin\swutil IMPORT).
The tsys_dbs_ tables are purged and rewritten whenever a user edits TIBCO
iProcess Engine table data (either by saving changes made in the Table Manager
utility in the TIBCO iProcess Administrator, modifying data with
SWDIR\bin\swutil IMPORT or DELTAB, or by using TIBCO iProcess Objects).
When a Move System Information is performed, if the tsys_dbs_ tables have
been changed, the dbs_ and/or str_dbs_ tables are purged and rewritten with
the updated information from the tsys_dbs_ tables.
Access to the dbs_ and tsys_dbs_ tables is controlled by a locking mechanism
provided by the flag_table table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 201
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
ttmp_dbs_values
dbs_values
tsys_dbs_values
ttmp_dbs_fields
dbs_fields
tsys_dbs_fields
dbs_names
tsys_dbs_names
ttmp_dbs_names
str_dbs_fields
nodes
str_dbs_names
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
202
| dbs_names
dbs_names
The dbs_names table holds the names of all installed TIBCO iProcess Engine
tables.
Structure
The dbs_names table has the following structure:
TABLE dbs_names (
node_id
dbs_id
dbs_name
Primary Key
Foreign Keys
number(5)
number(5)
varchar2(15)
Column
Description
node_id
ID of the node that this iProcess Engine table is defined on, as
defined in the nodes table.
dbs_id
Unique ID for this iProcess Engine table.
dbs_name
Name of this iProcess Engine table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_dbs_names
dbs_id
node_id
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_dbs_names1
node_id
nodes
1. This key enforces the DELETE
Indexes
NOT NULL,
NOT NULL,
NOT NULL)
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_dbs_names_fk
node_id
SMALLINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 203
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The dbs_names table contains one row for each installed TIBCO iProcess table on
the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Tables data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_dbs_names table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Tables data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_dbs_names table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
204
| dbs_fields
dbs_fields
The dbs_fields table holds the field definitions for every field in every installed
iProcess table.
Structure
The dbs_fields table has the following structure:
TABLE dbs_fields (
node_id
dbs_id
field_id
field_name
field_type
field_length
field_decimals
Primary Key
Foreign Keys
number(5)
number(5)
number(5)
varchar2(15)
varchar2(1)
number(5)
number(5)
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this field is defined on, as defined in the
nodes table.
dbs_id
ID of the table that this field is defined in, as defined in the
dbs_names table.
field_id
Unique ID for the field in this TIBCO iProcess Engine table.
field_name
Name of this field.
field_type
Field type: Either ASCII (A), Numeric (R), Date (D) or Time (T).
field_length
Length of this field, in characters.
field_decimals
Number of characters after the decimal place in this field
(relevant only for Numeric fields).
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_dbs_fields
dbs_id
field_id
node_id
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_dbs_fields1
node_id
dbs_id
dbs_names
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 205
1. This key enforces the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_dbs_fields_fk
dbs_id
node_id
MEDIUMINDEXSPACE
idx_dbs_fields
field_id
dbs_id
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The dbs_fields table contains one row for each field in each installed TIBCO
iProcess table.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Tables data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_dbs_fields table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Tables data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_dbs_fields table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
206
| dbs_values
dbs_values
The dbs_values table holds all field values for all installed TIBCO iProcess Engine
tables.
Structure
The dbs_values table has the following structure:
TABLE dbs_values (
node_id
dbs_id
record_id
field_id
field_value
Primary Key
Foreign Keys
number(5)
number(5)
number(5)
number(5)
varchar2(30)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
node_id
ID of the node that this field value is stored on, as defined in
the nodes table.
dbs_id
ID of the table that this field value is stored in, as defined in the
dbs_names table.
record_id
Unique ID for this record in the iProcess Engine table.
field_id
ID of the field held in this record, as defined in the dbs_fields
table.
field_value
Value of the field in this record.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_dbs_values
dbs_id
record_id
field_id
node_id
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_dbs_values1
dbs_id
field_id
node_id
dbs_fields
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 207
Indexes
Storage
Table Activity
The following indexes are defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_dbs_values_fk
dbs_id
field_id
node_id
MEDIUMINDEXSPACE
idx_dbs_values
record_id
field_id
dbs_id
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The dbs_values table contains one row for each field of each record in each
installed TIBCO iProcess table on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Tables data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_dbs_values table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Tables data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_dbs_values table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
208
| tsys_dbs_names
tsys_dbs_names
The tsys_dbs_names table is a copy of the dbs_names table. It is identical to the
dbs_names table except for the following:
•
The primary key name is pk_tsys_dbs_names.
•
The foreign key name is fk_tsys_dbs_names.
•
The index name is idx_tsys_dbs_names_fk.
•
The table is purged and rewritten when a user edits iProcess Engine table
data, either by saving changes made in the Table Manager utility in the TIBCO
iProcess Administrator, modifying data with SWDIR\bin\swutil IMPORT or
DELTAB, or by using TIBCO iProcess Objects. (The flag_table is also updated to
indicate that the Tables data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 209
tsys_dbs_fields
The tsys_dbs_fields table is a copy of the dbs_fields table. It is identical to the
dbs_fields table except for the following:
•
The primary key name is pk_tsys_dbs_fields.
•
The foreign key name is fk_tsys_dbs_fields.
•
The index names are idx_tsys_dbs_fields_fk and idx_tsys_dbs_fields.
•
The table is purged and rewritten when a user edits iProcess Engine table
data, either by saving changes made in the Table Manager utility in the
TIBCO iProcess Administrator, modifying data with SWDIR\bin\swutil
IMPORT or DELTAB, or by using TIBCO iProcess Objects. (The flag_table is also
updated to indicate that the Tables data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
210
| tsys_dbs_values
tsys_dbs_values
The tsys_dbs_values table is a copy of the dbs_values table. It is identical to the
dbs_values table except for the following:
•
The primary key name is pk_tsys_dbs_values.
•
The foreign key name is fk_tsys_dbs_values.
•
The index names are idx_tsys_dbs_values_fk and idx_tsys_dbs_values.
•
The table is purged and rewritten when a user edits iProcess Engine table
data, either by saving changes made in the Table Manager utility in the TIBCO
iProcess Administrator, modifying data with SWDIR\bin\swutil IMPORT or
DELTAB, or by using TIBCO iProcess Objects. (The flag_table is also updated to
indicate that the Tables data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 211
str_dbs_names
The str_dbs_names table is a copy of the dbs_names table. It is identical to the
dbs_names table except for the following:
•
It holds the names of all uninstalled TIBCO iProcess Engine tables.
•
The primary key name is pk_str_dbs_names.
•
No foreign keys or indexes are defined.
•
It contains one row for each uninstalled TIBCO iProcess table on the system.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
212
| str_dbs_fields
str_dbs_fields
The str_dbs_fields table is a copy of the dbs_fields table. It is identical to the
dbs_fields table except for the following:
•
It holds the field definitions for every field in every uninstalled TIBCO iProcess
table.
•
The primary key name is pk_str_dbs_fields.
•
No foreign keys are defined.
•
The index name is idx_str_dbs_fields.
•
It contains one row for each field in each uninstalled TIBCO iProcess table on
the system.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 213
ttmp_dbs_names
The ttmp_dbs_names table is a temporary copy of the dbs_names table. It is
identical to the dbs_names table except for the following:
•
The primary key name is pk_ttmp_dbs_names.
•
No foreign keys or indexes are defined.
•
In most situations the number of rows in the table should be zero.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
214
| ttmp_dbs_fields
ttmp_dbs_fields
The ttmp_dbs_fields table is a temporary copy of the dbs_fields table. It is
identical to the dbs_fields table except for the following:
•
The primary key name is pk_ttmp_dbs_fields.
•
No foreign keys or indexes are defined.
•
In most situations the number of rows in the table should be zero.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 215
ttmp_dbs_values
The ttmp_dbs_values table is a temporary copy of the dbs_values table. It is
identical to the dbs_values table except for the following:
•
The primary key name is pk_ttmp_dbs_values.
•
No foreign keys or indexes are defined.
•
In most situations the number of rows in the table should be zero.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
216
| ttmp_dbs_values
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 217
Chapter 15
Lists
This chapter describes the tables that are used to store information about iProcess
lists.
Topics
•
About Lists, page 218
•
Table Relationships, page 219
•
list_names, page 220
•
list_values, page 222
•
tsys_list_names, page 224
•
tsys_list_values, page 225
•
ttmp_list_names, page 226
•
ttmp_list_values, page 227
TIBCO iProcess Engine (Oracle) Administrator’s Guide
218
| About Lists
About Lists
Note that there are three sets of related tables, as follows:
Prefix
Description
list_
Hold the main system data on iProcess lists, which iProcess
Engine references during normal operation.
tsys_list_
Hold a copy of the main system data, containing users’ edits that
have not yet been released for use by the system.
ttmp_list_
Temporary tables used only when importing iProcess lists (using
SWDIR\bin\swutil IMPORT).
The tsys_list_ tables are purged and rewritten whenever a user edits iProcess
lists data (either by saving changes made in the List Manager utility in the TIBCO
iProcess Administrator, modifying data with SWDIR\bin\swutil IMPORT, or by
using TIBCO iProcess Objects).
The list_ tables are purged and rewritten with the updated information from the
tsys_list_ tables when a Move System Information is performed - if the
flag_table indicates that the Lists data area has been modified
Access to the list_ and tsys_list_ tables is controlled by a locking mechanism
provided by the flag_table table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 219
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
list_values
tsys_list_values
ttmp_list_values
list_names
tsys_list_names
ttmp_list_names
nodes
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
220
| list_names
list_names
The list_names table holds the names and definitions of all iProcess lists defined
on the system.
Structure
The list_names table has the following structure:
TABLE list_names (
node_id
list_id
list_name
list_type
list_length
list_decimals
Primary Key
Foreign Keys
number(5)
number(5)
varchar2(15)
varchar2(1)
number(5)
number(5)
NOT
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
node_id
ID of the node that this list is stored on, as defined in the nodes
table.
list_id
Unique ID for this list.
list_name
Name of this list.
list_type
List type: Either ASCII (A), Numeric (R), Date (D) or Time (T).
list_length
Length of this list, in characters.
list_decimals
Number of characters after the decimal place in this list
(relevant only for Numeric lists).
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_list_names
list_id
node_id
SMALLINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_list_names1
node_id
nodes
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 221
Indexes
Storage
Table Activity
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_list_names_fk
node_id
SMALLINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
SMALLTABLESIZE
Percentage Increase
SMALLTABLEPCTINCREASE
Tablespace
SMALLTABLESPACE
The list_names table contains one row for each iProcess list on the system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Lists data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_list_names table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Lists data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_list_names table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
222
| list_values
list_values
The list_values table holds the value of every item in every iProcess list on the
system.
Structure
The list_values table has the following structure:
TABLE list_values (
node_id
list_id
record_id
list_value
Primary Key
Foreign Keys
number(5)
number(5)
number(5)
varchar2(30)
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
node_id
ID of the node that this list item is stored on, as defined in the
nodes table.
list_id
ID of the list that this list item is stored in, as defined in the
list_names table.
record_id
Unique ID for this list item.
list_value
Value of this list item.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_list_values
list_id
record_id
node_id
MEDIUMINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_list_values1
node_id
list_id
list_names
1. This key enforces the DELETE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
CASCADE
referential action.
| 223
Indexes
Storage
Table Activity
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_list_values_fk
list_id
node_id
MEDIUMINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The list_values table contains one row for each iProcess list item defined on the
system.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a Move System Information is performed, if the flag_table indicates
that the Lists data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_list_values table.
updated
never.
deleted
a Move System Information is performed, if the flag_table indicates
that the Lists data area has been modified.
Note: The table is purged and rewritten using the values from the
tsys_list_values table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
224
| tsys_list_names
tsys_list_names
The tsys_list_names table is a copy of the list_names table. It is identical to the
list_names table except for the following:
•
The primary key name is pk_tsys_list_names.
•
The foreign key name is fk_tsys_list_names.
•
The index name is idx_tsys_list_names_fk.
•
The table is purged and rewritten when a user edits iProcess list data, either
by saving changes made in the List Manager utility in the TIBCO iProcess
Administrator, modifying data with SWDIR\bin\swutil IMPORT, or by using
TIBCO iProcess Objects. (The flag_table is also updated to indicate that the
Lists data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 225
tsys_list_values
The tsys_list_values table is a copy of the list_values table. It is identical to the
list_values table except for the following:
•
The primary key name is pk_tsys_list_values.
•
The foreign key name is fk_tsys_list_values.
•
The index name is idx_tsys_list_values_fk.
•
The table is purged and rewritten when a user edits iProcess list data, either
by saving changes made in the List Manager utility in the TIBCO iProcess
Administrator, modifying data with SWDIR\bin\swutil IMPORT, or by using
TIBCO iProcess Objects. (The flag_table is also updated to indicate that the
Lists data area has been modified.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
226
| ttmp_list_names
ttmp_list_names
The ttmp_list_names table is a temporary copy of the list_names table. It is
identical to the list_names table except for the following:
•
The primary key name is pk_ttmp_list_names.
•
The foreign key name is fk_ttmp_list_names.
•
The index name is idx_ttmp_list_names_fk.
•
In most situations the number of rows in the table should be zero.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 227
ttmp_list_values
The ttmp_list_values table is a temporary copy of the list_values table. It is
identical to the list_values table except for the following:
•
The primary key name is pk_ttmp_list_values.
•
The foreign key name is fk_ttmp_list_valuesfk_ttmp_list_value.
•
The index name is idx_ttmp_list_values_fk.
•
In most situations the number of rows in the table should be zero.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
228
| ttmp_list_values
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 229
Chapter 16
iProcess Server Plug-ins
This chapter describes the table that is used to store information about iProcess
server plug-ins that are installed on this iProcess Engine.
Topics
•
Table Relationships, page 230
•
eai_registry, page 231
TIBCO iProcess Engine (Oracle) Administrator’s Guide
230
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
eai_registry
node_cluster
1
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Many
| 231
eai_registry
The eai_registry table stores information about each iProcess server plug-in
that is installed on this iProcess Engine. The background process reads this table
to determine which iProcess server plug-ins to start.
Structure
The eai_registry table has the following structure:
TABLE eai_registry(
eai_type
logical_machine_id
release_version
plugin_library
init_params
varchar2(20)
number(5)
varchar2(32)
varchar2(256)
varchar2(1024)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL)
Column
Description
eai_type
Short name for the EAI Step type that this iProcess server
plug-in supports. For example, one of the following:
logical_machine_i
d
•
EAIDB
EAI Database
•
EAISCR
•
EAIWEBSERVICES
EAI Script
EAI Web Services
ID of the computer that this iProcess server plug-in is
installed on, as defined in the node_cluster table.
Note: If a node cluster architecture is in use, the iProcess
server plug-in must be installed on each server in the cluster
that is configured to run a background process.
Primary Key
release_version
Version number of this iProcess server plug-in (for example,
i10.0-o(3.0)).
plugin_library
Pathname (on this logical_machine_id) where this EAI
server plug-in is installed.
init_params
Startup parameters used by this iProcess server plug-in.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_eai_registry
eai_type
logical_machine_id
TINYINDEXSPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
232
| eai_registry
Foreign Keys
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_eai_registry1
logical_machine_id
node_cluster
1. This key enforces the DELETE
Indexes
Storage
Table Activity
CASCADE
referential action.
The following index is defined for this table.
Index Name
Column(s) Indexed
Tablespace
idx_eai_registry_fk
logical_machine_id
TINYINDEXSPACE
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The eai_registry table contains one row for each iProcess server plug-in that is
installed on each server in this iProcess Engine node.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
an iProcess server plug-in is installed.
updated
an iProcess server plug-in is upgraded or amended.
deleted
an iProcess server plug-in is deleted.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 233
Chapter 17
Firewall Port Ranges
This chapter describes the tables that store the port range data that is used when
the iProcess Engine is used in a firewalled environment.
For more information see:
•
"Using the iProcess Engine in a Firewalled Environment" in TIBCO iProcess
Engine Architecture Guide.
•
"Administering Firewall Port Ranges" in TIBCO iProcess Engine Administrator's
Guide.
•
Table Relationships, page 234
•
port_range, page 235
•
port_range_active, page 238
•
port_range_conf, page 240
•
port_range_nodes, page 242
Topics
TIBCO iProcess Engine (Oracle) Administrator’s Guide
234
| Table Relationships
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
•
Only database-enforced relationships, that is, foreign keys, are shown.
•
Logical relationships, that is, those used by iProcess, are not shown.
port_range
port_range_nodes
port_range_conf
1
Many
TIBCO iProcess Engine (Oracle) Administrator’s Guide
port_range_active
| 235
port_range
The port_range table contains the firewall data about individual port/RPC
numbers that lie within port range configurations defined on this iProcess Engine.
Structure
The port_range table has the following structure:
TABLE port_range (
port_range_id
number(10)
slot_number
number(10)
rpc_number
number(10)
port_number
number(10)
status
number(10)
logical_machine_id
number(10)
logical_process_name varchar2(10)
logical_process_instancenumber(10)
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
NULL,
NULL)
Column
Description
port_range_id
Unique ID of the port range configuration that this
port/RPC number belongs to, as defined in the
port_range_conf table.
slot_number
Internal slot in memory used by this port/RPC number.
rpc_number
RPC number.
port_number
Port number.
status
Defines whether this port/RPC number is available or in
use by a process. One of the following values:
logical_machine_id
•
-2
Reserved for future use.
•
-1
•
0
•
1 Allocated to the process defined by the
logical_machine_id,
logical_process_name and
logical_process_instance columns.
Unobtainable. (A process tried to use the port but
found that it was already in use.)
Unallocated.
Either:
•
ID of the server where the process instance that this
port/RPC number has been allocated to runs, as
defined in the node_cluster table.
•
0, if the port/RPC number
has not been allocated to
a process.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
236
| port_range
Primary Key
Foreign Keys
Column
Description
logical_process_name
Logical name of the process instance that this port/RPC
number has been allocated to.
logical_process_inst
ance
Unique ID of the process instance that this port/RPC
number has been allocated to.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_port_range
port_range_id,
slot_number
TINYINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_port_range
port_range_id
port_range_conf
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The port_range table contains one row per port/RPC number used by the
iProcess Engine (if you are using iProcess on a network with a firewall and using
port range filtering or RPC filtering).
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a user defines a new port range configuration, that is, a new record
in the port_range_conf table, or modifies the range of an existing
port range configuration, using the SWDIR\util\swadm utility.
updated
a process is assigned a slot, or frees up a slot.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 237
A row is...
When...
deleted
a user deletes a port range configuration, that is, a record in the
port_range_conf table, using the SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
238
| port_range_active
port_range_active
The port_range_active table lists what port/RPC numbers are being actively
used to provide RPC services by iProcess Engine processes.
The table only lists processes that provide RPC services. These processes are
RPC_TCP_LI, RPC_UDP_LI, RPC_POOL, RPC_SWIP, WQS and WIS.
Structure
The port_range_active table has the following structure:
TABLE port_range_active (
logical_machine_id
integerNOT NULL,
logical_process_name varchar2(10)NOT NULL,
logical_process_instanceintegerNOT NULL,
process_id
integerNOT NULL,
port_number
integerNOT NULL,
rpc_number
integerNOT NULL)
Column
Description
logical_machine_id
ID of the server where this process instance runs, as
defined in the node_cluster table.
logical_process_name
Logical name of this process instance.
Note: See "Administering iProcess Engine Server
Processes" in TIBCO iProcess Engine Administrator's
Guide for a list of logical process names.
Primary Key
Foreign Keys
logical_process_insta
nce
Unique ID for this process instance.
process_id
Operating system process ID of this process instance.
port_number
Port number being used by this process instance.
rpc_number
RPC number being used by this process instance.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_port_range_active
logical_machine_id,
logical_process_name,
logical_process_instance
TINYINDEXSPACE
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 239
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The port_range_active table contains one row per port/RPC number that is
being actively used by the iProcess Engine.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
an iProcess Engine process allocates itself a port/RPC number from
either the port_range table or the operating system.
updated
never.
deleted
an iProcess Engine process stops using its assigned port/RPC
number, that is, is shut down.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
240
| port_range_conf
port_range_conf
The port_range_conf table defines the available port range configuration(s) for
this iProcess Engine, for use with a firewall.
In pre-10.4 iProcess Engine versions this information was defined in the RNGMODE
parameter of the SWDIR\etc\staffcfg file.
Structure
The port_range_conf table has the following structure:
TABLE port_range_conf (
port_range_id
integer
range_mode
smallint
range_size
integer
port_start
integer
rpc_start
integer
NOT
NOT
NOT
NOT
NOT
NULL,
NULL,
NULL,
NULL,
NULL)
Column
Description
port_range_id
Unique ID of this particular port range configuration.
range_mode
Mode used by this port range configuration. One of the
following values:
•
0 No Port or RPC ranging. A process uses the next
available port number assigned by the operating system,
and an RPC number based on the process ID.
•
1 Port ranging. A process uses a port number allocated
from within the defined range, and an RPC number based
on the process ID.
•
2 RPC ranging. A process uses the next available port
number assigned by the operating system, and an RPC
number allocated from within the defined range.
•
3 Port and RPC ranging. A process uses both a port
number and an RPC number allocated from within the
defined ranges.
range_size
The number of port and RPC numbers allowed in the port
number and RPC number ranges.
port_start
The first number in the defined range of port numbers. (The
last number = port_start + range_size.)
rpc_start
The first number in the defined range of RPC numbers. (The
last number = rpc_start + range_size.)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 241
Primary Key
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_port_range_conf
port_range_id
TINYINDEXSPACE
Foreign Keys
None.
Indexes
None.
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The port_range_conf table contains one row per defined port range
configuration.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a user defines a new port range configuration using the
SWDIR\util\swadm utility.
updated
a user changes an existing port range configuration, that is, either
mode, range size or starting port/RPC number is changed, using
the SWDIR\util\swadm utility.
deleted
a user deletes an existing port range configuration using the
SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
242
| port_range_nodes
port_range_nodes
The port_range_nodes table lists which port range configurations (as defined in
the port_range_conf table) are being used by which machines in the iProcess
Engine node (as defined in the node_cluster table).
It is not mandatory for each machine in an iProcess Engine node to have to sit
behind the same firewall. Different machines may use different firewalls, or no
firewall.
Structure
The port_range_nodes table has the following structure:
TABLE port_range_nodes (
port_range_id
integer
logical_machine_id
integer
Primary Key
Foreign Keys
Indexes
NOT NULL,
NOT NULL)
Column
Description
port_range_id
ID of a particular port range configuration, as defined in the
port_range_conf table.
logical_machine_i
d
ID of the server using this port range configuration, as
defined in the node_cluster table.
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_port_range_nodes
port_range_id,
logical_machine_id
TINYINDEXSPACE
The following foreign key is defined for this table.
Key Name
Column(s)
Referenced in Table...
fk_port_range_nodes
port_range_id
port_range_conf
None.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 243
Storage
Table Activity
The following STORAGE values are defined for this table.
Value
Definition
Initial
TINYTABLESIZE
Percentage Increase
TINYTABLEPCTINCREASE
Tablespace
TINYTABLESPACE
The port_range_nodes table contains one row per server that sits behind a
firewall (port range configuration) defined in the port_range table.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a user adds a machine to the list of servers that sit behind a
particular port range configuration, using the
SWDIR\util\swadm utility.
updated
a user moves a machine from sitting behind one particular port
range configuration to another, using the SWDIR\util\swadm
utility.
deleted
a user removes a machine from the list of servers that sit behind a
particular port range configuration, using the
SWDIR\util\swadm utility.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
244
| port_range_nodes
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 245
Chapter 18
WQS/WIS Shared Memory
This chapter describes the wqs_index table.
Topics
•
Table Relationships, page 246
•
wqs_index, page 247
TIBCO iProcess Engine (Oracle) Administrator’s Guide
246
| Table Relationships
Table Relationships
The wqs_index table has no database-enforced relationships with other tables.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 247
wqs_index
The wqs_index table holds the information about each work queue on the system
that is stored in shared memory by the WQS/WIS processes.
Structure
The wqs_index table has the following structure:
TABLE wqs_index(
logical_machine_id
number(5)NOT NULL,
logical_process_instancenumber(5)NOT NULL,
queue_name
varchar(24)NOT NULL,
total_items
number(20)NULL,
last_cache_time
number(20)NULL,
new_items
number(20)NULL,
deadline_items
number(20)NULL,
urgent_items
number(20)NULL,
redir_queue_name
varchar(24)NULL,
is_cached
number(1)NOT NULL,
is_group
number(1)NOT NULL,
is_test
number(1)NOT NULL,
is_redirected
number(1)NOT NULL,
is_disabled
number(1)NOT NULL)
Column Name
Description
logical_machine_id
ID of the server where the WIS process that is handling
this work queue is running, as defined in the
node_cluster table.
logical_process_insta
nce
ID of the instance of the WIS process that is handling
this work queue, as defined in the process_config table.
queue_name
Name of the work queue.
total_items
Total number of items in this work queue.
Note: When the iProcess Engine starts up the WIS
processes use this value to determine whether or not
each work queue should be cached. See "Configuring
When WIS Processes Cache Their Queues" in TIBCO
iProcess Engine Administrator’s Guide for more
information.
last_cache_time
Either:
•
Time taken to cache the work queue (in
milliseconds) when it was last cached, either when
the WIS process first started up or when the work
queue was first accessed.
•
-1, if the work queue has
not yet been cached.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
248
| wqs_index
Column Name
Description
new_items
Number of new, unopened items in this work queue.
deadline_items
Number of items in this work queue that have
deadlines.
urgent_items
Number of items in this work queue that have an urgent
priority.
redir_queue_name
Either:
is_cached
is_group
is_test
is_redirected
is_disabled
TIBCO iProcess Engine (Oracle) Administrator’s Guide
•
the name of the work queue that this queue is
currently being redirected to, if the queue is
currently being redirected (is_redirected = 1).
•
empty, if the queue is currently not being redirected
(is_redirected = 0).
Indicates whether the queue is currently cached by the
WIS process. Either:
•
1,
if the queue is cached.
•
0,
if the queue is not cached.
Indicates whether the queue is a Group queue. Either:
•
1,
if the queue is a Group queue.
•
0,
if the queue is a User queue.
Indicates whether the queue is a Test queue. Either:
•
1,
if the queue is a Test queue.
•
0,
otherwise.
Indicates whether the queue is currently being
redirected to redir_queue_name. Either:
•
1,
if the queue is currently redirected.
•
0,
otherwise.
Indicates whether the queue is disabled. Either:
•
1,
if the queue is currently disabled.
•
0,
otherwise.
| 249
Primary Key
The following primary key is defined for this table.
Key Name
Column(s)
Index Tablespace
pk_wqs_index
queue_name
is_test
MEDIUMINDEXSPACE
Foreign Keys
None
Indexes
None
Storage
The following STORAGE values are defined for this table.
Table Activity
Value
Definition
Initial
MEDIUMTABLESIZE
Percentage Increase
MEDIUMTABLEPCTINCREASE
Tablespace
MEDIUMTABLESPACE
The wqs_index table contains one row for each work queue on the system that is
handled by a WIS process.
Rows are added, updated and deleted in the following situations.
A row is...
When...
added
a new work queue is allocated to a WIS process by the WQS process.
updated
•
an existing work queue is re-allocated to a different WIS process
by the WQS process.
•
a MOVESYSINFO has been processed by the WQS process.
•
the update thread in the WQS process writes the contents of the
WQS/WIS shared memory to the database. This update occurs
every WQS_PERSIST_SHMEM seconds.
Note: See "Administering Process Attributes" in TIBCO iProcess
Engine Administrator’s Guide for more information about the
WQS_PERSIST_SHMEM process attribute.
deleted
a WIS is started as the first time the WIS persists the current shared
memory to the database it clears out all existing rows and then
writes the shared memory to the database table.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
250
| wqs_index
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 251
Chapter 19
System Event Logging
This chapter describes the tables that are used to store information about system
event logging.
Topics
•
Table Relationships, page 252
•
system_event, page 253
•
system_event_conf, page 255
TIBCO iProcess Engine (Oracle) Administrator’s Guide
252
| Chapter 19
System Event Logging
Table Relationships
The following diagram shows how the tables described in this chapter are related
to each other and to other tables in the schema. Note that:
• Only database-enforced relationships, that is, foreign keys are shown.
• Logical relationships, that is, those used by iProcess, are not shown.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
system_event 253
|
system_event
The system_event table contains information about system events.
Structure
The system_event table has the following structure:
TABLE system_event (
type_id number(5) NOT NULL,
user_name varchar(255) NOT NULL,
audit_date date NOT NULL,
audit_usecs number(6) NOT NULL,
details varchar(512) NOT NULL,
Column
Description
type_id
IID of an audit event. It is defined in the
SWDIR\etc\language.lng\sysevents.cfg
file.
user_name
Name of the user who performed the audit event, as
defined in the user_names table.
audit_date
Date and time when the event occurred.
Note: The audit_usecs column can be combined with this
column to provide resolution to a microsecond.
audit_usecs
Number of microseconds since the start of the seconds value
specified in the audit_date column.
details
Primary Key
None.
Foreign Keys
None.
Indexes
Extra details of the event.
The following index is defined for this table.
Index Name
Column(s) Indexed
idx_sys_event_fk
type_id
user_name
audit_date
Table Activity
The system_event table contains one row for each system event that is audited.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
254
| Chapter 19
System Event Logging
Rows are added and deleted in the following situations:
A row is...
When...
added
a new system event is audited.
deleted
using the swadm delete_system_event command to
delete system event information or clean system event
information that is earlier than a specified period. See
TIBCO iProcess Engine Administrator’s Guide for more
information about the swadm delete_system_event
command.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
system_event_conf 255
|
system_event_conf
The system_event_conf table holds the configuration information of system
events. The information specifies which system event will be audited and
published.
Structure
The system_event_conf table has the following structure:
TABLE system_event_conf (
type_id number(5) NOT NULL,
audited number(5) NOT NULL,
published number(5) NOT NULL,
event_desc varchar(256) NOT NULL
Column
Description
type_id
IID of an audit event. It is defined in the
SWDIR\etc\language.lng\sysevents.cfg
Primary Key
audited
Whether to audit the system event.
published
Whether to publish the system event.
event_desc
Description of the system event.
The following primary key is defined for this table.
Key Name
Column(s)
pk_event_conf
type_id
Foreign Keys
None.
Indexes
None.
Table Activity
file.
The system_event_conf table contains one row for the configuration of each
system event.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
256
| Chapter 19
System Event Logging
Rows are added and deleted in the following situations:
A row is...
When...
added
a new system event configuration is imported to iProcess
Engine by using the IMPEVENTCONF command. See TIBCO
iProcess swutil and swbatch Reference Guide for more
information about the IMPEVENTCONF command.
updated
a system event is updated in the configuration file
imported by the IMPEVENTCONF command.
deleted
a system event is deleted from the configuration file
imported by the IMPEVENTCONF command.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 257
Appendix A
Views
The following database views are defined for internal use:
•
dbs_nm_fld
•
tsys_dbs_nm_fld
•
ttmp_dbs_nm_fld
•
str_dbs_nm_fld
•
lst_nm_val
•
tsys_lst_nm_val
•
ttmp_lst_nm_val
For more information about these views please see the database creation script
(init2Kora.sql on UNIX, init2Kora_tok.sql on Windows).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
258
| Views
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 259
Appendix B
STORAGE Configuration Macro Values
STORAGE values are only defined if the database is created when installing a
Version i10.0-o(2.0) or later iProcess Engine. They are not defined if the database is
created for an earlier version and subsequently upgraded to Version i10.0-o(2.0)
or later.
This appendix describes the real values that are assigned to the STORAGE
configuration macros defined for each table in the iProcess database schema.
The real values are defined in three tablesizes files:
•
Default values are defined in the tablesizes file. Using this file creates a small
database (approximately 50Mb) that is suitable for benchmarking or
development purposes
•
Medium values are defined in the tablesizes tablesizes.med file. Using this
file creates a medium database.
•
Large values are defined in the tablesizes tablesizes.large file. Using this
file creates a large database.
When you install the iProcess Engine, you choose which one of these tablesizes
files to use. The installer (swinstall) replaces the configuration macros with the
appropriate values in the init2Kora.sql script, which is used to create the
iProcess database schema.
For more detailed information about this process, and how you can customize it
to your particular requirements, see "Configure the Initial Size and Layout of the
iProcess Schema" in TIBCO iProcess Engine Installation Guide.
The tables in the following sections define the real values that are assigned to each
STORAGE configuration macro, according to:
•
the SIZE value assigned to the specific table, as defined earlier in this guide.
•
the tablesizes file used during installation.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
260
| TABLESIZE
TABLESIZE
The SIZETABLESIZE macros define the initial size (in extents) of iProcess schema
tables.
Macro
Default
Medium
Large
TINYTABLESIZE
1K
1K
1K
SMALLTABLESIZE
2K
10K
20K
MEDIUMTABLESIZE
40K
90K
90K
BIGTABLESIZE
200K
1200K
4000K
LARGETABLESIZE
500K
15000K
150000K
HUGETABLESIZE
500K
50000K
1100000K
MASSIVETABLESIZE
1M
600000K
1500000K
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 261
TABLEPCTINCREASE
The SIZEPCTINCREASE macros define the percentage increase to be applied
when growing iProcess schema tables.
Macro
Default
Medium
Large
TINYTABLEPCTINCREASE
0
0
0
SMALLTABLEPCTINCREASE
20
20
20
MEDIUMTABLEPCTINCREASE
50
50
50
BIGTABLEPCTINCREASE
50
50
50
LARGETABLEPCTINCREASE
50
100
50
HUGETABLEPCTINCREASE
50
100
50
MASSIVETABLEPCTINCREASE
50
100
50
TIBCO iProcess Engine (Oracle) Administrator’s Guide
262
| INDEXSIZE
INDEXSIZE
This macro is not currently used. It is reserved for possible future use.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 263
TABLESPACE
The SIZETABLESPACE macros define the tablespaces used by iProcess schema
tables.
Macro
Default
Medium
Large
TINYTABLESPACE
staffwar
staffwar
staffwar
SMALLTABLESPACE
staffwar
staffwar
staffwar
MEDIUMTABLESPACE
staffwar
staffwar
staffwar
BIGTABLESPACE
staffwar
staffwar
staffwar
LARGETABLESPACE
staffwar
staffwar
staffwar
HUGETABLESPACE
staffwar
staffwar
staffwar
MASSIVETABLESPACE
staffwar
staffwar
staffwar
TIBCO iProcess Engine (Oracle) Administrator’s Guide
264
| INDEXSPACE
INDEXSPACE
The SIZEINDEXSPACE macros define the tablespaces used by iProcess schema
primary keys and indexes.
Macro
Default
Medium
Large
TINYINDEXSPACE
staffwar
staffwar
staffwar
SMALLINDEXSPACE
staffwar
staffwar
staffwar
MEDIUMINDEXSPACE
staffwar
staffwar
staffwar
BIGINDEXSPACE
staffwar
staffwar
staffwar
LARGEINDEXSPACE
staffwar
staffwar
staffwar
HUGEINDEXSPACE
staffwar
staffwar
staffwar
MASSIVEINDEXSPACE
staffwar
staffwar
staffwar
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 265
AQTABLESPACE
The AQTABLESPACE macro defines the tablespace used by the AQ tables that
provide the underlying message queuing system used by the iProcess message
queues. See Oracle AQ Queue Tables and Queues on page 32 for more
information.
Macro
Default
Medium
Large
AQTABLESPACE
staffwar
staffwar
staffwar
TIBCO iProcess Engine (Oracle) Administrator’s Guide
266
| AQTABLESPACE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 267
Appendix C
SSOLite Stored Procedures
This appendix describes the SSOLite stored procedures package.
Topics
•
Overview, page 268
•
Using SSOLite Stored Procedures, page 269
•
Data Procedures, page 274
•
Command Procedures, page 281
•
Control Procedures, page 305
•
Debug Procedures, page 316
TIBCO iProcess Engine (Oracle) Administrator’s Guide
268
| Overview
Overview
The SSOLite package is a set of stored procedures, available in the iProcess
database, that provide applications with direct access to a limited subset of
iProcess functionality.
An application can use SSOLite stored procedures to issue instructions directly to
the iProcess background processes (by inserting messages into the iProcess
message queues) to perform the following iProcess operations:
•
start a case.
•
trigger an event.
•
graft a sub-procedure to a procedure (at run-time).
•
jump a case to a different point in the procedure.
•
suspend a case.
•
re-activate a suspended case.
There are four different categories of SSOLite procedure:
•
Data Procedures are used to create (or clear) any pack data that is required for
a particular operation.
•
Command Procedures are used to perform the iProcess operations described
above.
•
Control Procedures can be used to control the operation of the other SSOLite
procedures. Their use is optional.
•
Debug Procedures can be used to provide debug information about the
operation of data and command procedures, if required.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 269
Using SSOLite Stored Procedures
The following sections discuss some general issues that you need to be aware of
when designing an application to use SSOLite stored procedures:
•
Processing Asynchronous Message, page 269
•
Transactional Processing, page 269
•
Handling Exceptions, page 269
•
Processing Queues, page 271
•
Prioritizing Messages, page 273
Processing Asynchronous Message
SSOLite stored procedures work by sending a message to a database queue,
which is processed by one or more background (BG) processes. This means that:
•
there is a short delay between an SSOLite stored procedure completing and
the BG process processing the instruction.
•
even if an SSOLite procedure has completed successfully, the instruction that
is processed by the BG may still fail.
Transactional Processing
The BG process will not process any instructions issued by SSOLite stored
procedures until the SSOLite transaction has been committed. You can therefore
scope transactions according to the requirements of your particular application:
•
A transaction can be defined as a single instruction, such as a case start. (If the
call to SW_CASESTART succeeds then a commit is immediately performed.)
•
Several instructions can be processed as part of a single transaction. For
example, a transaction can add pack data, issue an event, add more pack data
and then start several cases, and is only committed if all these operations
complete successfully.
Handling Exceptions
SSOLite stored procedures raise an Oracle error in the range -20000 to -20020 if
any procedure fails. Note that:
•
The error text is always preceded by the string (SWERROR).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
270
| Using SSOLite Stored Procedures
•
Each error has a unique ID, which is displayed at the end of the error text.
It is the application’s responsibility to handle any such database exceptions, and
issue a rollback if appropriate.
The following table describes the different errors (and their unique IDs) that may
be returned by the SSOLite stored procedures.
Some of the stored procedures listed in the table are not described in this chapter.
These are lower level stored procedures that may be called by some or all of the
stored procedures that are described in this chapter.
Stored Procedure
Oracle Error
Error Text
SW_GET_NODE_DETAILS
-20001
Node details not found in database (ID:001007)
SW_SET_QUEUE_NAME
20002
MBox Queue Name(s) not found in database
(ID:001008)
SW_GET_PROCEDURE
-20003
Procedure details not found in database for
procedure name=proc_name (ID:001010)
-20000
Procedure version not found in database for
procedure name=proc_name, Case
Num=case_num (ID:001011)
-20004
Latest Released or Unreleased Procedure
version not found in database for procedure
name=proc_name (ID:001012)
-20005
Procedure version not found in database for
procedure name=proc_name major_version
minor_version (ID:001013)
-20000
Suspend type (suspend_type) is invalid, expected
2 (suspend) or 0 (activate) (ID:001014)
-20000
Case (case_num) is already active (ID:001036)
-20000
Case (case_num) is dead (ID:001037)
-20000
Case (case_num) is already suspended
(ID:001038)
-20000
Sub-Proc casenum not found in database for
Procedure proc_name, Case Number case_num,
Step Name step_name, Sub-proc sub_proc_name
(ID:001018)
SW_SUSPEND
SW_GET_SUBPROC_DETAILS
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 271
Stored Procedure
Oracle Error
Error Text
SW_GETCASE_STATUS
-20006
Failed to find case information for case:
case_num (ID:001019)
SW_UNPACKDELAYRELEASEID
-20000
Unexpected inconsistency between node name
nodename and delayed release id procedure
node name nodename (ID:001020)
-20000
Unexpected inconsistency between node name
nodename and delayed release id queue node
name nodename (ID:001021)
SW_DELAYED_RELEASE_ERR
-20000
Failed to get node ID (ID:001022)
SW_PURGE
-20006
Case (case_num) is dead (ID:001037)
-20006
Procedure and case information does not match
(ID:001041)
-20006
Case (case_num) is dead (ID:001037)
-20006
Procedure and case information does not match
(ID:001042)
SW_CLOSE
Processing Queues
SSOLite stored procedures write messages to the BG processes using the default
background message queues, using a round-robin allocation on a per-session
basis. This means that every time a new database session is started the first
defined queue (BGMBOX1) is used first. As a result, BGMBOX1 can become
overloaded if database sessions are not persisted.
You can override this default behavior for specific transactions by using the
and SW_UNSET_QUEUE control procedures.
SW_SET_QUEUE
Alternatively, you can dedicate specific message queues to handling requests
from your SSOLite stored procedure calls. To do this:
1. Create a new Mbox set named SSOLITE. (The Mbox set can use either existing
message queues or new ones.)
2. Set the MBSET_WRITE_BG process attribute for your application to assign the
SSOLITE1 queue to it. All messages posted to a BG process by the SSOLite
stored procedures will now use the SSOLITE Mbox set.
The following example shows a series of commands that you could use to do this.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
272
| Using SSOLite Stored Procedures
# Add a new SSOLITEQ1 message queue. (Remember to create the
# sw_db_ssolite physical queue first.)
#
swadm add_queue SSOLITEQ1 Local 0003:swpro.sw_db_ssolite
# Add a new SSOLITE Mbox set.
#
swadm add_mboxset SSOLITE Local
# Add the SSOLITEQ1 message queue to the SSOLITE Mbox set (6 is the
# Mboxset ID of the SSOLITE Mboxset).
#
swadm add_queue_to_mboxset 6 SSOLITE1
# Set MBSET_WRITE_BG so that calls from the application’s SSOLITE
# stored procedures use the SSOLITE Mbox set to write messages to the
# BG processes.
#
swadm set_attribute 1 SSOLITE 0 MBSET_WRITE_BG 6
#
#Set background processes to read from the queue
#
swadm add_process 1 BG Y
swadm set_attribute 1 BG 5 MBSET_READ_BG 6
# Add a new SSOLITEQ1 message queue. (Remember to create the
# table ssolitemboxtable and the ssolitemboxqueue AQ first.)
#
swadm add_queue SSOLITEQ1 Local 0001::ssolitemboxtable:ssolitemboxqueue
# Add a new SSOLITE Mbox set.
#
swadm add_mboxset SSOLITE Local
# Add the SSOLITEQ1 message queue to the SSOLITE Mbox set (6 is the
# Mboxset ID of the SSOLITE Mbox set).
#
swadm add_queue_to_mboxset 6 7
# Set MBSET_WRITE_BG so that calls from the application’s SSOLITE
#stored procedures use the SSOLITE Mbox set to write messages to the
#BG processes.
#
swadm set_attribute1 SSOLITE 0 MBSET_WRITE_BG 6
#
#Set background processes to read from the queue
#
swadm add_process 1 BG Y
swadm set_attribute 1 BG 5 MBSET_READ_BG 6
Because the SSOLite stored procedures cache queue information, you must shut
down and restart all database connections if you change your message queue
configuration in this way.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 273
For more information about message queue configuration, see:
•
Mbox Sets and Message Queues on page 23.
•
"Administering Message Queues and Mbox Sets" in TIBCO iProcess Engine
Administrator's Guide.
Prioritizing Messages
You can now set priorities ranging from 1 to 999 (where 1 is the highest priority)
for internal message queues when passing messages between iProcess processes
such as from the background and the WISes, or from SSOLite to the BG processes.
The default message queue priority is 50.
Use the SW_SET_PRIORITY control procedure to set the internal message queue
priorities and the SW_UNSET_PRIORITY control procedure to restore the default
message queue priorities.
The messages with higher internal message queue priorities are processed earlier
than those with lower priorities, and the message with the highest priority will
automatically be the next message processed, even if there is a backlog in the
queue.
If the internal message queue priorities are not set, the messages will be processed
in the order of SW_CP_VALUE or SW_IP_VALUE when using iProcess Workspace
(Windows) to process work items.
When using SSOLite stored procedures to start a case or to trigger an event, the
following rules determine which message queue priority settings should be used
for processing messages:
•
If the value of the SW_CP_VALUE field is set, the message will be processed in
the order of SW_CP_VALUE regardless of the message queue priority that is set
by using the SW_SET_PRIORITY control procedure.
•
If the SW_CP_VALUE field is not set, the message will be processed in the order
of the message queue priority that is set using the SW_SET_PRIORITY control
procedure.
•
If both the SW_CP_VALUE field and the SW_SET_PRIORITY control procedure
are not set for the message priority, the message priority will be set to the
default value of the SW_CP_VALUE field, 50.
See TIBCO iProcess Modeler Advanced Design for more information about the
field.
SW_CP_VALUE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
274
| Data Procedures
Data Procedures
The following data procedures are available:
•
SW_ADD_PACK_DATA
•
SW_ADD_PACK_MEMO
•
SW_CLEAR_PACK_CACHE
•
SW_MODIFY_CASEDATA
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 275
SW_ADD_PACK_DATA
The SW_ADD_PACK_DATA procedure defines an item of pack data (a field
name/value pair) that will be passed to iProcess with the next command
procedure that is called.
Syntax
SW_ADD_PACK_DATA (
field_name
field_value
in varchar2(31),
in varchar2(255))
where:
•
field_name
is a string that specifies the name of the iProcess field that is to be
set.
•
field_value
is a string that specifies the value to be set for field_name.
Although the value is always passed as a string, it must be in the correct format
for the type of field. No validation is performed on either the field name or field
value.
Notes
SW_ADD_PACK_DATA
allows pack data to be passed to iProcess when a command
procedure is called:
Examples
•
You must call SW_ADD_PACK_DATA to specify the pack data immediately before
calling the desired command procedure.
•
A call to SW_ADD_PACK_DATA defines a single item of pack data. If you wish to
define multiple items of pack data, you must make a SW_ADD_PACK_DATA call
for each piece of data before calling the desired command procedure.
•
The pack data is only valid for the next command procedure that is called.
In the following example, two SW_ADD_PACK_DATA calls are used to define data
values for the F1 and F2 fields, which are passed to iProcess when Case1 is started
(using SW_CASESTART). The second SW_CASESTART call, starting Case2, does
not have any data values.
begin
SSOLITE_DATA.SW_ADD_PACK_DATA ('F1',
SSOLITE_DATA.SW_ADD_PACK_DATA ('F2',
SSOLITE.SW_CASESTART ('CUSTREQ', -1,
SSOLITE.SW_CASESTART ('CUSTREQ', -1,
end;
/
commit;
'DataItem1');
'DataItem2');
-1, 'Case1', 'user35', '', casenum, reqid);
-1, 'Case2', 'user35', '', casenum, reqid);
TIBCO iProcess Engine (Oracle) Administrator’s Guide
276
| SW_ADD_PACK_DATA
If you want to specify pack data for the F1 and F2 fields for Case2 as well, you
must call SW_ADD_PACK_DATA again before calling SW_CASESTART, as shown
below.
begin
SSOLITE_DATA.SW_ADD_PACK_DATA ('F1',
SSOLITE_DATA.SW_ADD_PACK_DATA ('F2',
SSOLITE.SW_CASESTART ('CUSTREQ', -1,
SSOLITE_DATA.SW_ADD_PACK_DATA ('F1',
SSOLITE_DATA.SW_ADD_PACK_DATA ('F2',
SSOLITE.SW_CASESTART ('CUSTREQ', -1,
end;
/
commit;
TIBCO iProcess Engine (Oracle) Administrator’s Guide
'DataItem1');
'DataItem2');
-1, 'Case1', 'user35', '', casenum, reqid);
'DataItem1');
'DataItem2');
-1, 'Case2', 'user35', '', casenum, reqid);
| 277
SW_ADD_PACK_MEMO
The SW_ADD_PACK_MEMO procedure defines an item of pack memo data (a field
name/value pair) that will be passed to iProcess with the next command
procedure that is called.
Syntax
SW_ADD_PACK_MEMO (
memo_name
memo_length
memo_data
array_idx
in
in
in
in
varchar2(31),
integer,
blob,
integer default 0)
where:
•
memo_name
•
memo_length
•
memo_data
•
array_idx (optional) can be specified if memo_name is a memo array field; it
identifies the specific element in the memo array to be used. If array_idx is
not explicitly set, it defaults to a value of 0.
is the name of the iProcess memo field (or memo array field).
is the number of bytes contained in the memo data.
is a raw data field that holds the actual memo data.
If memo_name is not a memo array field, you should either not set array_idx, or
set it to 0. (If array_idx contains any other value, no memo data will be
found; an error message will be written to the SWDIR\logs\sw_warn file.)
Notes
SW_ADD_PACK_MEMO allows pack memo data to be passed to iProcess when a
command procedure is called:
•
You must call SW_ADD_PACK_MEMO to specify the pack memo data immediately
before calling the desired command procedure.
•
A call to SW_ADD_PACK_MEMO defines a single item of pack memo data. If you
wish to define multiple items of pack memo data, you must make a
SW_ADD_PACK_MEMO call for each piece of memo data before calling the desired
command procedure.
•
The pack memo data is only valid for the next command procedure that is
called.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
278
| SW_CLEAR_PACK_CACHE
SW_CLEAR_PACK_CACHE
The SW_CLEAR_PACK_CACHE procedure clears any items of pack data or pack
memo data that have been added using SW_ADD_PACK_DATA or
SW_ADD_PACK_MEMO calls, prior to calling a command procedure.
Syntax
Notes
SW_CLEAR_PACK_CACHE ()
Use SW_CLEAR_PACK_CACHE if added data is no longer required.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 279
SW_MODIFY_CASEDATA
The SW_MODIFY_CASEDATA procedure allows you to modify the data of an existing
case. Use an SW_ADD_PACK_DATA procedure to specify the data to be modified.
Then, an immediately following SW_MODIFY_CASEDATA posts an instruction to the
BG process to carry out the change. You can use the SW_MODIFY_CASEDATA
procedure to set case data for main procedures and sub-procedures.
This event is audited, using audit message 058. See TIBCO iProcess Engine
Administrator’s Guide for details of audit messages.
Syntax
SW_MODIFY_CASEDATA (
proc_name
proc_maj_ver
proc_min_ver
case_number
reason
user_id
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar(2),
varchar2(24))
where:
Notes
•
proc_name
•
proc_maj_ver is either the major version number of the proc_name
procedure, or -1. See the notes below.
•
proc_min_ver
•
case_number
•
reason
•
user_id
is the name of the procedure that you want to modify a case of.
is either the minor version number of the proc_name
procedure, or -1. See the notes below.
is the case number of the main procedure for which the data is
to be modified.
is a reason for the case data modification, used in the audit trail.
is the name of the iProcess user who is performing the modification.
Instead of using the specific major and/or minor version number of the
procedure, you can specify both the proc_maj_ver and proc_min_ver
parameters as -1. If you do this, iProcess will use the version number of the
procedure that the case was originally started with or, that it has subsequently
been migrated to (if a subsequent version has been released while the case is still
in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
280
| SW_MODIFY_CASEDATA
Example
This example modifies data for case 876 of the Transfer procedure. The
SW_ADD_PACK_DATA statement changes the value of the TEXT1 field to "New
customer name". The SW_MODIFY_CASEDATA call then identifies the procedure
and case to be changed, and provides the "Modified For Graft" message which
will be displayed in the audit trail.
EXEC ssolite_data.SW_ADD_PACK_DATA('TEXT1', 'New customer name');
EXEC ssolite.SW_MODIFY_CASEDATA('Transfer', -1, -1, 876, 'Modified For Graft',
'swadmin');
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 281
Command Procedures
The following command procedures are available:
•
SW_AUDIT
•
SW_CASEREOPEN
•
SW_CASESTART
•
SW_CLOSE
•
SW_CLOSE_WITHOUT_EVENT
•
SW_DELAYED_RELEASE_ERR
•
SW_EVENT
•
SW_EVENT_UPDATE_PACK
•
SW_GETCASE_STATUS
•
SW_GRAFT
•
SW_GRAFTCOUNT
•
SW_JUMPTO
•
SW_JUMPTO_MULTI
•
SW_PURGE
•
SW_PURGE_WITHOUT_EVENT
•
SW_SUSPEND
•
SW_ACTIVATE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
282
| SW_AUDIT
SW_AUDIT
The SW_AUDIT procedure instructs the iProcess Engine background (BG) process
to create the specified audit trail message for the specified case.
Syntax
SW_AUDIT (
proc_name
proc_maj_ver
proc_min_ver
case_num
Audit_id
Audit_step
Audit_desc
User_id
in
in
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
integerinteger,
varchar2(8)varchar(8),
varchar2(24),
varchar2(255))
where:
•
proc_name is the name of the procedure that you want to create an audit
message for.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
•
See the notes below.
See the notes below.
case_num (input) is the name of a variable, defined in the calling program, into
which SW_AUDIT will return the case number of the started case.
•
Audit_id is the numeric value of the audit message required. User audit
messages will be values greater than 256, as listed in the
SWDIR/etc/english.lng/auditusr.mes file. See "Understanding Audit
Trails" in TIBCO iProcess Engine Administrator’s Guide for details.
•
Audit_step is the stepname of this audit. If the step is not required for this audit
message, specify this parameter as a null string (‘’) instead.
Notes
•
Audit_desc is the description to be added to the audit message.
•
User_id is the username that will be added to the audit trail entry.
Instead of using the specific major and/or minor version number of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 283
Example
This example creates an audit message 131 for the CARPOOL procedure.
EXEC SSOLITE.SW_AUDIT('CARPOOL', -1, -1,
User');
51, 131, 'REFUSED', 'BW Activity', 'BW
TIBCO iProcess Engine (Oracle) Administrator’s Guide
284
| SW_CASEREOPEN
SW_CASEREOPEN
The SW_CASEREOPEN procedure resurrects a case.
Syntax
SW_CASEREOPEN (
proc_name
user_id
step_name
case_num
in
in
in
in
varchar2(8),
varchar2(24),
varchar2(8),
integer)
where:
Notes
Example
•
proc_name is the name of the procedure that you want to resurrect.
•
user_id is the name of the iProcess user who is resurrecting the case.
•
step_name is the name of the case step that you want to resurrect.
•
case_num is the number of the case that you want to resurrect.
After a case is closed, all the deadlines of the case are removed. If the case is
reopened, you can reset the deadlines by running the CreateCaseDeadline
function. For more information about the CreateCaseDeadline function, see
TIBCO iProcess Expressions and Functions Reference Guide.
This example resurrects step STEP1 of case 101 of procedure CUSTREQ.
EXEC ssolite.SW_CASEREOPEN ('CUSTREQ', 'user35','STEP1',101);
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 285
SW_CASESTART
The SW_CASESTART procedure starts a case of a procedure.
Syntax
SW_CASESTART (
proc_name
proc_maj_ver
proc_min_ver
case_desc
user_id
step_name
case_num
request_id
in varchar2(8),
in number(5),
in number(5),
in varchar2(24),
in varchar2(24),
in varchar2(8),
out integer,
out integer)
where:
•
proc_name is the name of the procedure that you want to start a case of.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
See the notes below.
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
See the notes below.
•
case_desc is a suitable description for this case.
•
user_id is the name of the iProcess user who is starting the case.
•
step_name is the name of the step at which the case should start. If you want to
use the default start step, specify this parameter as a null string (‘’).
•
case_num (output) is the name of a variable, defined in the calling program,
into which SW_CASESTART will return the case number of the started case.
•
request_id (output) is the name of a variable, defined in the calling program,
into which SW_CASESTART will return the REQ ID of the work item that is sent
out when the case is started.
Notes
Instead of using the specific major and/or minor version number of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will determine which version of the procedure to use
according to the following rules:
1. the current precedence settings defined for the user who is starting the case
(user_id) or, if these are not defined,
2. the latest released version of the procedure or, if no released version exists,
TIBCO iProcess Engine (Oracle) Administrator’s Guide
286
| SW_CASESTART
3. the latest unreleased version of the procedure.
If you specify one version number parameter as -1, you must specify
the other one as -1 as well.
Example
This example starts a case of the CUSTREQ procedure. Note that pack data values
for the CustName and CustID fields are provided by separate calls to
SW_ADD_PACK_DATA immediately before the SW_CASESTART call.
declare
casenum numeric(20);
reqid numeric(20);
begin
SSOLITE_DATA.SW_ADD_PACK_DATA ('CustName', 'Allsop, J.A.');
SSOLITE_DATA.SW_ADD_PACK_DATA ('CustID', '478163');
SSOLITE.SW_CASESTART ('CUSTREQ', -1, -1, 'Refund request', 'user35', '', casenum,
reqid);
end;
/
commit;
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 287
SW_CLOSE
The SW_CLOSE procedure closes an active case of a procedure.
If an event is set for the OnBeforeClose event, the event will be triggered when the
case is about to close but before the case is actually closed. If an event is set for the
OnAfterClose event, the event will be triggered after closing the case.
Syntax
SW_CLOSE (
proc_name
proc_maj_ver
proc_min_ver
case_number
user_id
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar2(24))
where:
•
proc_name is the name of the procedure that you want to close a case of.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
case_num is the number of the case that is to be closed.
•
user_id is the name of the iProcess user who is closing the case.
Instead of using the specific major and/or minor version number of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
Example
This example closes the 103 case of the CUSTREQ procedure.
EXEC SSOLITE.SW_CLOSE ('CUSTREQ', -1, -1, 103, 'swadmin')
TIBCO iProcess Engine (Oracle) Administrator’s Guide
288
| SW_CLOSE_WITHOUT_EVENT
SW_CLOSE_WITHOUT_EVENT
The SW_CLOSE_WITHOUT_EVENT procedure closes an active case of a procedure
without triggering the events that are set for the OnBeforeClose event or the
OnAfterClose event.
Syntax
SW_CLOSE_WITHOUT_EVENT (
proc_name
proc_maj_ver
proc_min_ver
case_number
user_id
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar2(24))
where:
•
proc_name is the name of the procedure that you want to close a case of.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
case_num is the number of the case that is to be closed.
•
user_id is the name of the iProcess user who is closing the case.
Instead of using the specific major and/or minor version number of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
Example
This example closes the 103 case of the CUSTREQ procedure without triggering an
event.
EXEC SSOLITE.SW_CLOSE ('CUSTREQ', -1, -1, 103, 'swadmin')
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 289
SW_DELAYED_RELEASE_ERR
The SW_DELAYED_RELEASE_ERR procedure takes a BG action when a delayed
release error occurs.
Syntax
SW_DELAYED_RELEASE_ERR (
delayed_release_id
audit_desc
user_id
err_code
err_message
bg_action
in
in
in
in
in
in
varchar2,
varchar2,
varchar2,
varchar2,
varchar2,
integer)
where:
Notes
•
delayed_release_id is the ID of the delayed release.
•
audit_desc is the description of the delayed release audit.
•
user_id is the user ID.
•
err_code is the error code.
•
err_message is the error message.
•
bg_action is the BG action to handle the delayed release error.
If a delayed release error occurs, TIBCO BusinessWorks returns an error code, an
error message, and a BG action to TIBCO iProcess Engine. The BG process take
the following actions according to BG action:
•
Just log the error and do nothing.
•
Log the error and requeue the transaction again.
•
Log the error and progress the iProcess case, as if it has been released.
See TIBCO iProcess Connector for ActiveMatrix BusinessWorks User’s Guide for more
information about the delayed release error.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
290
| SW_EVENT
SW_EVENT
The SW_EVENT procedure triggers a specific event on a case of a procedure.
Syntax
SW_EVENT (
proc_name
proc_maj_ver
proc_min_ver
step_name
case_num
user_id
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
varchar2(8),
integer,
varchar2(24))
where:
•
proc_name is the name of the procedure that you want to trigger the event on.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
step_name is the name of the event step that you want to trigger.
•
case_num is the number of the case that you want to trigger the event on.
•
user_id is the name of the iProcess user who is triggering the event.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as
-1. If you do this, iProcess will use the version number of the procedure that the
case was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
For more information about events and how to use them, see TIBCO iProcess
Modeler Integration Techniques.
Example
This example issues an event, as user swadmin, on step STEP1 of case 101 of the
CUSTREQ procedure.
EXEC SSOLITE.SW_EVENT ('CUSTREQ', -1, -1, 'STEP1', 101, 'swadmin');
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 291
SW_EVENT_UPDATE_PACK
The SW_EVENT_UPDATE_PACK procedure is the same as
SW_DELAYED_RELEASE_ERR, but when it triggers a specific event on a case of a
procedure it refreshes the data of any work items that are outstanding for that
case.
Syntax
SW_EVENT_UPDATE_PACK (
proc_name
proc_maj_ver
proc_min_ver
step_name
case_num
user_id
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
varchar2(8),
integer,
varchar2(24))
where:
•
proc_name is the name of the procedure that you want to trigger the event on.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
step_name is the name of the event step that you want to trigger.
•
case_num is the number of the case that you want to trigger the event on.
•
user_id is the name of the iProcess user who is triggering the event.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
For more information about events and how to use them, see TIBCO iProcess
Modeler Integration Techniques.
Example
This example issues an event, as user swadmin, on step STEP1 of case 101 of the
CUSTREQ procedure, and refreshes oustanding wortk items.
EXEC SSOLITE.SW_EVENT_UPDATE_PACK ('CUSTREQ', -1, -1, 'STEP1', 101, 'swadmin')
TIBCO iProcess Engine (Oracle) Administrator’s Guide
292
| SW_GETCASE_STATUS
SW_GETCASE_STATUS
The SW_GETCASE_STATUS procedure returns the status of a case of a procedure.
Syntax
SW_GETCASE_STATUS (
case_num
case_status
proc_type
case_started
in integer,
out varchar(10),
out varchar(10),
out date)
where:
•
case_num is the number of the case that you want to get the status of.
•
case_status (output) is the name of a variable, defined in the calling program,
into which SW_GETCASE_STATUS will return the status of the specified case.
•
proc_type (output) is the name of a variable, defined in the calling program, into
which SW_GETCASE_STATUS will return the procedure type of the specified
case (for example, Main or Sub).
•
case_started (output) is the name of a variable, defined in the calling program,
into which SW_GETCASE_STATUS will return the date that the case was started.
Example
This example displays the status of case 8.
Declare
case_status varchar(10);
proc_type varchar(10);
case_started date;
begin
SSOLITE.SW_GETCASE_STATUS (8, case_status, proc_type, case_started);
DBMS_OUTPUT.PUT_LINE('Case status is ' ||case_status);
DBMS_OUTPUT.PUT_LINE('Proc type is ' ||proc_type);
DBMS_OUTPUT.PUT_LINE('Case started at ' || case_started);
end;
/
This results in output displaying the status of the case. For example:
Case status is Active
Proc type is Sub
Case started at 31-MAY-05
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 293
SW_GRAFT
The SW_GRAFT procedure grafts a sub procedure onto a graft step in a main
procedure. The case data is added to the sub-procedure.
Syntax
SW_GRAFT (
proc_name
proc_maj_ver
proc_min_ver
case_number
graft_step_name
graft_proc_name
graft_proc_maj_ver
graft_proc_min_ver
graft_id
in
in
in
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar2(8),
varchar2(8),
number(5),
number(5),
varchar(2))
where:
•
proc_name is the name of the parent procedure that you want to graft a
sub-procedure to.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
See the notes below.
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
See the notes below.
•
case_number is the number of the case that you want to graft a sub-procedure to.
•
graft_step_name is the name of the graft step in the proc_name procedure that the
sub-procedure is to be grafted to.
•
graft_proc_name is the name of the sub-procedure that is to be grafted to the
proc_name parent procedure.
•
graft_proc_maj_ver is either the major version number of the graft_proc_name
procedure, or -1. See the notes below
•
graft_proc_min_ver is either the minor version number of the graft_proc_name
procedure, or -1. See the notes below
•
graft_id is a unique identifier for this instance of the graft_step_name graft step.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
294
| SW_GRAFT
Notes
Instead of using the specific major and/or minor version number of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
For more information about graft steps and how to use them, see TIBCO iProcess
Modeler Integration Techniques.
Example
This example uses SW_GRAFT to graft the SUBPROC1 sub-procedure to step
GRAFT01 of case 101 of the CUSTREQ procedure. It then uses SW_GRAFTCOUNT to
specific that a single item is to be grafted to the UNIQUEID instance of the graft
step.
EXEC SSOLITE.SW_GRAFT ('CUSTREQ', -1, -1, 101, 'GRAFT01', 'SUBPROC1', -1, -1,
'UNIQUEID')
EXEC SSOLITE.SW_GRAFTCOUNT ('CUSTREQ', -1, -1, 101, 'GRAFT01', 'UNIQUEID', 1)
/
commit;
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 295
SW_GRAFTCOUNT
The SW_GRAFTCOUNT procedure specifies how many items are to be grafted to the
specified instance of the graft step.
Syntax
SW_GRAFTCOUNT (
proc_name
proc_maj_ver
proc_min_ver
case_number
graft_step_name
graft_id
graft_count
in
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar2(8),
varchar2,
integer)
where:
•
proc_name is the name of the parent procedure that you want to graft a
sub-procedure to.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
See the notes below.
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
See the notes below.
•
case_number is the case number of the main procedure that the sub-procedure is
to be grafted to.
•
graft_step_name is the name of the graft step in the proc_name procedure that the
sub-procedure is to be grafted to.
•
graft_id is a unique identifier for this instance of the graft_step_name graft step.
•
graft_count is the number of items that are to be grafted to the graft_step_name
graft step.
Notes
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
For more information bout graft steps and how to use them, see TIBCO iProcess
Modeler Integration Techniques.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
296
| SW_GRAFTCOUNT
Example
See SW_GRAFT.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 297
SW_JUMPTO
The SW_JUMPTO procedure jumps a case from its current step to another step in the
procedure, ignoring the procedure logic.
Syntax
SW_JUMPTO (
proc_name
proc_maj_ver
proc_min_ver
jump_step
case_number
jump_reason
user_id
in
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
varchar2(8),
integer,
varchar(2),
varchar2(24))
where:
•
proc_name is the name of the procedure that you want to jump a case of.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
jump_step is the name of the step that the case is to jump to.
•
case_number is the case number of the main procedure that is to jump.
•
jump_reason is a reason for this jump, used in the audit trail
•
user_id is the name of the iProcess user who is performing the jump.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
If a SW_JUMPTO procedure specifies an invalid jump_step, the transaction is rolled
back. A warning message is generated and an Invalid Step message is written to
the audit trail.
For more information about jumps and how to use them, please see the TIBCO
iProcess Objects and TIBCO iProcess Server Objects programmer guides.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
298
| SW_JUMPTO
Example
This example jumps case 102 of the CUSTREQ procedure from its current position
in the workflow to STEP5. The reason for the jump will be displayed in the audit
trail as “Administrator-initiated Jump”.
EXEC SSOLITE.SW_JUMPTO ('CUSTREQ', -1, -1, 'STEP5', 102, 'Administrator-initiated
Jump', 'swadmin')
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 299
SW_JUMPTO_MULTI
The SW_JUMPTO_MULTI procedure is similar to SW_JUMPTO except that it can
process, that is, jump to, more than one step. It allows the withdrawal of either a
single step or all steps. In addition it allows setting of case data using the existing
SW_ADD_PACK_DATA interface.
Syntax
SW_JUMPTO_MULTI (
tgt_proc_name
tgt_proc_maj_ver
tgt_proc_min_ver
src_step_name
tgt_step_name
case_number
jump_reason
user_id
in
in
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
varchar2(8),
varchar2,
integer,
varchar(2),
varchar2(24))
where:
•
tgt_proc_name is the name of the procedure that you want to jump a case of.
•
tgt_proc_maj_ver is either the major version number of the tgt_proc_name
procedure, or -1. See the notes below.
•
tgt_proc_min_ver is either the minor version number of the tgt_proc_name
procedure, or -1. See the notes below.
•
src_step_name is the name of the step to be withdrawn. Specifying * withdraws
all outstanding steps.
Notes
•
tgt_step_name is the name of the step that the case is to jump to. Use a
comma-separated list of step names to jump to more than one step.
•
case_number is the case number of the main procedure that is to jump.
•
jump_reason is a reason for this jump, used in the audit trail.
•
user_id is the name of the iProcess user who is performing the jump.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
300
| SW_JUMPTO_MULTI
If a SW_JUMPTO_MULTI procedure specifies an invalid jump_step, the transaction is
rolled back. A warning message is generated and an Invalid Step message is
written to the audit trail.
For more information about jumps and how to use them, please see the TIBCO
iProcess Objects and TIBCO iProcess Server Objects programmer guides.
Example
This example jumps case 110 of the CARPOOL procedure to the ALLOCATE steps
and REFUSED. The REQUEST step is withdrawn. The reason for the jump will be
displayed in the audit trail as “Request Refused”.
EXEC SSOLITE.SW_JUMPTO_MULTI ('CARPOOL', -1, -1, 'REQUEST', ’ALLOCATE,REFUSED’,
110, 'Request Refused', 'swadmin')
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 301
SW_PURGE
The SW_PURGE procedure purges the specified case of a procedure (permanently
deleting it from the system). If events are set for the OnBeforePurge event, the
events will be triggered when the case is about to purge but before the case is
actually purged.
Syntax
SW_PURGE (
proc_name
proc_maj_ver
proc_min_ver
case_number
in
in
in
in
varchar2(8),
number(5),
number(5),
integer)
where:
•
proc_name is the name of the procedure that you want to purge a case of. The
case must be either active or closed.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
•
Notes
See the notes below.
See the notes below.
case_num is the number of the case that is to be purged.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
Example
This example purges case 103 of the CUSTREQ procedure.
EXEC SSOLITE.SW_PURGE ('CUSTREQ', -1, -1, 103)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
302
| SW_PURGE_WITHOUT_EVENT
SW_PURGE_WITHOUT_EVENT
The SW_PURGE_WITHOUT_EVENT procedure purges the specified case of a
procedure (permanently deleting it from the system) without triggering the
events that are set for the OnBeforePurge event.
Syntax
SW_PURGE_WITHOUT_EVENT (
proc_name
proc_maj_ver
proc_min_ver
case_number
in
in
in
in
varchar2(8),
number(5),
number(5),
integer)
where:
•
proc_name is the name of the procedure that you want to purge a case of. The
case must be either active or closed.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
•
Notes
See the notes below.
See the notes below.
case_num is the number of the case that is to be purged.
Instead of using the specific major or minor version number of the procedure, or
both, you can specify both the proc_maj_ver and proc_min_ver parameters as -1. If
you do this, iProcess uses the version number of the procedure that the case was
originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 303
SW_SUSPEND
The SW_SUSPEND procedure suspends a case of a procedure.
Syntax
SW_SUSPEND (
proc_name
proc_maj_ver
proc_min_ver
case_number
user_id
suspend_type
in
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar2(24),
integer)
where:
•
proc_name is the name of the procedure that you want to suspend a case of.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
case_number is the number of the case that is to be suspended.
•
user_id is the name of the iProcess user who is suspending the case.
•
suspend_type defines the type of suspend action. This should always be 2.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
For more information about how to suspend and re-activate a case, please see the
TIBCO iProcess Objects and TIBCO iProcess Server Objects programmer guide.
Example
This example suspends case 103 of the CUSTREQ procedure.
EXEC SSOLITE.SW_SUSPEND ('CUSTREQ', -1, -1, 103, 'swadmin', 2)
TIBCO iProcess Engine (Oracle) Administrator’s Guide
304
| SW_ACTIVATE
SW_ACTIVATE
The SW_ACTIVATE procedure re-activates a previously suspended case of a
procedure.
Syntax
SW_ACTVATE (
proc_name
proc_maj_ver
proc_min_ver
case_number
user_id
in
in
in
in
in
varchar2(8),
number(5),
number(5),
integer,
varchar2(24))
where:
•
proc_name is the name of the procedure that you want to reactivate a case of.
•
proc_maj_ver is either the major version number of the proc_name procedure, or
-1.
•
proc_min_ver is either the minor version number of the proc_name procedure, or
-1.
Notes
See the notes below.
See the notes below.
•
case_number is the number of the suspended case that is to be reactivated.
•
user_id is the name of the iProcess user who is re-activating the case.
Instead of using the specific major or minor version number or both of the
procedure, you can specify both the proc_maj_ver and proc_min_ver parameters as -1.
If you do this, iProcess will use the version number of the procedure that the case
was originally started with or, that it has subsequently been migrated to (if a
subsequent version has been released while the case is still in progress).
If you specify one version number parameter as -1, you must specify the other
one as -1 as well.
For more information about how to suspend and re-activate a case, please see the
TIBCO iProcess Objects and TIBCO iProcess Server Objects programmer guide.
Example
This example re-activates case 103 of the CUSTREQ procedure.
EXEC SSOLITE.SW_ACTIVATE ('CUSTREQ', -1, -1, 103, 'swadmin')
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 305
Control Procedures
The following control procedures are available:
•
SW_ENABLECACHING
•
SW_DISABLECACHING
•
SW_SET_MBOX
•
SW_SET_PRIORITY
•
SW_SET_QUEUE
•
SW_UNSET_MBOX
•
SW_UNSET_PRIORITY
•
SW_UNSET_QUEUE
TIBCO iProcess Engine (Oracle) Administrator’s Guide
306
| SW_ENABLECACHING
SW_ENABLECACHING
The SW_ENABLECACHING procedure enables the caching of work item (reqid) and
case number (casenum) sequence numbers for the current database session.
Syntax
Notes
SW_ENABLECACHING ()
Caching reqid and casenum sequence numbers can be used to enhance batch
SQL performance in appropriate situations.
When sequence number caching is enabled, the first transaction in the session
retrieves its sequence numbers from the database, but subsequent transactions in
the same session retrieve their sequences from the cache. (The size of the cache is
determined by the value of the CNUM_SEQ_CACHE and REQID_SEQ_CACHE process
attributes).
Unused sequence numbers in the cache are discarded when the database session
terminates. This can result in gaps in the value of the sequence numbers if caching
is used inappropriately. For example, if you enable caching for a session that
simply starts a single case, all the unused iProcess case numbers will be lost.
Sequence number caching is enabled by default when a database session is
started. Use the SW_DISABLECACHING procedure to disable sequence number
caching.
For more information about sequence number caching, see "Sequence Number
Caching" in TIBCO iProcess Engine Administrator's Guide.
The SW_ENABLECACHING procedure is part of the SSOLITE_MSG package.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 307
SW_DISABLECACHING
The SW_DISABLECACHING procedure disables the caching of work item (reqid)
and case number (casenum) sequence numbers for the current database session.
Syntax
Notes
SW_DISABLECACHING ()
Sequence number caching is enabled by default when a database session is
started.
See the SW_ENABLECACHING procedure for more information about the use of
sequence number caching, and when you should enable or disable it.
The SW_DISABLECACHING procedure is part of the SSOLITE_MSG package.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
308
| SW_SET_MBOX
SW_SET_MBOX
The SW_SET_MBOX procedure tells the current SSOLite session to use a different
Mbox set from the default one.
Syntax
SW_SET_MBOX (
mbox_set_id
in number(5))
where:
•
Notes
mbox_set_id is a unique identifier for the Mbox set you want to use.
This procedure is useful to partition messages for the purpose of performance or
service levels. The procedure can be used in many ways, including for separating
out bulk operations, such as purging or starting cases. Other sessions will still use
the default Mbox set for operations such as delayed releases.
Use the SW_UNSET_MBOX procedure to restores using the default Mbox set for all
operations.
Example
The following example shows how to set another Mbox set BGMBSETB for bulk
operations. Remember to create the sw_db_bgqueue_3 and sw_db_bgqueue_4
physical queuesbgmboxtable3 and bgmboxtable4 tables, and the bgmboxqueue3
and bgmboxqueue4 AQ first. For more information about queue processing and
Mbox set creation, see Processing Queues on page 271.
# Step 1. Add two new message queues.
#
swadm add_queue BGMBOX3 Local 0003:swpro.sw_db_bgqueue_3
swadm add_queue BGMBOX4 Local 0003:swpro.sw_db_bgqueue_4
# Step 2. Add a new Mbox set.
#
swadm add_mboxset BGMGSETB Local
# Step 3. View Mbox and queue IDs.
#
swadm show_mboxsets v
swadm show_queues
# Step 4. Add the BGMBOX3 and BGMBOX4 message queues to the BGMGSETB Mbox set (
6 is the Mboxset ID of the BGMGSETB Mbox set,
8 is the queue ID of the BGMBOX3 message queue, and
9 is the queue ID of the BGMBOX4 message queue.)
#
swadm add_queue_to_mboxset 6 8
swadm add_queue_to_mboxset 6 9
# Step 5. Set the BGMGSETB Mbox set for bulk case starts.
#
EXEC swpro.SW_SET_MBOX 6
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 309
CALL swpro.SW_SET_MBOX(6)/
# Step 6. Start the bulk cases.
#
EXEC swpro.SW_ADD_PACK_DATA 'CustName', 'Allsop, J.A'
EXEC swpro.SW_ADD_PACK_DATA 'CustID', '478163'
EXEC swpro.SW_CASESTART 'CUSTREQ', -1, -1, 'Refund request', 'user35', '', 0, 0CALL
swpro.SW_ADD_PACK_DATA ('CustName', 'Allsop, J.A')/
CALL swpro.SW_ADD_PACK_DATA ('CustID', '478163')/
CALL swpro.SW_CASESTART ('CUSTREQ', -1, -1, 'Refund request', 'user35', '', ?, ?)/
# Step 7. Restore using the default Mbox set.
#
EXEC swpro.SW_UNSET_MBOX
CALL swpro.SW_UNSET_MBOX()/
# Step 1. Add two new message queues.
#
swadm add_queue BGMBOX3 Local 0001::bgmboxtable3:bgmboxqueue3
swadm add_queue BGMBOX4 Local 0001::bgmboxtable4:bgmboxqueue4
# Step 2. Add a new Mbox set.
#
swadm add_mboxset BGMGSETB Local
# Step 3. View Mbox and queue IDs.
#
swadm show_mboxsets v
swadm show_queues
# Step 4. Add the BGMBOX3 and BGMBOX4 message queues to the BGMGSETB Mbox set (
6 is the Mboxset ID of the BGMGSETB Mbox set,
8 is the queue ID of the BGMBOX3 message queue, and
9 is the queue ID of the BGMBOX4 message queue.)
#
swadm add_queue_to_mboxset 6 8
swadm add_queue_to_mboxset 6 9
# Step 5. Set the BGMGSETB Mbox set for bulk case starts.
#
EXEC ssolite.SW_SET_MBOX(6);
# Step 6. Start the bulk cases.
#
declare
casenum numeric(20);
reqid numeric(20);
begin
ssolite_data.SW_ADD_PACK_DATA ('CustName', 'Allsop, J.A.');
ssolite_data.SW_ADD_PACK_DATA ('CustID', '478163');
ssolite.SW_CASESTART ('CUSTREQ', -1, -1, 'Refund request', 'user35', '', casenum,
reqid);
end;
/
commit;
# Step 7. Restore using the default Mbox set.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
310
| SW_SET_MBOX
#
EXEC ssolite.SW_UNSET_MBOX();
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 311
SW_SET_PRIORITY
The SW_SET_PRIORITY procedure sets the internal message queue priorities. The
procedure only changes the priority of the messages SSOLite sends. It does not
change the SW_CP_VALUE and SW_IP_VALUE. So any subsequent messages for that
case will remain at the default level or will be processed in the order of
SW_CP_VALUE or SW_IP_VALUE when using iProcess Workspace (Windows) to
process work items.
Syntax
SW_SET_PRIORITY (
message_priority in integer)
where:
•
message_priority is the priority value.
You can set priorities ranging from 1 to 999, where 1 is the highest priority, for
internal message queues when passing messages between iProcess processes
such as from the Background process to WIS processes, or from SSOLite to the
Background process. Its default value is 50. See Prioritizing Messages on
page 273 for more information.
Notes
Example
Use the SW_UNSET_PRIORITY procedure to restore the default message queue
priorities.
The following example sets the SW_CASESTART priority of Case1 and Case2 to 70,
Case3 and Case4 to 100, and Case5 to the default priority.
begin
ssolite.SW_SET_PRIORITY (70);
ssolite.SW_CASESTART ('CUSTREQ',
ssolite.SW_CASESTART ('CUSTREQ',
ssolite.SW_SET_PRIORITY (100);
ssolite.SW_CASESTART ('CUSTREQ',
ssolite.SW_CASESTART ('CUSTREQ',
ssolite.SW_UNSET_PRIORITY ();
ssolite.SW_CASESTART ('CUSTREQ',
end;
/
commit;
-1, -1, 'Case1', 'user35', '', 0, 0);
-1, -1, 'Case2', 'user35', '', 0, 0);
-1, -1, 'Case3', 'user35', '', 0, 0);
-1, -1, 'Case4', 'user35', '', 0, 0);
-1, -1, 'Case5', 'user35', '', 0, 0);
TIBCO iProcess Engine (Oracle) Administrator’s Guide
312
| SW_SET_QUEUE
SW_SET_QUEUE
The SW_SET_QUEUE procedure forces all messages posted in the current database
session to use the same background queue.
Syntax
Notes
SW_SET_QUEUE ()
By default, SSOLite stored procedures write messages to the BG processes using
the default background message queues, using a round-robin allocation on a
per-session basis. This allows the message load to be spread evenly across all of
the available background queues. (See Processing Queues on page 271 for more
information.)
If required, you can use the SW_SET_QUEUE procedure to force all messages that
are subsequently posted in the current session to use the same background queue.
After the SW_SET_QUEUE procedure has been called, the next message that is
posted uses the next available background queue (as per normal round-robin
allocation). Subsequent messages are then posted to the same queue, until either:
•
the SW_UNSET_QUEUE procedure is called, after which messages are again
allocated on the default round-robin basis, or
•
the database session is terminated.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 313
SW_UNSET_MBOX
The SW_UNSET_MBOX procedure restores using the default Mbox set for all
operations.
Syntax
Notes
Example
SW_UNSET_MBOX ()
Use the SW_SET_MBOX procedure to tell SSOLite to use a different Mbox set for
bulk purges or bulk case starts.
See the example of SW_SET_MBOX.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
314
| SW_UNSET_PRIORITY
SW_UNSET_PRIORITY
The SW_SET_PRIORITY procedure restores the default message queue priorities.
Syntax
Note
SW_UNSET_PRIORITY ()
You can set priorities for internal message queues when passing messages
between iProcess processes such as from SSOLite to the BG process. See
Prioritizing Messages on page 273 for more information.
Use the SW_SET_PRIORITY procedure to set the internal message queue priorities.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 315
SW_UNSET_QUEUE
The SW_SET_QUEUE procedure forces the use of round-robin queue allocation for
messages posted in the current database session.
Syntax
Notes
SW_UNSET_QUEUE ()
The SW_UNSET_QUEUE procedure cancels the effect of a previous SW_SET_QUEUE
procedure call. See the SW_SET_QUEUE procedure for more information.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
316
| Debug Procedures
Debug Procedures
The following debug procedures are available:
•
SW_SET_DEBUG
•
SW_GET_DEBUG
•
SW_CLEAR_DEBUG
Debug output data is stored in the following temporary table:
TEMPORARY TABLE SSOLITE_DEBUG_DATA (
message
varchar(256));
The table simply holds the debug message text in inserted order. If an application
has enabled debugging, a simple select * from SSOLITE_DEBUG_DATA
statement can be used to display the debug data.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 317
SW_SET_DEBUG
The SW_SET_DEBUG procedure turns debugging on or off.
Syntax
SW_SET_DEBUG(
enable
in integer)
where enable is a flag that turns debugging on or off. Specify:
•
1
•
0 to disable debugging. Note that any existing debug information written to
the SSOLITE_DEBUG_DATA temporary table for the current transaction is still
available.
to enable debugging (and create the SSOLITE_DEBUG_DATA temporary table).
TIBCO iProcess Engine (Oracle) Administrator’s Guide
318
| SW_GET_DEBUG
SW_GET_DEBUG
SW_GET_DEBUG
returns the number of rows of debug data available in the
table, or -1 if debugging is not enabled.
SSOLITE_DEBUG_DATA
Syntax
Notes
SW_GET_DEBUG() returns integer
You must call SW_GET_DEBUG to populate the SSOLITE_DEBUG_DATA table. Calling
the procedure copies data from the Oracle DBMS_OUTPUT package to SSOLite's
own data type.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 319
SW_CLEAR_DEBUG
Calling SW_CLEAR_DEBUG clears all existing debug data and resets the
SSOLITE_DEBUG_DATA temporary table.
Syntax
Notes
SW_CLEAR_DEBUG()
Use of this procedure is optional, as the use of temporary tables to hold debug
data ensures that data is cleared anyway.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
320
| SW_CLEAR_DEBUG
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 321
Appendix D
Database Stored Procedures
This appendix describes the package of database stored procedures.
Topics
•
Overview, page 322
•
CASENUM_FIND_GAPS, page 323
TIBCO iProcess Engine (Oracle) Administrator’s Guide
322
| Overview
Overview
Database stored procedures are available in the iProcess database and you can
find them in the Oracle script file, init2Kora_tok.sql.
Sequence numbers can be generated by calling the stored procedures. See
Chapter 4, Sequence Numbers, on page 37 for more information.
The database stored procedures include:
•
sp_cdqp_cfg_sequence
•
sp_cdqp_def_sequence
•
sp_cnum_sequence
•
sp_procid_sequence
•
sp_reqid_sequence
•
sp_waitid_sequence
•
sp_iap_monitor_id_sequence
•
sp_eaiws_jms_provider_seq
•
sp_eaiws_jms_destination_seq
•
casenum_find_gaps
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 323
CASENUM_FIND_GAPS
The CASENUM_FIND_GAPS stored procedure adds a list of free case number gaps to
the casenum_gaps table.
If the case number or the subcase number generated from the sequence table
reaches the maximum case number, 4294967295, then the following cases cannot
be started. This stored procedure is used to scan a range of case numbers and
create available blocks of free case numbers for reuse. It operates across a case
range and only allocates free case numbers. The free case numbers are available
either because the case numbers have never been used or from the original cases
that have been purged.
The casenum_gaps table is used to holds the free case number gaps that are
created by the CASENUM_FIND_GAPS stored procedure. See casenum_gaps for more
information.
Syntax
CASENUM_FIND_GAPS (
v_casenum_min
v_casenum_max
v_gap_size
IN NUMBER,
IN NUMBER,
IN NUMBER)
where:
•
v_casenum_min
specifies the minimum case number of the range.
•
v_casenum_max
specifies the maximum case number of the range.
•
v_gap_size
specifies the minimum size of a gap that contains only free case
numbers.
How to Reuse Free Case Numbers
Perform the following steps to reuse the free case numbers:
TIBCO recommends that you shut down iProcess Engine before running
CASENUM_FIND_GAPS. If you want to run the procedure against a running system,
you must ensure that the case range supplied does not overlap with the ranges
currently being used, as there is the possibility of overlapping gaps with duplicate
case numbers being created.
1. Shut down TIBCO iProcess Engine.
2. Periodically run the CASENUM_FIND_GAPS stored procedure as the database
administrator.
To do this, you can create a SQL script as shown in the following example, and
use SQL*Plus to run the script.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
324
| CASENUM_FIND_GAPS
conn swpro_11309/[email protected];
set serveroutput on
BEGIN
CASENUM_FIND_GAPS ( 100, 500, 20);
END;
/
quit;
In the example, CASENUM_FIND_GAPS (100, 500, 20) looks for the gaps of at
least 20 free case numbers from case number 100 to 500. If the range has three
gaps: 130 - 140, 240 - 270, and 430 - 480, only the last two gaps will be listed in
the casenum_gaps table for iProcess Engine to allocate case numbers.
3. Restart TIBCO iProcess Engine.
When TIBCO iProcess Engine wants to cache a new batch of sequences, it will
first use the case numbers in the casenum_gaps table that are listed by the
CASENUM_FIND_GAPS stored procedure and then allocate the unused new case
numbers when the case numbers in the table are used up.
Notes
Before running the stored procedure, note that:
•
Running the CASENUM_FIND_GAPS stored procedure may take a long time. It is
only of benefit in the areas where the density of the occupied case numbers is
low enough to have many gaps in between. This is typically in the lower
range of case numbers, as these are older cases and more likely to have been
closed and purged. The area close to the most recently started cases is likely to
be densely populated, because all these cases are new and less likely to be
closed and purged.
•
It is recommended to have a good purge strategy to ensure that there are
plenty of available case numbers for reuse.
•
TIBCO recommends that you do not run CASENUM_FIND_GAPS repeatedly on
the same case number range. Check the values in the casenum_gaps table for
the listed gaps and run the procedure on a range outside of the highest and
lowest figures in the table.
•
The performance of CASENUM_FIND_GAPS is proportional not to the size of the
range, but to the number of actual cases in the range. For instance, when
running it on a range from 0 to 100 million, if there are only 5000 cases in that
range, it will be very fast and might only take a few seconds. While running it
on a range from 100 million to 105 million, if there are close to 5 million cases
in that range, it will take considerably longer. To find how many cases are in
the intended range, run the following SQL:
•
SELECT COUNT(*) FROM CASE_INFORMATION WHERE CASENUM >
v_casenum_min AND CASENUM < v_casenum_max
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 325
•
See Also
Based on previous runs and recorded timings, it should be possible to predict
the time CASENUM_FIND_GAPS will take for any given range with a reasonable
amount of accuracy.
casenum_gaps
TIBCO iProcess Engine (Oracle) Administrator’s Guide
326
| CASENUM_FIND_GAPS
TIBCO iProcess Engine (Oracle) Administrator’s Guide
| 327
Appendix E
Unused Tables
The following tables are created by the database creation script (init2Kora.sql
on UNIX, init2Kora_tok.sql on Windows), but are not currently used by the
iProcess Engine:
•
pack_attach
•
process_invqueue
•
prounqid
•
attachment
Do not delete these tables. They are reserved for possible future use.
TIBCO iProcess Engine (Oracle) Administrator’s Guide
328
| Unused Tables
TIBCO iProcess Engine (Oracle) Administrator’s Guide
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement