TenantTest Step

Use this feature to test whether a tenant database is ready by using a selected Tenant Manager connection and a specified tenant name or ID.

Last published at: September 28th, 2026

Description:

The Test Tenant workflow step is an Engine step that tests the readiness of a tenant database.

The step supports:

  • Selecting a Tenant Manager connection.
  • Specifying a tenant name or ID.
  • Storing a resulting message in a Variable or Global variable.
  • Using the test result to control subsequent workflow processing.
  • Continuing through the True or False return path.

 

Inputs

  • TnConnection – The tnconnection property specifies the Tenant Manager connection to use for the tenant test.
  • TnNameID – Tenant/Host Name or ID
  • Message – The message property specifies the Variable or Global variable in which the resulting message is stored.
 

 

Returns

  • True – The True return path can be connected to the workflow activity that should execute when the tenant test succeeds.
  • False – The False return path can be connected to an alternative or error-handling workflow path.
 

 

Usage:

The Test Tenant step is typically placed before workflow activities that depend on a tenant database being ready.

The workflow supplies the Tenant Manager connection and tenant name or ID. The step performs the tenant test and stores a message in the configured Variable or Global variable.

A typical workflow pattern is:

Select Tenant → Test Tenant → Continue or Handle Failure

For example:

Start
  ↓
Test Tenant
 ↙       ↘
True    False
 ↓        ↓
Process  Handle
Tenant   Problem
The resulting message can be retained in the configured Variable or Global variable for later workflow activities.
 

 

Typical Workflow Suggestions:

Test Tenant Before Starting Processing

Use Test Tenant before activities that depend on the tenant database.

Example:

Start
  ↓
Test Tenant
  ↓ True
Start Tenant Processing
The False path can be connected to an alternate handling activity.

 

Validate Tenant Before Data Processing

Use the step before a workflow begins tenant-specific data processing.

Example:

Identify Tenant
      ↓
Test Tenant
   ↙       ↘
 True     False
  ↓          ↓
Process    Handle
Data       Failure
This creates a tenant-readiness checkpoint before the workflow continues.

 

Test a Tenant Selected from Workflow Data

Use workflow data to identify which tenant should be tested.

Example:

Get Tenant Information
        ↓
     Test Tenant
        ↓
  Tenant Processing
The Tenant name or id property can be supplied with the value representing the tenant being processed.

 

Store the Tenant Test Message

Use Variable/Global to hold the message when subsequent workflow activities need access to the message produced by the tenant test.

Example:

Test Tenant
     ↓
Store Message
     ↓
Log / Notify / Process
For example:
variable.TenantTestMessage
can be configured as the message destination.

The XML explicitly provides this property for storing the message.

 

Notify an Administrator When the Tenant Test Fails

Use the False path to notify an administrator when the tenant test does not succeed.

Example:

Test Tenant
   ↙       ↘
True      False
 ↓          ↓
Continue  Notify
          Administrator
The stored message can be used as additional information for the notification, subject to the runtime format of the message.

 

Log the Tenant Test Result

Use the message Variable or Global in a subsequent logging activity.

Example:

Test Tenant
    ↓
Store Message
    ↓
Log Tenant Result
This can provide workflow-level visibility into the tenant test result.

 

Test Multiple Tenants

Use multiple Test Tenant activities when a workflow needs to process several known tenants.

Example:

Tenant A
   ↓
Test Tenant
   ↓
Process Tenant A

Tenant B
   ↓
Test Tenant
   ↓
Process Tenant B
Each step can be configured with the appropriate tenant name or ID.

The XML supports selecting the tenant through the required Tenant name or ID property.

 

Use Different Tenant Manager Connections

Use the Select Tenant Manager Connection property when different workflow environments or tenant groups use different configured Tenant Manager connections.

Example:

Determine Environment
        ↓
Select Tenant Manager Connection
        ↓
Test Tenant
The connection property is specifically defined as a selectConnectString data type.

 

Route Processing Based on Tenant Readiness

Use the True and False paths to determine whether tenant-specific processing should proceed.

Example:

             ┌→ Tenant Processing
             │
Test Tenant ─┤ True
             │
             └→ False → Retry / Notify / Stop
This clearly separates successful tenant testing from alternate processing.

 

Test Tenant Before a Scheduled Process

