Open topic with navigation

TIBCO iProcess® Engine 11.9.1

# Handling Exceptions

SSOLite stored procedures raise a SQL level 16 error message if any procedure fails. Note that:

| • | The error text is always preceded by the string (`SWERROR`).

| • | Each error has a unique ID, which is displayed at the end of the error text.

It is the application’s responsibility to handle any such database exceptions, and issue a rollback if appropriate.

The following table describes the different errors (and their unique IDs) that may be returned by the SSOLite stored procedures.

Note: Some of the stored procedures listed in the table are not described in this section. These are lower level stored procedures that may be called by some or all of the stored procedures that are described in this section.

Stored Procedure | SQL Error | Error Text
`SW_GET_SEQUENCE_TRANS` | 50000 | Invalid sequence type (seq_type) (ID:001000)
50000 | Unable to create DMO connection, check user is system administrator (ID:001001)
50000 | Unable to set connection type (ID:001002)
50000 | Unable to connect to server errno (`Error`) (ID:001003) `Error` is a description of the error returned by the SQL Server `sp_OAMethod` system stored procedure.
50000 | Unable to verify connection (`Return`) (ID:001004)
50000 | Failed to execute sequences - `Source` (ID:001005) `Source` is a description of the source of the error.
50000 | Failed to retrieve sequence number - `Source` (ID:001006) `Source` is a description of the source of the error.
`SW_GET_NODE_DETAILS` | 50000 | Node details not found in database (ID:001007)
50000 | MBox Queue Name(s) not found in database (ID:001008)
`SW_GET_SEQUENCE` | 50000 | Failed to find case number (ID:001009)
`SW_GET_PROCEDURE` | 50000 | Procedure details not found in database for procedure name=`proc_name` (ID:001010)
50000 | Procedure version not found in database for procedure name=`proc_name`, Case Num=`case_num` (ID:001011)
50000 | Latest Released or Unreleased Procedure version not found in database for procedure name=`proc_name` (ID:001012)
50000 | Procedure version not found in database for procedure name=`proc_name` `major_version` `minor_version` (ID:001013)
SW_SUSPEND | 50000 | Suspend type (suspend_type) is invalid, expected 2 (suspend) or 0 (activate) (ID:001014)
50000 | Case (case_num) is already active (ID:001036)
50000 | Case (case_num) is dead (ID:001037)
50000 | Case (case_num) is already suspended (ID:001038)
50000 | Procedure and case information does not match (ID:001042)
`SW_GET_SUBPROC_DETAILS` | 50000 | Sub-Proc casenum not found in database for Procedure proc_name, Case Number case_num, Step Name step_name, Sub-proc sub_proc_name (ID:001018)
`SW_DELAYED_RELEASE_ERR` | 50000 | Failed to get node ID (ID:001022)
SW_GETCASE_STATUS_EX | 50000 | Failed to find case information for case: case_num (ID:001019)
SW_PURGE | 50000 | Procedure and case information does not match (ID:001041)
| 50000 | Case (case_num) is dead (ID:001039)
50000 | Procedure and case information does not match (ID:001042)

## SQL Distributed Management Objects (SQL-DMO)

SSOLite stored procedures access the sequences table to obtain work item and case number sequence numbers. This locks the table, preventing other iProcess processes from accessing it, for the duration of the transaction. This could cause a problem if, for example, you were batch starting a large number of cases as part of a single transaction.

To prevent this, SSOLite stored procedures use SQL-DMO to connect back to the iProcess database as a separate transaction when obtaining sequence numbers.

The use of SQL-DMO means that, when using SSOLite stored procedures, the SQL Server login used to connect to the iProcess database must:

| 1. | use Windows Authentication to validate the connection to the iProcess database.

| 2. | have the Server Administrators SQL Server Role assigned.

Did you find this helpful?

Yes No
Great!
Thanks for taking the time to give us some feedback.
Sorry about that

Why wasn't this helpful? (check all that apply)

Could not find what I was looking for
Instructions confusing or unclear
Instructions did not work

Want to tell us more?

Please select at least one option or provide details about the issue!!

Error occurred while submitting feedback.

Error2 occurred while submitting feedback.

TIBCO iProcess® Engine