advance design workspace windows

Upload: beto8712

Post on 05-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 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