7/31/2019 Advance Design Workspace Windows
1/124
TIBCOiProcess Modeler
Advanced Design
Software Release 11.1September 2009
7/31/2019 Advance Design Workspace Windows
2/124
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCHEMBEDDED 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 BYANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS ANDCONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTEDSOFTWARE 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 INLICENSE.PDF). USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS,AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TOBE BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyrightlaws and treaties. No part of this document may be reproduced in any form without the writtenauthorization of TIBCO Software Inc.
TIB, TIBCO, TIBCO Software, TIBCO Adapter, Predictive Business, Information Bus, The Power of
Now, TIBCO iProcess are either registered trademarks or trademarks of TIBCO Software Inc. in theUnited States and/or other countries.
EJB, Java EE, J2EE, JMS and all Java-based trademarks and logos are trademarks or registeredtrademarks of Sun Microsystems, Inc. in the U.S. and other countries.
All other product and company names and marks mentioned in this document are the property oftheir 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. Please see the readme.txt filefor the availability of this software version on a specific operating system platform.
THIS DOCUMENT IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHEREXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICALERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESECHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCOSOFTWARE 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, DIRECTLYOR INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE,INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.
Copyright 1994-2009 TIBCO Software Inc. ALL RIGHTS RESERVED.
TIBCO Software Inc. Confidential Information
7/31/2019 Advance Design Workspace Windows
3/124
TIBCO iProcess Modeler - Advanced Design
| i
Backto
Library
Contents
About This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
How to Use This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
Target Audience. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Changes From the Previous Issue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
Where You Can Find More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ixOther Sources of Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Documentation Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
Chapter 1 Defining and Using Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What are Sub-Procedures? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Why Use Sub-Procedures? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Calling Sub-Procedures from the Main Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Nesting Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
How Do Sub-Procedures Work? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Mapping Case Data Between the Main Procedure and Sub-Procedures. . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Defining a Sub-Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Editing a Sub-Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Summary of Calling Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Defining Sub-Procedure Parameters Available for Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Why Define Sub-Procedure Parameters?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Methods of Defining Sub-Procedure Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Automatically Defining Input/Output Parameters for a Sub-Procedure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Manually Defining Sub-Procedure Input Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Defining Valid Values for a Sub-Procedure Input Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Manually Defining Sub-Procedure Output Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Chapter 2 Defining a Static Call to a Sub-Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Adding a Static Sub-Procedure Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Defining Call Definition Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Defining Input and Output Parameter Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Defining Input and Output Field Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Chapter 3 Using Array Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37What are Array Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
4/124
TIBCO iProcess Modeler - Advanced Design
ii | Contents
Backto
Library
Why Use Array Fields? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
How Do Array Fields Work in iProcess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Using Composite Array Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Example of Using Arrays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Referencing Elements in Array Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Referencing an Array by Name Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Referencing Arrays in an abox file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Referencing Array Elements in Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Iterating Through and Finding Array Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Chapter 4 Defining Sub-Procedure Parameter Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47What are Sub-Procedure Parameter Templates? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Why Use Sub-Procedure Parameter Templates? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Defining a Sub-Procedure Parameter Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Editing a Sub-Procedure Parameter Template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Removing a Sub-Procedure Parameter Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Chapter 5 Calling a Dynamic Number of Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Why Use a Dynamic Call to Sub-Procedures? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
How Does a Dynamic Call to Multiple Sub-Procedures Work?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Example of Designing a Procedure with Dynamic Multiple Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Defining a Dynamic Call to Multiple Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Defining Input and Output Mappings Using a Sub-Procedure Parameter Template . . . . . . . . . . . . . . . . . . . 62
Editing a Dynamic Sub-Procedure Call Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Troubleshooting Dynamic Sub-Procedure Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Stopping the Process if an Error Occurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Returning an Error Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Chapter 6 Creating Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Creating a Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Using the Script Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Defining Script Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Using Conditions in Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Using Loops in Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Using Parameters in Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Using Exit Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Combining Constructs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Defining a Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Saving Changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Script Error Checking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
5/124
TIBCO iProcess Modeler - Advanced Design
Contents | iii
Back
to
Library
Exiting the Script Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Editing a Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Deleting a Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Configuring the Script Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Changing Colors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Using Dynamic Scroll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Setting Tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Displaying Nesting Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Calling Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Creating a Private Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Example of Using a Private Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Chapter 7 Using Case Prediction to Forecast Outstanding Work Items. . . . . . . . . . . . . . . . . . 81
About Case Prediction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Overview of Setting Up Case Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Enabling a Procedure or Sub-Procedure to use Case Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Using Case Prediction with Sub-Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Defining Duration of a Procedure or Sub-Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Defining Duration of Procedure Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Defining Predicted Routes for Condition Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Chapter 8 Using Work Queue Parameter Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Using Work Queue Parameter Fields in Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Using Work Queue Parameter Fields in Work Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Work Queue Parameter Field Identifiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Making Sure Work Queue Parameter Field Definitions are Unique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Chapter 9 Using Work Item Priorities and Escalation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
About Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Changing the Default Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Changing Priority at Case Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Setting Priority at Step Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Changing Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Changing Priority Escalation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Changing Work Item Priority in a Work Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Where can Priorities be Used? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
6/124
TIBCO iProcess Modeler - Advanced Design
iv | Contents
Back
to
Library
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
7/124
TIBCO iProcess Modeler - Advanced Design
|v
Back
to
Library
About This Guide
This guide explains and demonstrates how to add more advanced functionality toyour iProcess procedures using features such as sub-procedures, dynamicsub-procedure calls, case prediction and scripts.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
8/124
TIBCO iProcess Modeler - Advanced Design
vi | About This Guide
Back
to
Library
How to Use This Guide
You should already have a good understanding of creating a basic procedure, seeTIBCO iProcess Modeler - Getting Started guideand TIBCO iProcess Modeler - BasicDesign guide.
Use this guide as a reference when defining your procedures. Refer to thefollowing chapters depending on which features you want to use:
Chapter 1, Defining and Using Sub-Procedures explains how to create asub-procedure.
Chapter 2, Defining a Static Call to a Sub-Procedure describes how to define acall to a sub-procedure.
Chapter 3, Using Array Fields describes the use of array fields, which are usedin conjunction with dynamic sub-procedures and graft steps.
Chapter 4, Defining Sub-Procedure Parameter Templates describes how tocreate a template for use with dynamic sub-procedure calls and graft steps.
Chapter 5, Calling a Dynamic Number of Sub-Procedures explains how todefine a dynamic call to multiple sub-procedures.
Chapter 6, Creating Scripts describes how to use scripts to enhance thefunctionality of your procedure.
Chapter 7, Using Case Prediction to Forecast Outstanding Work Itemsexplains how to set up case prediction to forecast outstanding work items.
Chapter 8, Using Work Queue Parameter Fields describes how to define workqueue parameter fields. These are for defining application-specific data inyour procedure so that you can display, sort or filter work queues using thesefields.
Chapter 9, Using Work Item Priorities and Escalation describes how to setpriorities for work items and how to escalate work items so they can bemoved up the work queue automatically.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://getstart.pdf/http://basic.pdf/http://basic.pdf/http://basic.pdf/http://basic.pdf/http://getstart.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
9/124
TIBCO iProcess Modeler - Advanced Design
Target Audience |vii
Back
to
Library
Target Audience
This guide is aimed at the following types of iProcess user:
iProcess managers/supervisors
Business analysts and IT specialists
IT consultants specializing in business process management/workflow andthe iProcess Suite.
It is assumed that all users have attended a TIBCO training course before startingto define procedures and design forms and this is strongly recommended.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
10/124
TIBCO iProcess Modeler - Advanced Design
viii | About This Guide
Back
to
Library
Changes From the Previous Issue
This issue contains only minor corrections.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
11/124
TIBCO iProcess Modeler - Advanced Design
Where You Can Find More Information | ix
Back
to
Library
Where You Can Find More Information
The TIBCO iProcess Modeler - Advanced Design guideis part of the suite of TIBCOiProcess Modeler guides, which together cover all aspects of iProcess proceduredefinition. The following table lists all the guides in the suite with a briefsummary of their contents.
Guide Describes...
Getting Started How to create basic iProcess
procedures using a combination ofthe TIBCO iProcess Workspace(Windows) and TIBCO iProcessModeler.
Procedure Management How to manage iProcess procedureobjects.
Basic Design The basic principles of proceduredesign using a combination of theTIBCO iProcess Workspace(Windows) and TIBCO iProcessModeler.
Advanced Design(this guide)
How to add more advancedfunctionality to iProcess proceduresusing features such assub-procedures, case prediction andscripts.
Integration Techniques How to use the iProcess Suitesintegration features to integrateprocedures with external applicationssuch as databases or customapplications.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://getstart.pdf/http://prmgmt.pdf/http://basic.pdf/http://int_ug.pdf/http://doc_lib.pdf/http://int_ug.pdf/http://basic.pdf/http://prmgmt.pdf/http://getstart.pdf/7/31/2019 Advance Design Workspace Windows
12/124
TIBCO iProcess Modeler - Advanced Design
x | About This Guide
Back
to
Library
The following diagram shows how the different guides in the suite relate to eachother, and how some guides build on information presented in other guides.
If you are new to iProcess procedure development, you are advised to follow thereading path shown.
Procedure
Management
Advanced
Design
Integration
Techniques
Basic
Design
Getting
Started
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://int_ug.pdf/http://int_ug.pdf/http://basic.pdf/http://basic.pdf/http://getstart.pdf/http://getstart.pdf/http://int_ug.pdf/http://int_ug.pdf/http://basic.pdf/http://basic.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://getstart.pdf/http://getstart.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
13/124
TIBCO iProcess Modeler - Advanced Design
Where You Can Find More Information |xi
Back
to
Library
Other Sources of Information
You can find more information about the TIBCOiProcess Workspace (Windows) andthe TIBCO iProcess Modeler from the following sources, which are supplied with
the TIBCO iProcess Modeler software (in the \docs directory):
Installation Guide, which explains how to install, upgrade and remove thesoftware.
Release Notes, which provide information about new and changed features,known issues and closed issues for this release.
Readme file, which provides any last-minute and version-specific
information that could not be included in the main documentation. There is also a useful resource, http://power.tibco.com, that delivers
technical content to the TIBCO user community. This site has beendeveloped to foster an open forum where users of TIBCO products can findvaluable information, example projects and resources for those projects,and exchange ideas with other users. Entry to this site requires a usernameand password. If you do not have a username, you can request one.
Online help is also available within the TIBCO iProcess Modeler and TIBCO iProcessWorkspace (Windows).
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://power.tibco.com/http://power.tibco.com/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
14/124
TIBCO iProcess Modeler - Advanced Design
xii | About This Guide
Back
to
Library
Documentation Conventions
The following conventions are used throughout this guide.
Convention Description
italics Indicates emphasis, variables and manual titles.
monospace text Indicates code samples, commands and their options, directories andfilenames. Any text that you must enter from the keyboard isdisplayed as monospace text.
monospace italic
text
Indicates variables in commands.
{ } Indicates a set of choices in a syntax line. The braces should not beentered.
[ ] Indicates optional items in a syntax line. The brackets should not be
entered.
Example:
SHOW_ALL_ATTRIBUTES [attribute]
| Indicates mutually exclusive choices in a syntax line i.e. you enteronly one of the given choices. You should not enter the symbol itself.
SWDIR Indicates the iProcess system directory where the TIBCO iProcessEngine is installed.
Example:
If SWDIR is set to \swserver\staffw_nod1 then the full path to theswutil command would be:
on a Windows server (on the c: drive):
c:\swserver\staffw_nod1\bin\swutil
on a UNIX server:
/swserver/staffw_nod1/bin/swutil, or
$SWDIR/bin/swutil
Note: On a UNIX system, the environment variable $SWDIRshould be set up to point to the iProcess system directory for the
root and iProcess Administrator users.
|1
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
15/124
TIBCO iProcess Modeler - Advanced Design
|1
Back
to
Library
Chapter 1 Defining and Using Sub-Procedures
This chapter describes the use of sub-procedures and how to create them. Youshould read this chapter before working with sub-procedures, sub-procedureparameter templates, array fields and multiple sub-procedures.
Topics
What are Sub-Procedures?, page 2
Why Use Sub-Procedures?, page 3
Calling Sub-Procedures from the Main Procedure, page 5
How Do Sub-Procedures Work?, page 6
Defining a Sub-Procedure, page 8
Editing a Sub-Procedure, page 10
Summary of Calling Sub-Procedures, page 11
Defining Sub-Procedure Parameters Available for Mapping, page 15
2 | Chapter 1 Defining and Using Sub Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
16/124
TIBCO iProcess Modeler - Advanced Design
2 | Chapter 1 Defining and Using Sub-Procedures
Back
to
Library
What are Sub-Procedures?
A sub-procedure is a type of iProcess procedure that can be called from a step inone or more other procedures. When you design a procedure to fit your businessprocess, you can think of it as the main procedure and then you can call anynumber of sub-procedures at any point along your main procedure.Sub-procedures can receive case data from the main procedure and can returncase data to it.
A sub-procedure is designed in the same way as an iProcess main procedure, butyou select Sub-procedure in the New Procedure dialog instead of MainProcedure.
Refer to Defining a Sub-Procedure on page 8 for information about defining asub-procedure.
You can also create a sub-procedure that is based on a sub-procedure parametertemplate. This means that the input and output parameters for the sub-procedureare inherited from the template. Refer to Defining Sub-Procedure Parameter
Templates on page 47 for more information about templates. All sub-proceduresthat are to be called from a dynamic sub-procedure call must be based on the sametemplate.
Why Use Sub-Procedures? |3
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
17/124
TIBCO iProcess Modeler - Advanced Design
Why Use Sub-Procedures? |3
Back
to
Library
Why Use Sub-Procedures?
The following are some example reasons why you might want to usesub-procedures as part of your procedure design:
Your procedure is becoming too large to manage.
Any procedure over 50-100 steps can be difficult to manage. In this case, it canbe more efficient to break up the procedure and create sub-procedures to splitit up into more manageable chunks.
You have procedures that carry out identical tasks.
When you create a number of iProcess procedures for your business, it is oftenthe case that several procedures have sections that carry out identical tasks. Toprevent duplication of effort in both writing and maintaining yourprocedures, you can use sub-procedures that can be called any number oftimes. Typical examples of common business processes are:
getting approval for payment, and updating an external accounting
system. common back office processing behind a variety of front-office procedures.
You need multiple people to work on a procedure.
If you have a number of procedure developers who need to work on parts ofthe business process independently, you can split up the procedure intosub-procedures so that each person can work on their allocated procedures.
You need to call a dynamic number of sub-procedures when the case is rundepending on what data is entered during a case of a procedure.
If you define a dynamic call to your sub-procedures, it is only at run-timewhen iProcess determines which sub-procedures need to be run. For example,if a case is started and the first few steps collate details about a customersorder, iProcess can determine which sub-procedures to run depending onwhat case data has been entered. Therefore, if a stock check and an accountcredit check are required, two sub-procedures can be run to perform these
extra processes.
4 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
18/124
TIBCO iProcess Modeler - Advanced Design
4 | Chapter 1 Defining and Using Sub Procedures
Back
to
Library
You are using an external application that controls what processes need to berun. Sub-procedures can be started by the application as required (via TIBCOiProcess Objects or SAL application calls) and attached to the main
procedure via a graft step.For example, if you have a financial application that determines whatprocedures are to be run based upon case data gathered by an iProcessprocedure, it can start the required sub-procedures (such as DEBIT, CREDITand AUDIT). These are attached to the main procedure via a graft step. Referto Using Graft Steps in the TIBCO iProcess Modeler - Integration Techniquesguide for more information about graft steps.
Calling Sub-Procedures from the Main Procedure |5
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://int_ug.pdf/http://int_ug.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
19/124
TIBCO iProcess Modeler - Advanced Design
g |
Back
to
Library
Calling Sub-Procedures from the Main Procedure
After creating your sub-procedure, you need to define a call from the mainprocedure to run it.
You can define a step in your main procedure to call:
a static sub-procedure
Use the static sub-procedure step tool when you know at procedure
definition time the sub-procedure you want to run. You may have a specificapproval process that you have created as a sub-procedure, which can becalled from many of your procedures. Refer to Defining a Static Call to aSub-Procedure on page 21.
a dynamic number of sub-procedures
Use the dynamic sub-procedure call step tool when you have multiple
sub-procedures that can be called in your procedure. The procedure can bedesigned so that from the case data entered, an array field can be populatedwith the required sub-procedures to run. Refer to Using Array Fields onpage 37, Defining Sub-Procedure Parameter Templates on page 47 and then
Calling a Dynamic Number of Sub-Procedures on page 55.In each call, the sub-procedure(s) perform a number of steps before returning tothe main procedure.
Nesting Sub-Procedures
You can nest sub-procedures so that one sub-procedure calls anothersub-procedure. The default value for the maximum depth of sub-procedures is100 but you can change this value within the SWDIR\etc\staffcfg file. SeeTuning the iProcess Engine using SWDIR\etc\staffcfg Parameters in the TIBCOiProcess Engine Administrators Guide for more information.
Sub-procedures can only be started from within another procedure. They cannotbe started from the Case Start dialog.
6 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://adminipe.pdf/http://adminipe.pdf/http://adminipe.pdf/http://adminipe.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
20/124
TIBCO iProcess Modeler - Advanced Design
|
Back
to
Library
How Do Sub-Procedures Work?
At run-time, when a case in the main procedure reaches the sub-procedure callstep, the following sequence of events occurs:
1. iProcess starts a new case of the sub-procedure(s) and links it to the mainprocedures case.
2. The case data in the main procedure is transferred to the sub-case(s), whichprogress according to the rules defined in the sub-procedure. The transfer ofcase data is achieved by mapping fields in the main procedure to fields or
parameters in the sub-procedure.
3. When the sub-case(s) reaches its conclusion, the case data is transferred backto the main case via the sub-procedure field/parameter mapping.
4. When the sub-case(s) has completed, the actions of the step that called thesub-procedure(s) are executed and the main case proceeds to the next step(s).
The audit trail for the sub-case(s) can be seen within the audit trail for the maincase. See Viewing an Audit Trail for a Selected Case in the TIBCO iProcessWorkspace (Windows) Managers Guide for more information on audit trails.
Mapping Case Data Between the Main Procedure and Sub-Procedures
When you define a sub-procedure call in your main procedure, you need to definewhat case data from the main procedure is going to be transferred to thesub-procedure(s), and what case data will be returned from the sub-procedure(s)when it terminates.
The transfer of case data is determined by mapping sub-procedure fields (orparameters if you have defined sub-procedure parameters) to fields in the mainprocedure.
If you are defining a static call to a sub-procedure, you can pre-define theparameter mapping using parameters from the sub-procedure you are calling.This is because you know the sub-procedure that will be started.
If you are defining a dynamic sub-procedure call, you can still pre-define theparameter mapping but the parameters are taken from the sub-procedure
parameter template on which the call is based. This is because the sub-proceduresthat are run will be decided at run-time.
Sub-procedure parameters can be defined to restrict the list of sub-procedurefields that can be mapped to main procedure fields - see Why DefineSub-Procedure Parameters? on page 15.
How Do Sub-Procedures Work? |7
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://mang_gd.pdf/http://mang_gd.pdf/http://doc_lib.pdf/http://mang_gd.pdf/http://mang_gd.pdf/7/31/2019 Advance Design Workspace Windows
21/124
TIBCO iProcess Modeler - Advanced Design
|
Back
to
Library
For example, if you have defined a dynamic call to a number of mortgageapplication sub-procedures that are only run if certain conditions have been metin the case, the following process occurs:
1. When the case is run, the array field that determines what sub-procedures tostart is populated with data. Also, array fields that have been set up to passcase data to the sub-procedures are populated with case data as the caseprogresses.
2. iProcess starts the required sub-procedures based upon the names of thesub-procedures in the sub-procedure array field.
3. iProcess uses the parameter mapping definition defined in the sub-procedure
parameter template and transfers the field/value pairs contained in the arraysto the appropriate sub-procedures.
There are two types of mapping that you can use:
Field mapping
This is the default method used. This is where you map one field from themain procedure to another field in the sub-procedure. Refer to Defining Input
and Output Field Mappings on page 33. Parameter mapping
This method extends the field mapping capability by allowing expressions orscripts in the mapping. To use parameter mapping, you have to define whatsub-procedure fields will be available for mapping. You define a parameterfor each sub-procedure field you want to include in the sub-proceduremapping. You can define these parameters for each sub-procedure or you can
create a sub-procedure parameter template containing the sub-procedureparameters you require:
See Defining Sub-Procedure Parameters Available for Mapping on page 15if you just want to define the parameters for a single sub-procedure.
See Defining Sub-Procedure Parameter Templates on page 47 if you wantto create a template containing the parameters so that you can use multiplesub-procedures.
You can then use the Parameter mapping method for mappingsub-procedure parameters to fields in the main procedure - see DefiningInput and Output Parameter Mappings on page 27.
8 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
22/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Defining a Sub-Procedure
You define a sub-procedure in exactly the same way as any other procedure, butyou must choose the sub-procedure option when entering the name for your newsub-procedure.
There are two ways you can define a new sub-procedure:
Standalone - the sub-procedure is created with no input or output parameterinformation.
Based on a sub-procedure parameter template - the sub-procedure will inherit theinput/output parameters defined in the template. If you are going to becalling this sub-procedure as part of a dynamic sub-procedure call or graftstep, it needs to be based on a template.
To define a new sub-procedure:
1. In the Procedure Management window, click Procedure Management > NewProcedure.
2. The New Procedure dialog is displayed.
3. Enter a name for your sub-procedure.
The name must be unique and can be up to 8 alpha-numeric characters. If theentered name is not unique or contains invalid characters you are warned andasked to re-specify the name.
4. Click the Sub-procedure radio button.
Defining a Sub-Procedure |9
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
23/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
5. (Optional) To base this sub-procedure on a sub-procedure parametertemplate, click the Use a Template for this Sub-Procedure check box. Use thedrop-down list box to select the template you want to use.
You must base sub-procedures on a template if you are calling a set ofsub-procedures via a dynamic call step or graft step. Refer to Chapter 5 onpage 55 for more information about dynamic sub-procedure call steps.
6. Click OK and the TIBCO iProcess Modeler opens ready for you to define yoursub-procedure.
Refer to Placing Procedure Objects in the TIBCO iProcess Modeler - BasicDesign guidefor more information about using the procedure design tools.
7. Save your sub-procedure.
You can only base a sub-procedure on a released template. Unreleasedtemplates are grayed out.
A procedure can be changed from being a main procedure to a sub-procedure and
vice versa. Refer to Changing the Procedure Type of a Version in the TIBCOiProcess Modeler - Procedure Management guide for more information about how todo this.
10 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://basic.pdf/http://basic.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://basic.pdf/http://basic.pdf/http://doc_lib.pdf/http://prmgmt.pdf/http://prmgmt.pdf/7/31/2019 Advance Design Workspace Windows
24/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Editing a Sub-Procedure
Any user with Edit permissions and access to the TIBCO iProcess Modeler canedit a sub-procedure. However, any procedure definer can make calls to anysub-procedure. See Setting Access Controls in the TIBCO iProcess Modeler -Procedure Management guide for more information about access permissions.
If a released procedure calls an unreleased sub-procedure, the work items for thesub-procedure will go to the sub-procedure owners test queues.
iProcess Administrator userscan edit all sub-procedures and procedures.
Summary of Calling Sub-Procedures |11
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
25/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Summary of Calling Sub-Procedures
This section summarizes the steps involved to define a call to yoursub-procedure(s).
Use the following table to determine the tasks you need to perform depending onhow you are setting up your procedure using sub-procedures.
After performing these steps, it is advisable to run a case of the main procedure tocheck that the sub-procedure call is made and check that the expected field valuesreturned from the sub-procedure are in your main procedure. View the audit trailfor the case to trace the flow of events and make sure it works as designed.
12 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
26/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
What Do You Want toDo?
Tasks to Perform Refer To
Dynamically call
multiplesub-procedures fromyour main proceduredepending on casedata that is entered.
1. Define asub-procedureparametertemplate.
Defining a
Sub-ProcedureParameter Template onpage 50.
2. Define thesub-procedures youwant to call. Theseneed to be based onthe samesub-procedureparameter template.
DefiningSub-ProcedureParameters Availablefor Mapping onpage 15.
3. Define the dynamicsub-procedure callstep and select thesame template used to
base thesub-procedures on.
Defining a DynamicCall to MultipleSub-Procedures onpage 60.
4. Map sub-procedureparameters to mainprocedure fields.
Defining Input andOutput MappingsUsing a Sub-ProcedureParameter Template onpage 62.
5. Define appropriatearray fields in themain procedure sothat multiplesub-procedures can becalled and multipleelements of case datacan be passed to andfrom them.
Using Array Fields onpage 37.
Summary of Calling Sub-Procedures |13
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
27/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Call a single
sub-procedure that isstatic every time a caseis run for thatprocedure.
1. Define thesub-procedure.
Defining
Sub-ProcedureParameters Availablefor Mapping onpage 15.
2. (Optional) Define IOParameters.
DefiningSub-ProcedureParameters Available
for Mapping onpage 15.
3. Define the staticsub-procedure call.
Adding a StaticSub-Procedure Call onpage 22.
4. Map sub-procedure
fields/parameters tomain procedure fields.
Defining Input and
Output ParameterMappings on page 27 ifyou have definedsub-procedureparameters or DefiningInput and Output FieldMappings on page 33 ifyou have not.
What Do You Want toDo?
Tasks to Perform Refer To
14 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
28/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Use an external
application to startmultiplesub-procedures
1. Define asub-procedureparametertemplate.
Defining a
Sub-ProcedureParameter Template onpage 50.
2. Define array fields inthe mainprocedure.
Using Array Fields onpage 37.
3. Define a graft step. Using Graft Steps inthe TIBCO iProcessModeler - IntegrationTechniques guide.
4. Map outputparameters.
Using Graft Steps inthe TIBCO iProcessModeler - Integration
Techniques guide.
5. Define the TIBCOiProcess Objects callsin your application tostart the requiredsub-procedures.
Refer to the TIBCOiProcess ObjectsWorkspace (Windows)Online Help.
What Do You Want toDo?
Tasks to Perform Refer To
Defining Sub-Procedure Parameters Available for Mapping |15
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://doc_lib.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/7/31/2019 Advance Design Workspace Windows
29/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Defining Sub-Procedure Parameters Available for Mapping
iProcess enables you to define which sub-procedure fields you will be able to mapto main procedure fields.
When defining the sub-procedure fields available for mapping, you create a set ofparameters that can be used as inputs and outputs to your sub-procedures. Aparameter is the combination of the field name and its description and optionallyits allowed values.
Depending on your use of sub-procedures, there are two methods of defining
sub-procedure parameters: per sub-procedure or for a set of sub-procedures usinga sub-procedure parameter template.
Why Define Sub-Procedure Parameters?
There are two benefits to defining the list of available sub-procedure parametersfor mapping:
Ease of mapping fields.When defining a call to your sub-procedure, you need to define the fieldmappings between the main procedure and the sub-procedure. Asub-procedure can contain a large number of fields so it can take time to sortthrough the field list and find which fields you need to map. If you only needto map a small sub-set of these fields, it is advisable to define a list ofparameters to map.
For example, if there are only two fields in the sub-procedure that you need tomap data to, you can create two parameters for these fields and prevent all ofthe other fields being displayed (including system fields) when you performthe parameter mapping.
Mapping parameters to scripts and expressions.
By defining the sub-procedure parameters available for mapping, you can usethe parameter mapping functionality that includes being able to map
parameters to expressions and scripts. (If you do not define sub-procedureparameters, you can only use the field to field mapping functionality.)
16 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
30/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Methods of Defining Sub-Procedure Parameters
To define the sub-procedure parameters that will be available for mapping to themain procedure, you have two options:
Use a sub-procedure parameter template. You must use this method if you aregoing to define dynamic calls to multiple sub-procedures or define graft steps.Refer to Chapter 4 on page 47 for more information about defining a template.Refer to Automatically Defining Input/Output Parameters for aSub-Procedure on page 16 for information about automatically defining theparameters available for mapping.
Manually select the sub-procedure fields that will be available for mapping
using the Input/Output Parameter Definition dialog and create parametersfor them. Refer to Manually Defining Sub-Procedure Input Parameters onpage 17 and Manually Defining Sub-Procedure Output Parameters onpage 19.
You can also define values for the input parameters to the sub-procedure. Thismeans that the field data is not derived from the main procedure but is defined, atdesign time, only for the sub-procedure parameter. Refer to Defining Valid Values
for a Sub-Procedure Input Parameter on page 18.
Automatically Defining Input/Output Parameters for a Sub-Procedure
There are a number of ways you can associate a parameter template with yoursub-procedure:
If you have created a sub-procedure based upon a template, the input/output
parameters will be inherited from the template. If you have created a sub-procedure that has not been based on a
sub-procedure parameter template, you can choose a template to base it onafter its initial creation.
You can also change the template that is associated with the sub-procedure.
If you have created a template containing sub-procedure parameters, you canautomatically pre-fill the sub-procedures input/output parameters by assigningthe template to it. Template parameters appear in blue so you can have a mixtureof template parameters and manually inserted parameters (black).
Defining Sub-Procedure Parameters Available for Mapping |17
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
31/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Manually Defining Sub-Procedure Input Parameters
You define the sub-procedure input parameters when you define yoursub-procedure.
1. In the TIBCO iProcess Modeler, open your sub-procedure and click Procedure> IO Parameters.
2. The Input/Output Parameter Definition dialog is displayed. The Input tab is
displayed by default.
3. In the Description column, enter a name (up to 32 characters) for the firstinput parameter you want to define.
4. In the Field Name column, use the drop-down list box to select asub-procedure field that you want to make available for sub-proceduremapping.
5. If you want this field to always be defined in any call to this sub-procedure,click in the Required column so that a tick is displayed. This field must then
be included in the Input mappings for the step to be complete. See Defining
Input Parameter Mappings on page 27.
If the menu option is grayed out, it means that your procedure has not beendefined as a sub-procedure.
18 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
32/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
6. In the Allowed Values column, you can define a set of values for thisparameter. When the Allowed Values column is selected, you can click SetAllowed Values For Parameter. Refer to Defining Valid Values for aSub-Procedure Input Parameter on page 18 for more information.
7. Press Return to save the new parameter.
8. Continue to define more parameters as required. Click OK to save yoursettings. To define the output parameters, refer to Manually DefiningSub-Procedure Output Parameters on page 19.
The entries are added to the list of declared sub-procedure parameters foryour sub-procedure.
To change the settings of an input parameter:
1. Click in the row that requires changing and update the details as required.
2. Click OK.
To remove an input parameter so that it does not appear in the list of validsub-procedure parameters, select the parameter from the list and press the Deletekey.
Defining Valid Values for a Sub-Procedure Input Parameter
When defining your sub-procedure input parameters, you can also define a list of
allowed values for any of your declared parameters so that the procedure definercan only select from a restricted list of values.
For example, if you use a sub-procedure for a generic medical checkup process,
you can make the sub-procedure more specific to the calling procedure by usingdifferent forms in the sub-procedure. If you define a Form Type field with twovalid values (in this example, Generic and Diabetic), the procedure definer canselect one of these values and the correct form will be used in the sub-procedure.If Diabetic is selected by the procedure definer, additional fields in a form can beactivated using conditional fields.
If the parameter is from a template (i.e. it is blue), you cannot delete it.
For parameters that have been defined in a template, the allowed values are set inthe template and are inherited by the sub-procedure(s) using the template.
Defining Sub-Procedure Parameters Available for Mapping |19
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
33/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
To define a list of values for a parameter, do the following:
1. On the Input tab of the Input/Output Parameter Definition dialog, select theparameter you want to define values for by clicking the gray box next to the
parameter. Click Set Allowed Values for Parameter.The Allowed Values dialog is displayed.
2. Enter a value in the Value field and click Add.
3. To remove a value, select it in the list and click Delete. To change a value,select it in the list, change the value in the Value field and click Modify.
4. Click OK to confirm your allowed values.
Manually Defining Sub-Procedure Output Parameters
You define the sub-procedure output parameters when you define yoursub-procedure.
1. In the TIBCO iProcess Modeler, open your sub-procedure and click Procedure> IO Parameters.
For text fields, you must enter the values in quotes.
If the menu option is grayed out, it means that your procedure has not beendefined as a sub-procedure.
20 | Chapter 1 Defining and Using Sub-Procedures
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
34/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
2. The Input/Output Parameter Definition dialog is displayed showing theInput tab by default. Click the Output tab.
3. In the Description column, enter a name (up to 32 characters) for the firstoutput parameter you want to define.
4. In the Mapping Type column, use the drop-down list to select how you wantto map the parameter to a main procedure parameter:
Field - you will be able to choose a sub-procedure field from the drop-downlist in the Field Name column.
Expression - You will be able to enter a valid expression in the Field Namecolumn. See the TIBCO iProcess Expressions and Functions Reference Guide formore information about using functions and expressions.
5. Click OK to save your settings and then save your sub-procedure.
The SELECTVAL and SWITCHVAL expressions can be used to createconditional expressions.
|21
D fi i St ti C ll t S b P d
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://exprfunc.pdf/http://exprfunc.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
35/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Chapter 2 Defining a Static Call to a Sub-Procedure
This chapter describes how to define a static call to a sub-procedure from yourmain procedure. Use this type of sub-procedure call when you know at proceduredefinition time which sub-procedure you want to call.
If you want to define a call to multiple sub-procedures instead where thesub-procedures to run are defined when the case is run, you need to define a
dynamic sub-procedure call step or graft step - see Calling a Dynamic Number ofSub-Procedures on page 55. Refer to Using Graft Steps in the TIBCO iProcessModeler - Integration Techniques guide for more information about graft steps.
The static sub-procedure call defines the:
sub-procedure to start
parameters that will be passed to it from the main procedure
parameters that will be returned to the main procedure when thesub-procedure completes.
22 | Chapter 2 Defining a Static Call to a Sub-Procedure
Adding a Static S b Proced re Call
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://int_ug.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
36/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
Adding a Static Sub-Procedure Call
To add a static sub-procedure call to your main procedure:
1. Open your main procedure in the TIBCO iProcess Modeler. Use the ProcedureBrowser to find the sub-procedure you want to call and drag n drop thesub-procedure onto your procedure chart window.
Alternatively, select the sub-procedure tool and click where you want to
place the object in the Process Definer layout.
The Sub-Procedure Call Definition dialog is displayed.
2. Enter a name (up to 8 characters) for the sub-procedure call in the CallReference Name field. (Optional) Enter a description (up to 24 characters) forthe call in the Description field.
These names do not have to match the sub-procedures name and descriptionas they are only for use in this procedure.
Adding a Static Sub-Procedure Call |23
If you have dragged a sub procedure onto your procedure from the procedure
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
37/124
TIBCO iProcess Modeler - Advanced Design
Back
to
Library
If you have dragged a sub-procedure onto your procedure from the procedurebrowser, the Call Reference Name and Sub-Procedure Name are pre-filledfor you.
3. Enter the name of the sub-procedure you want to call in the Sub-ProcedureName field. If you have used the sub-procedure call object to define your calli.e. you have not used the drag n drop method, do the following:
a. Click the button to the right of the Sub-Procedure Name field to see a listof existing sub-procedures on your iProcess installation. This can be eithera new, undefined, sub-procedure or an existing sub-procedure. If youenter a new name you are warned that the sub-procedure does not existand asked if you want to continue.
b. In the Select Sub-Procedure to Call dialog, use the procedure browser tofind your sub-procedure, then click OK.
4. (Optional) Enter the name of the step that you want the sub-procedure to startat in the Step to start sub-case at field.
The default start step is the first step in the procedure but you can select anyother step as appropriate. Click the button to the right of the field to see a list
of the steps in the sub-procedure you have selected.5. (Optional) Click View Usage Instructions to display any usage information
that has been set up for this sub-procedure. This can be information at aspecific URL or a text file. See Usage Instructions in the TIBCO iProcessModeler - Procedure Management guide for more information about definingusage instructions.
6. (Optional) Click View Sub-Procedure if you want to view the sub-procedure
you are calling.
The basic call reference information is now defined. You can now do thefollowing:
7. (Optional) Define the call definition options such as step prediction. SeeDefining Call Definition Options on page 25.
8. (Optional) Define a deadline for the sub-procedure call step. See Defining a
Deadline in the TIBCO iProcess Modeler - Basic Design guide.9. Define the input parameter mappings. See Defining Input Parameter
Mappings on page 27 if you have pre-defined the sub-procedure input andoutput parameters or refer to Defining Input Field Mappings on page 33 ifyou havent.
10. Define the output parameter mappings. See Defining Output ParameterMappings on page 30 if you have pre-defined the sub-procedure output
parameters or refer to Defining Output Field Mappings on page 35 if youhavent.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://basic.pdf/http://basic.pdf/http://prmgmt.pdf/http://prmgmt.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
38/124
Adding a Static Sub-Procedure Call |25
Defining Call Definition Options
7/31/2019 Advance Design Workspace Windows
39/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
Defining Call Definition Options
When defining a call definition, you can choose to select one or more of thefollowing options:
Option Description
Ignore Case Suspend Use this when you want the sub-procedureto still be processed as normal while a caseis suspended by a TIBCO iProcess Objectsor SAL application. This means that workitems generated by the sub-procedure canstill be opened, and deadlines on workitems generated by the sub-procedure arestill processed.
If Ignore Case Suspend is not checked (thedefault option), the sub-procedure is notprocessed while the case is suspended. Thismeans that:
work items generated by thesub-procedure are marked asunavailable and cannot be opened(until the case is re-activated).
deadlines on work items generated bythe sub-procedure are not processed.The date and time at which deadlinesare due are not affected, and deadlines
continue to expire. However, no actionsare processed when a deadline expires.When the case is re-activated, anyexpired deadlines are immediatelyprocessed.
Note: Cases can only be suspended andre-activated from a TIBCO iProcess
Objects or SAL application. Audit trailmessages indicate whether a case is activeor suspended. Refer to the TIBCOiProcess Objects documentation for moreinformation about suspending cases.
26 | Chapter 2 Defining a Static Call to a Sub-Procedure
Option Description
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
40/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
Dont delete outstanding caseson withdraw
Select the Dont delete outstanding caseson withdraw option. If this option is
selected, and the deadline on anoutstanding step expires or it is withdrawnas an action (release or deadline expire) ofanother step:
the deadline actions are processed.
the step remains outstanding (the stepremains in the work queue or the
sub-procedure case is not purged).
when the step is released (or thesub-procedure case completes) thenormal release actions are notprocessed but the case field dataassociated with the release step (e.g. thefield values set in a normal step whilst
in a work queue or the outputparameters of a sub-case) is applied tothe main case data.
Use sub-procedure stepduration for prediction
Calculates the total duration of all the stepsin the sub-procedure. The sub-procedurewill be displayed in the outstanding steplist but its steps are not displayed. Refer to
Chapter 7 on page 81 for more informationabout case prediction.
Include sub-procedure steps inprediction list
Includes all of the sub-case steps in theoutstanding step list. Refer to Using CasePrediction to Forecast Outstanding WorkItems on page 81 for more detailedinformation about using case
prediction.Select this option to include allof the sub-case steps in the outstandingstep list.
Option Description
Adding a Static Sub-Procedure Call |27
Defining Input and Output Parameter Mappings
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
41/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
g p p pp g
This section describes how to define input and output mappings for case data ifyou have defined the sub-procedure parameters you want to use for mapping
(see Defining Sub-Procedure Parameters Available for Mapping on page 15).If you have not defined the sub-procedure parameters you want to use formapping, see Defining Input and Output Field Mappings on page 33 instead.
Defining Input Parameter Mappings
When defining the sub-procedure call, the Sub-procedure Call Definition dialogenables you to select the sub-procedure you want to call and then define the inputand output case data mappings.
To automatically map sub-procedure fields with calling procedure fields, use theAuto Map feature. See Using Automatic Parameter Mapping on page 32 for moreinformation.
To define which fields from the main procedure are mapped to the sub-procedurefields, do the following:
1. On the Sub-Procedure Call Definition dialog, click the Input tab.
The Input and Output tabs are only displayed after a sub-procedure has beenselected on the Sub-Procedure Call Definition dialog.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
42/124
Adding a Static Sub-Procedure Call |29
2. In the Mapped To column, select the main procedure field you want to map itt O l fi ld f th fi ld t li t d N i D t t f
7/31/2019 Advance Design Workspace Windows
43/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
to. Only fields of the same field type are listed e.g. Numeric or Date except forparameters whose field type is either Text or Memo. Parameters whose fieldtype is either Text or Memo allow selection from a list of fields including both
Text and Memo fieldtypes. .
Mapping a Parameter to an Expression:
To map a sub-procedure parameter to an expression, do the following:
1. For the parameter you want to map to an expression, click in the MappingType column and select Expression from the drop-down list.
2. In the Mapped To column, enter a valid iProcess expression to map the field
to. For example, if the main procedure contains two fields for a persons name(FORENAME and SURNAME), you can create an expression to join the twovalues so that the single name is mapped to a NAME sub-procedureparameter. See the TIBCO iProcess Expressions and Functions Reference Guide formore information about expressions and functions.
Mapping a Parameter to a Script:
To perform a parameter to script mapping, do the following:
1. For the parameter you want to map to a script, choose Script in the MappingType column.
2. In the Mapped To column, select a script name or choose .Private scripts can be created for use only by this sub-procedure mapping.Refer to Creating Scripts on page 71 for more information about creatingscripts and private scripts.
3. If you want to edit the script, click Edit Mapped Script and the Script Editor isdisplayed.
If a memo is passed into a text field, then the data is truncated at the size of thetext field.
To unmap a parameter, select the entire row by clicking the gray button next tothe row and press Delete.
30 | Chapter 2 Defining a Static Call to a Sub-Procedure
Mapping a Field With Pre-Defined Values:
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://exprfunc.pdf/http://exprfunc.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
44/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
If a parameter has had values previously defined for it, the following procedureapplies:
1. Select the parameter and click in the Mapping Type column. If it has valuespre-defined, the Preset Values string is automatically entered into thiscolumn.
2. In the Mapped To column, select one of the pre-defined values from thedrop-down list box.
Defining Output Parameter Mappings
When defining the sub-procedure call, the Sub-procedure Call Definition dialogenables you to select the sub-procedure you want to call and then define the inputand output mappings. To define the output mappings:
1. On the Sub-procedure Call Definition dialog, click the Output tab.
The Output tab is displayed. A list of the defined sub-procedure outputparameters is displayed. You can map these to appropriate main procedurefields or expressions as required.
The Input and Output tabs are only displayed after a sub-procedure has beenselected on the Sub-Procedure Call Definition dialog.
Adding a Static Sub-Procedure Call |31
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
45/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
2. For each parameter, select a main procedure field to map it to from theMapped To column. Only fields of the same type as the one selected aredisplayed e.g. numeric or text.
Alternatively, you can automatically create the output mappings using theAuto-Map feature. See Using Automatic Parameter Mapping on page 32.
3. Click OK to save your settings.
Running an Output Mapping Script
Output mapping consists of mapping the sub-procedure output parameters tomain procedure fields and optionally the ability to run a private script after allmappings have been performed. This can be used to perform additional fieldmanipulation. You can use the $OPn and $OPTn names in your script to refer to
the parameter values in your script. These are displayed in the parameter list.
1. Click Output Mapping Script to define a private script.
The Script Editor is displayed.
2. Define your script and save it. Refer to Creating Scripts on page 71 for moreinformation and an example about creating private scripts.
32 | Chapter 2 Defining a Static Call to a Sub-Procedure
Using Automatic Parameter Mapping
T d h f b d i h
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
46/124
TIBCO iProcess Modeler - Advanced Design
Backto
Library
To speed up the process of sub-procedure parameter mapping, you can use theauto-map feature to automatically map fields that have the same name. This
facility can also create any fields in the main procedure that are not alreadycreated.
To automatically map sub-procedure parameters to calling fields, do thefollowing:
1. Open the Sub-Procedure Call Definition dialog, click the Input tab if youwant to automap input fields or click the Output tab to automap outputfields.
2. Click Auto-Map Parameters. The Automatic Parameter Mapping dialog isdisplayed:
3. You can select either or both of the following options:
Automatically create fields that do not exist in this procedure
Select this option if you want any sub-procedure fields that do not exist inthe calling procedure to be created when performing the parametermapping.
If you click Cancel in either the Input or Output tabs, any fields that havealready been created are not undone.
Display explanation for parameters that cannot be mapped.
Select this option so that a message is displayed for any parameters thatcannot be automatically mapped. For example, a field with the same namemay exist in the main procedure, but it is a different type to thesub-procedure field.
4. Click Yes.
Automapping does not work for fields that have allowed values defined for them.See Defining Valid Values for a Sub-Procedure Input Parameter on page 18.
Adding a Static Sub-Procedure Call |33
For example, if the sub-procedure has an input parameter calledCUSTOMERNAME and the main procedure has a field called
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
47/124
TIBCO iProcess Modeler - Advanced Design
Bac
kto
Library
pCUSTOMERNAME, the fields will be automatically mapped. If theCUSTOMERNAME field in the main procedure does not exist, the field will be
created if you select the Automatically create fields that do not exist in thisprocedure option.
Defining Input and Output Field Mappings
This section describes how to define input and output mappings for case data ifyou have not defined sub-procedure parameters to use for sub-procedure
mapping - see Defining Sub-Procedure Parameters Available for Mapping onpage 15.
If you have defined the sub-procedure parameters you want to use for mapping,see Defining Input and Output Parameter Mappings on page 27 instead.
Defining Input Field Mappings
To specify the input field data to be mapped from the main procedure to the
sub-procedure when the sub-case is started, do the following:
1. Click the Input tab from the Sub-Procedure Call Definition dialog.
The Input and Output tabs are only displayed after a sub-procedure has beenselected on the Sub-Procedure Call Definition dialog.
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
48/124
Adding a Static Sub-Procedure Call |35
To remove a field mapping, select the sub-procedure field, select (None) in the
Select field to copy FROM list and click
7/31/2019 Advance Design Workspace Windows
49/124
TIBCO iProcess Modeler - Advanced Design
Bac
kto
Library
Select field to copy FROM list and click .
Defining Output Field Mappings
To specify the output field data to be mapped from the sub-procedure to the mainprocedure when the sub-case terminates, do the following:
1. Click the Output tab from the Sub-Procedure Call Definition dialog.
This dialog operates in exactly the same way as the Inputtab with theexception that you are specifying which fields to mapfrom the sub-procedure
to the main procedure when the sub-case has terminated.2. Click the required sub-procedure field.
3. Click the main procedure field you want to map to.
The Input and Output tabs are only displayed after a sub-procedure has been
selected on the Sub-Procedure Call Definition dialog.
36 | Chapter 2 Defining a Static Call to a Sub-Procedure
4. Click and the name of the main procedure field is displayed alongside
the sub procedure field name
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
50/124
TIBCO iProcess Modeler - Advanced Design
Bac
kto
Library
the sub-procedure field name.
To remove a field mapping, select the sub-procedure field, select (None) in the
Select field to copy TO list and click .
Double-clicking the main procedure field has the same effect.
The names of the fields in the main procedure and the sub-procedure do not needto be the same. However, you must ensure that the size of the field you arecopying to is big enough to hold the copied data otherwise the data will betruncated.
|37
Chapter 3 Using Array Fields
http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/http://doc_lib.pdf/7/31/2019 Advance Design Workspace Windows
51/124
TIBCO iProcess Modeler - Advanced Design
Bac
kto
Library
This chapter describes the use of array fields in iProcess and how to reference thedata elements in an array. Array fields are similar to standard (single instance)iProcess fields but can contain multiple data elements instead of just one element.
Topics
What are Array Fields, page 38
Why Use Array Fields?, page 39
How Do Array Fields Work in iProcess, page 40
Example of Using Arrays, page 42
Referencing Elements in A