Deploying processes from TIBCO Business Studio (BS) or exporting processes from BS and importing them to TIBCO iProcess Engine (iPE) can cause the process flow to follow the incorrect route or Memo case data can appear incorrect for the specific field.

Deploying processes from TIBCO Business Studio (BS) or exporting processes from BS and importing them to TIBCO iProcess Engine (iPE) can cause the process flow to follow the incorrect route or Memo case data can appear incorrect for the specific field.

book

Article ID: KB0090236

calendar_today

Updated On:

Products Versions
TIBCO iProcess Engine (DB2) -
Not Applicable -

Description

Description:
Description:
============
Using TIBCO Business Studio (BS) to deploy a new version of an existing procedure to a TIBCO iProcess Engine (iPE) and migrating cases to the new version can result in existing cases following the incorrect workflow path or appear to hang and not process the next step. It may also result in case data corruption where MEMO fields do not appear to contain the correct data.

This problem can also occur if processes are exported from BS and imported to iPE using the utility ‘swutil’ or the TIBCO iProcess Workspace (Windows) client.

Defect Information:
IPE-487 : Importing a procedure that contains MEMOs from Business Studio can reallocate MEMOIDs for the memo fields. This can cause cross contamination of data between memos if old cases are migrated.
Fixed in 11.3.0.

IPE-2553 : Importing procedure using swutil does not check the existing MEMO IDs. This can cause the same problems and IPE-487.
Fixed in 11.1.2.8 and 11.3.1.

IPE-2263 : Upon deployment from TIBCO Business Studio to TIBCO iProcess Engine, step place number (StepID) were not maintained correctly. TIBCO iProcess Engine uses the StepID as part of its processing for processing a number of actions including Waits and Deadlines. Therefore, if these numbers change, the process does not progress as expected.
Fixed in 11.1.2 and 11.3.0.

IPE-2849 : A refinement of IPE-2263 where affected steps processed to a WAIT type step.
Fixed in 11.1.2.11, 11.1.3.13.2 and 11.3.1.

IPE-3048 : After cases were migrated to a new procedure version by using the swutil IMPORT +c command, StepIDs were not maintained correctly.
Fixed in 11.1.3.13.3 and 11.3.1.9.

New cases started after the procedure update do follow the correct workflow path and do not experience the problem.

Environment:
==========
A lists of TIBCO iProcess Engine versions where particular fixes were implemented. The version with the most complete set of fixes is 11.3.1.9.
   o TIBCO iProcess Engine 11.3.0 (Fixes IPE-487, IPE-2624).
   o TIBCO iProcess Engine 11.3.1 (Fixes IPE-2553, IPE-2849).
   o TIBCO iProcess Engine 11.3.1.9 (Fixes IPE-3048).
   o TIBCO iProcess Engine 11.1.2.8 (Fixes IPE-2553).
   o TIBCO iProcess Engine 11.1.2.10 (Fixes IPE-2624).
   o TIBCO iProcess Engine 11.1.2.11 (Fixes IPE-2849).
   o TIBCO iProcess Engine 11.1.3.13.2 (Fixes IPE-2849).
   o TIBCO iProcess Engine 11.1.3.13.3 (Fixes IPE-3048).

Symptoms:
=========
After iPE procedure(s) that originated from BS rather than being developed using TIBCO iProcess Modeler have been updated and cases migrated to the new version the cases may not progress as expected.
When an action is performed on a migrated case inconsistent results may occur such as the case not progressing at all and appearing to stall in the flow if the procedure contains WAIT steps or progress through the wrong steps in the workflow procedure.
A process that includes Memo type fields may also encounter a problem where the Memo field when viewed contains the contents of a different memo field from the same case, or the memo can appear empty after cases have been migrated.

Cause:
=====
The process flow problem can be caused by a number of reasons such as:
   o When objects within the process are deleted during the development of the process
      in Business Studio. The deletions could be such things as removing a
      gateway/condition or any type of step.
   o Deleting any part of the process and re-adding using the same object name.
   o The Memo field issue is caused by incorrect mapping of the memo section of the
      procedure during the import process.
   o Adding new steps such as Sub_procedure steps can cause this problem.  
   o Any object in BS that does not require a name such as a router will have these
      objects automatically named at deployment time, but only for the deployed version,
      so these may get a different name for each deployment.  This is a particular problem
      if these steps are being waited on as the wait uses the name as part of the
      process of waiting.
   o A new procedure version is imported by using the swutil IMPORT +c command.

Resolution:
=========
A common development and deployment method is to design processes using BS and deploy to a development iPE environment. The processes are then progressed through the relevant testing and production environments using the swutil utility.