Use Test Tenant at the beginning of a scheduled tenant-specific workflow.

Example:

Scheduled Start
      ↓
  Test Tenant
   ↙       ↘
 True      False
  ↓           ↓
Process     Handle
Scheduled   Unavailable
Work
This lets the workflow run the tenant test before continuing with the scheduled operation.

 

Test Tenant Before Integration Processing

Use Test Tenant before activities that depend on tenant-specific database access.

Example:

Start Integration
       ↓
    Test Tenant
       ↓ True
Integration Processing
You can connect the False path to integration exception handling.

 

Preserve the Test Message for Multiple Activities

Store the test message in a Variable or Global so that multiple subsequent activities can use it.

Example:

Test Tenant
     ↓
TenantTestMessage
   ↙        ↘
 Log       Notify
This avoids requiring subsequent activities to obtain the tenant-test message independently.

 

Example:

Let’s build and execute the “clsTenantTestDef” example.      

  • Create a new process definition named “clsTenantTestDef” and open it in designer mode. 
  • Drag a "clsTenantTest" step to the canvas.
  • Connect the dots between the “Start” and “clsTenantTest” steps, as shown above. 
  • Select the line between the steps to configure the “Connection Properties”. The default property values are “None, True, False, Error, and Evaluate”. Depending on the step’s purpose, you can configure additional values.
  • Define a variable or a global to store the result.
  • Click the "clsTenantTest" step to configure its "Required" properties. Provide a name for the step. Select the connection string. Enter the Tenant Name or GUID value. Specify a variable or a global to store the message after execution. Click the Save button. Note: Click the "AI Predict" button to have Copilot add new process steps that match your process description. 

 

  • The “Logging” configuration is necessary for documentation and also measures workflow progress and percent complete. Configure the step state and percent fields individually, as shown in the images below. Configure the “Logging” using the following properties. 

 

  • Save the process definition, create a new instance, and execute it. Render the process instance and click the process step to view its properties. When the workflow reaches the Test Tenant step, verify that:
    • The correct Tenant Manager connection is selected.
    • The intended tenant name or ID is supplied.
    • The message Variable or Global is configured.
    • The expected message is stored.
    • The workflow follows the expected True or False path.
    • The subsequent workflow activity executes as expected.

 

Tips:

  • Select the correct Tenant Manager connection.
  • Provide the intended Tenant name or ID.
  • Configure a meaningful Variable or Global for Variable/Global to hold the message.
  • Verify that the selected Tenant Manager connection is appropriate for the workflow environment.
  • Test the step using a known tenant before deploying the workflow.
  • Test both the True and False workflow paths.
  • Verify the stored message after the step executes.
  • Use a meaningful Variable or Global name such as TenantTestMessage.
  • Connect the False path to appropriate error handling, notification, or alternate processing.
  • Connect the True path to the tenant-dependent processing that should proceed after the test.
  • Test the workflow with different tenant identifiers where applicable.
  • Test the workflow when the tenant is not ready or cannot be accessed.
  • Verify that the tenant name or ID corresponds to the intended tenant.
  • Keep Tenant Manager connection configuration consistent across environments.
  • Avoid hard-coding environment-specific connection information when the workflow is intended for multiple environments.
  • Test the workflow after changing the selected Tenant Manager connection.
  • Test the workflow after changing the tenant name or ID.
  • Verify the message Variable or Global before using it in downstream activities.
  • Use the stored message when logging or notifying users, where appropriate.
  • Do not assume the exact message format without confirming the FlowWright runtime implementation.
  • Do not assume the precise conditions that cause the step to return True or False beyond the XML's description of testing whether the tenant DB is ready.
  • Consider documenting the expected tenant readiness behavior for workflows that depend on this step.

 

Definition Sample:

You may download the sample definition(s) from the link provided and later import them (drag-and-drop) into your FlowWright Process Definition (XML file) or Form Definition (HTML file) page.

Before executing the imported definition, verify:

  • Select Tenant Manager connection
  • Tenant name or ID
  • Variable/Global to hold the message
  • Workflow Variable references
  • Environment-specific connection configuration
  • Downstream True workflow path
  • Downstream False workflow path
  • Expected tenant identifier
  • Expected message destination

After verifying the configuration, save the Process Definition before execution.

Click here to download the sample file.