If a version of iPE is being used that does not contain the StepID fixes then checks should be performed whenever a procedure is to be updated to a different environment.
The plist utility command “plist -d” should be used to check step names and StepIDs of the procedure version on the originating environment against the procedure version on the target environment.

An example of checking whether different environments exhibit the issue.
1)    Use the plist utility to display the procedures on the iPE with their current status - Released  / Withdrawn / Model.
plist -Pvvx

Example of a procedure TESTPROC on originating environment :-

TESTPROC14.0s-adminWITHDRAWN10/04/2013 14:5810/04/2013 15:0710/04/2013 15:01
TESTPROC15.0s-admin  WITHDRAWN28/04/2013 15:0628/04/2013 15:3728/04/2013 15:07
TESTPROC16.0s-adminWITHDRAWNWithdrawn by swutil PROC RELEASE TESTPROC 17.021/05/2013 15:3721/05/2013 16:0721/05/2013 15:37
TESTPROC17.0s-adminRELEASEDmigrate all versions21/05/2013 16:0521/05/2013 16:0721/05/2013 16:07

Above it can be seen that Version 17 is the version being used and to be deployed to the target environment.

Example of a procedure TESTPROC on target environment :–

TESTPROC14.0s-adminWITHDRAWN21/04/2013 14:5821/04/2013 15:0721/04/2013 15:01
TESTPROC15.0s-admin  WITHDRAWN21/05/2013 15:0621/05/2013 15:3721/05/2013 15:07
TESTPROC16.0s- adminRELEASEDmigrate all versions21/05/2013 15:3721/05/2013 16:0721/05/2013 15:37

2)     Produce a list of the steps and their StepIDs of the procedure for version 16 on the target environment and 17 on the originating environment.

The commands below will output the procedure steps to files --> textproc16.txt and testproc17.txt

plist -d TESTPROC/0.16 > testproc0_16.txt
plist -d TESTPROC/0.17 > testproc0_17.txt

3)     Review the two files testproc0_16.txt and textproc0_17.txt and compare the step name under the “Name” column and StepID number under the “Place” column.

Sample of testproc0_16.txt:
Flags        Type Name      Description                Place  ExFlags  Lines
----------------------------------------------------------------------------
------S-aDA  0    $PANIC1   Exception notification     1      0         4096
------S-aDA  0    $PANIC2   Exception resolution       2      0         4096
------S-aDA  5    $SPPIOP   Sub-Proc I/O Params        3      0         0
--R---S-aDA  0    STEP1A    Perform Check Details      4      0         0
--R---S-aDA  0    STEP1B    Process award                5      0         0
--R---S-aDA  0    STEP1C    Update Details              6      0         0
--R---S-aD-  6    1ACT                                                  10     0         0
--R---S-aD-  6    2ACT                                                  11     0         0
--R---S-aD-  0    STEP2     Book Venue                      13     0         0


Sample of testproc0_17.txt:
Flags        Type Name      Description                Place  ExFlags  Lines
----------------------------------------------------------------------------
------S-aDA  0    $PANIC1   Exception notification     1      0         4096
------S-aDA  0    $PANIC2   Exception resolution       2      0         4096
------S-aDA  5    $SPPIOP   Sub-Proc I/O Params        3      0         0
--R---S-aDA  0    STEP1A    Perform Check Details      4      0         0
--R---S-aDA  0    STEP1B    Process award              20     0         0
--R---S-aDA  0    STEP1C    Update Details             6      0         0
--R---S-aD-  6    1ACT                                                    11     0         0
--R---S-aD-  6    2ACT                                                    13     0         0
--R---S-aD-  0    STEP2     Book Venue                         15     0         0

If this scenario is encountered and the version of iPE being used does not contain the StepID fixes then please contact TIBCO Product Support to discuss the issue and advice to resolve the procedure deployment.

Within Business Studio not all objects defined within a process need to be named, such as a Gateway. Depending how the Gateway has been defined it may be represented as an object in iProcess Engine that requires a name such as a Complex Router. During the deployment from BS to iPE this type of object will be automatically named. The TESTPROC scenario described above shows an example of the automatic naming where the Name can be seen as 1ACT and 2ACT.
If unnamed objects are deleted within Business Studio and new ones added, even it is to perform the same functionality as the deleted ones, on deployment the object name will be automatically regenerated with a new StepID value.
If processes have been deployed and the ‘plist –d’ output shows automatically named steps then the procedure should be opened in iProcess Modeler on the iPE and the relevant objects located. Once located the name, for example 1ACT, should be defined for the object in the BS process to ensure no problems are encountered for the object on future deployments.
Symptoms:

Cause:

Issue/Introduction

Deploying processes from TIBCO Business Studio (BS) or exporting processes from BS and importing them to TIBCO iProcess Engine (iPE) can cause the process flow to follow the incorrect route or Memo case data can appear incorrect for the specific field.