About the Workflow Designer

The Workflow Designer is a powerful process and form modeling web application intended for use with your Collibra platform.

The Workflow Designer is available on the following 2 GCP clouds:

  • GCP US East 1
  • GCP EU West 1

All of your Collibra environments share a Workflow Designer. For example, if you have 3 Collibra environments, all 3 environments would use the same Workflow Designer.

When you deploy a workflow from a Workflow Designer that is shared between multiple environments, the workflow is deployed to the environment you used to access to the Workflow Designer.

If you have multiple Collibra production environments, and require more than one Workflow Designer, contact your Customer Success Manager or Collibra Support.

In this section you learn the most important aspects of the Workflow Designer.

Navigation bar

The navigation bar across the top of the Workflow Designer platform allows you to open the available model types.

Click a tab from the navigation bar to open the respective model type. Click your name on the top right to sign out of the application.

Models

The Workflow Designer uses models to refer to the different building blocks of a workflow:

Model Description
App

An application bundle containing a process and optionally one or more forms, which constitutes a Collibra workflow.

Once you defined an app model, you can deploy it to Collibra.

Process A business process diagram that uses the Business Process Model and Notation (BPMN) standard.
Form A form presenting or requesting information that a workflow users interacts with.

Model detail view

For processes and forms, you can navigate to the model detail view page by hovering over the model and clicking the magnifying glass icon.

In the top-right area there are five buttons, which allow you to:

  • Edit the model properties, for example name, key, description, and tags.
  • Duplicate the model.
  • Remove the model.
  • Download the model as a file.
  • Open the model in the model editor.

On the right hand side of the page, you can view the dependencies and version history of the model.

Restore a previous version of a model

You can restore a previous version of a process or form from the model detail view page:

  1. Click the history icon.
  2. Select a past model version.

    A preview of the selected version appears.

    The green edit button changes to a Use as new version button.

  3. Click the Use as new version button.

A new version of the model is created based on the selected past version.

Apps

You use apps to create a package of process and form models which you can deploy in Collibra or share with other users.

Page overview

From the apps view you can:

  • See all of your existing apps.
  • Go to an App Editor by clicking on one of the existing apps.
  • Create new app.
  • Import an app.
  • Search by name and tag.
  • Change the pagination and sorting.
  • Change the display of apps to either a list or tiles.

Create a new app

You can create a new app model manually in the Workflow Designer.

Steps

  1. In the navigation bar, select Apps.
  2. In the top left corner of the Apps tab, click ✚ Create app.
  3. Enter the required information.
    FieldDescription
    App nameThe name of the new model.
    App key

    A technical identifier used to refer to the process on a technical level.

    Review and confirm any ramifications before updating the model key.

    Description

    The purpose of the model.

    Tags

    A label for the model, to help categorize the model in your platform.

    Adding identifying tags to your model improves your search capabilities.

  4. Click Create new app.

Your newly created model appears in the model list on the Apps overview page and you are redirected to the app editor page.

Import apps

You can import models to the Workflow Designer by using the import functionality on the App overview page. This functionality also allows you to control how Collibra Data Intelligence Platform handles any existing model keys that are included in your import.

Steps

  1. In the navigation bar, select App.
  2. Click Import.

  3. Select your import preference for existing model keys:
    OptionDescription
    Warn and Stop ImportWarn the user and stop the import.
    Update existing model with imported versionsContinue the import and update the existing model keys.
    Create new keys and Import as new modelsContinue the import and create the existing model keys as new models.
  4. Upload your import file.

    For apps use *.zip with one process file and one or multiple form files.

  5. Click Import.

Your newly imported model now appears in the model list on the App overview page.

Add models to an app

Once you have created an app, you can add a model to it.

Steps

  1. Select the app you would like to add a model to from the App models page.

    The App editor opens.

  2. Click + Add Model .

    The new model dialog box appears.

  3. In the new model dialog box, select one of the available options.

    Option Description
    Create a new model for the app Manually create a new model.
    Import a model from a file into the app Import a file containing one or more new models.
    Include an existing model into the app Add an existing Workflow Designer model.
  4. Based on your selection, follow the dialog box instructions to finish adding a model.

You can add multiple form models and one process model to an app, however if you are using a sub-process, you must deploy it separately.

App editor

You can view and edit your app details from the app editor in the Workflow Designer.

The section at the top of the page contains useful information about the app, such as the namedescriptioncreator and the modification date of the app definition.

You can perform the following actions from the app editor:

Action Description
Export Download an app package which you can either deploy in your Collibra environment or import in the Workflow Designer.
Deploy

Deploy the app to your Collibra environment.

The app is deployed to the environment you used to access the Workflow Designer. Once you click Deploy, the target environment is listed in the Ready to Deploy dialog box.
Edit

The more options menu allows you to:

  • Select theme - Choose the color and icon for the app.
  • Modify properties - Edit the name, description, key, and tags of the app.
  • Duplicate - Create a copy of the app with the option to include all of the models it contains.
  • Delete - Remove the app and optionally delete the models it contains.

The bottom part of the page contains a list of all models included in the selected app. You have the option to add a new model or edit the existing models by either clicking the pencil icon or by selecting the model. You will be redirected to the editor of the selected model, but you can return to the app editor by clicking the app name in the navigation bar.

When duplicating a form from the app editor by selecting Duplicate, the new form appears in the forms view page.

Processes

Collibra Data Intelligence Platform uses the Business Process Model and Notation (BPMN) standard for process modeling. BPMN provides a graphical notation for specifying business processes.

To navigate to the process view page, click the Process tab in the top navigation bar.

Page overview

When you open the process view page, you see a list of the existing processes ordered by modification date.

From the process view you can:

  • See all of your existing processes.
  • Go to the process editor by selecting one of the existing processes.
  • Create a new process.
  • Import a process.
  • Search for a process by name and tag.
  • Change the pagination and sorting.
  • Change the display of process to either a list or tiles.
  • Go to process detail page by hovering over a process tile and clicking the magnifier icon.

For more details please refer to the Models section.

Create a new process

You can create a new process model manually in the Workflow Designer.

Steps

  1. In the navigation bar, select Processes.
  2. In the top left corner of the Processes tab, click ✚ Create process.
  3. Enter the required information.
    FieldDescription
    NameThe name of the new model.
    Model key

    A technical identifier used to refer to the process on a technical level.

    Review and confirm any ramifications before updating the model key.

    Description

    The purpose of the model.

    Tags

    A label for the model, to help categorize the model in your platform.

    Adding identifying tags to your model improves your search capabilities.

  4. Click Create new model.

Your newly created model appears in the model list on the Processes overview page.

After you have created a new process, you are redirected to the process editor where you can start modeling it.

Import processes

You can import models to the Workflow Designer by using the import functionality on the Process overview page. This functionality also allows you to control how Collibra Data Intelligence Platform handles any existing model keys that are included in your import.

Steps

  1. In the navigation bar, select Process.
  2. Click Import.

  3. Select your import preference for existing model keys:
    OptionDescription
    Warn and Stop ImportWarn the user and stop the import.
    Update existing model with imported versionsContinue the import and update the existing model keys.
    Create new keys and Import as new modelsContinue the import and create the existing model keys as new models.
  4. Upload your import file.

    For processes use *.bpmn or *.bpmn20.xml files.

  5. Click Import.

Your newly imported model now appears in the model list on the Process overview page.

Process editor

You use the process editor to create BPMN diagrams. It allows you to visually model your processes using a drag-and-drop mechanism.

Page overview

The process editor main page is divided into four areas:

  • The menu bar on top, just below the navigation bar.
  • The Shape repository on the left side.
  • The canvas in the middle.
  • The attribute bar on the right side.

Process editor menu bar

The menu bar offers the following tools:

Option icon Description
Save the currently opened model.
Save all opened models.
Validate the currently opened model.
Copy the selected element.
Paste the contents of the clipboard.
Cut the currently selected element.
Delete the currently selected element.
Undo the previous action.
Redo the most current action.
Zoom into the model.
Zoom out of the model.
Reset the zoom level.
Set the zoom level to fit the model.
Align all selected elements in relation to the first selected element.
Set the size of all selected elements to the size of the first selected element.
Reset connectors according to their default settings.
Allows you to delete dockers from connectors with a left click.
Activate spacer tool.
Show all comments made on elements.
Open the Data Model Viewer.
Export the process.

This is only possible if you saved the model.

Canvas and configuration area

The canvas and configuration area is how you interact with and modify your process. To create your BPMN diagram, drag and drop elements from the palette to the canvas.

Below are a few actions you can perform in the canvas and configuration area:

  • Rearrange and change attributes.
    • Select a specific component to change its attributes.
    • Click the whitespace surrounding the diagram elements to modify the attributes of the entire model.
  • Add comments.
  • Hover over element labels to view a brief description of the element details.

Shape repository

The Shape repository provides access to various components for process modeling.

  • Use the search input at the top of the Shape repository to quickly find a specific component.
  • Click to reorganize the display of the Shape repository components.

Start events

For a process model to be executable, it must always contain at least one start event and one end event. A start event indicates where a process starts.

Activities

Activities are the part of a process that require action, either by a user or an application.

Structural

A collection of elements that point to or contain other processes.

Gateways

Gateways are used to control how the process flows through Sequence Flows, or the order of elements in a process.

Intermediate events

Intermediate events are used to indicate that something happens, such as a delay between elements or a timed sub-process, between the start and end of a process.

Boundary intermediate events

  • Timer boundary event
  • Error boundary event
  • Signal boundary event
  • Message boundary event

Catching intermediate events

  • Timer intermediate event
  • Signal catching intermediate event
  • Message catching intermediate event

Throwing intermediate events

  • Intermediate event
  • Signal throwing intermediate event

End events

For a process model to be executable, it must always contain at least one start event and one end event. An end event indicates where a process ends.

Swimlanes

Processes in BPMN models are often wrapped in a pool, which is then further broken down into lanes.

Artifacts

Artifacts allow you to provide additional information about the process that is not directly related to the Sequence or Message flows of the process.

Listeners

It is possible to add listeners to almost every BPMN element. These listeners can execute custom logic when the element is in a certain state. Unlike Delegates, a listener is not visible on the BPMN diagram. It is hidden from the users. Some examples of elements to which you can add listeners:

  • take: A sequence flow is traversed.
  • create: A user task is created, meaning the task is initiated.
  • start: A service task starts its execution.

There are two different types of listeners:

  • execution listeners: A generic listener that you can add to almost every element, for example start events, service tasks, user tasks or sequence flows. API v1 execution listeners are part of the com.collibra.dgc.core.workflow.activiti.executionlistener Java Core API package.
  • task listeners: A listener you can only add to and that only works within a user task. API v1 execution listeners are part of the com.collibra.dgc.core.workflow.activiti.tasklistener Java Core API package.

API v2 listeners belong to the com.collibra.dgc.workflow.api.listener Java Workflow API package.

Deprecated Java Core API v1 listeners will not be available in the next major release. Use Java Workflow API v2 listeners where available or script tasks to replace the functionality of v1 listeners. See Alternatives to API v1 listeners for examples.

Similar to delegates, you can also construct your own listener on the fly that executes one single expression. However, it is not possible to have a return value.

This section describes the packaged listeners. Most listeners are used in the packaged workflows.

Process execution

The workflow engine executes the process in a transactional way, advancing until it encounters a wait state, such as a timer event, in each active path of the execution. Subsequent tasks, sub-processes and call activities are executed in a single transaction and if one fails, the entire transaction is rolled back.

Asynchronous activities

You can have tasks, sub-processes and call activities run asynchronously to split execution into smaller units of work. The benefit of an asynchronous activity is that it is part of a separate transaction and if it fails, the actions that were performed before it are not rolled back.

Exclusive activities

By default, all activities are exclusive and can not be completed at the same time as another exclusive activity that belongs to the same process. This ensures the workflow engine performs all activities sequentially. You do not need to change this behavior, as the built-in capabilities can manage different scenarios. You can learn more about the logic behind exclusive jobs in the Flowable documentation.

Forms

You use forms in user tasks and start forms to request a user to perform a manual action in order for the workflow to progress.

Workflow Designer uses JSON-based form definition structure as an output format..

The new form editor replaces the form properties that were used in the Flowable Eclipse Designer.

To navigate to the forms view page, click the Forms tab in the top navigation bar.

Page overview

The landing page displays a list of the existing forms ordered by modification date.

From the forms view you can:

  • See all of your existing forms.
  • Go to a form editor by selecting one of the existing forms.
  • Create a new form.
  • Import a form.
  • Search by name and tag.
  • Change the pagination and sorting.
  • Change the display of forms to either a list or tiles.
  • Go to the form delivery view page by hovering over a process tile and clicking the magnifier icon.

For more details please refer to the Models section.

Create a new form

There are two ways to create a new form from the Workflow Designer:

  • Manually from the form tab
  • Design it in the process editor.

Create a form manually

  1. In the navigation bar, select Forms.
  2. In the top left corner of the Forms tab, click ✚ Create form.
  3. Enter the required information.
    FieldDescription
    NameThe name of the new model.
    Model key

    A technical identifier used to refer to the process on a technical level.

    Review and confirm any ramifications before updating the model key.

    Description

    The purpose of the model.

    Tags

    A label for the model, to help categorize the model in your platform.

    Adding identifying tags to your model improves your search capabilities.

  4. Click Create new model.

Your newly created model appears in the model list on the Forms overview page.

Create a form from the Process editor

  1. In the navigation bar, click Process.
  2. Select an existing process design or click Create process to create a new one.
  3. Drag and drop a User task from the palette to the canvas.
  4. Select the user task on the canvas.
  5. In the Details section of the attribute bar, click Form reference to expand the properties.
  6. In the New tab, add a Name and a Key.
  7. Click Create.

Once you create a new form, you will be redirected to the editor view where you can begin to model the form.

In the process editor, select an element in the palette on the left side of the canvas and drag it into the drawing area. The element then becomes part of your form.

If you click anywhere in the drawing area, you can change certain attributes from the attribute bar, on the right side of the canvas.

  • Select a specific field to change its attributes.
  • Click the whitespace surrounding the diagram elements to modify the attributes of the entire model.

When you select one of the fields visible on the canvas you gain access to additional quick actions, such as adding a comment or making a field mandatory.

Import forms

You can import models to the Workflow Designer by using the import functionality on the Form overview page. This functionality also allows you to control how Collibra Data Intelligence Platform handles any existing model keys that are included in your import.

Steps

  1. In the navigation bar, select Form.
  2. Click Import.

  3. Select your import preference for existing model keys:
    OptionDescription
    Warn and Stop ImportWarn the user and stop the import.
    Update existing model with imported versionsContinue the import and update the existing model keys.
    Create new keys and Import as new modelsContinue the import and create the existing model keys as new models.
  4. Upload your import file.

    For forms use *.json files.

  5. Click Import.

Your newly imported model now appears in the model list on the Form overview page.

You can also import your old process files that were created in the Eclipse Plugin.

Form editor

The form editor gives you the ability to construct a form using a drag-and-drop mechanism. Both user tasks and start events can use forms to interact with the user.

Page Overview

Just like the process editor, the form editor page is divided into four areas:

  • The menu bar on top, just below the navigation bar.
  • The palette on the left side
  • The canvas in the middle.
  • The attribute bar on the right side.

Form editor menu bar

The menu bar offers the following tools:

Option icon Description
Save the currently opened model.

Save all opened models.

Validate the currently opened model.
Copy the selected element.
Paste the contents of the clipboard.
Cut the currently selected element.
Delete the currently selected element.
Undo the previous action.
Redo the most current action.
Zoom into the model.
Zoom out of the model.
Reset the zoom level.
Set the zoom level to fit the model.
View run-time preview.
Show or hide gridlines.
Show all comments made on elements.
Open the Data Model Viewer.
Export the form.

This is only possible if you saved the model.

Form canvas

A form in the Workflow Designer is a graphical layout of fields that are bound to the data model. From here, you can control how the fields of the data model appear in Collibra. The fields are arranged in rows on the canvas, as shown below:

Each row of the graphical layout is made up of exactly twelve columns. All columns are equal in size, so the width of a column is one-twelfth the width of the whole form. You can lengthen or shorten a field to fit into any number of columns and place more than one field on a row.

When Collibra displays a task in the sidebar, all the fields are shown in one column to adapt to the limited available width. Only tasks in full screen mode take advantage of the multi-column layout.

Form components

Form components allow you to collect data, provide options to choose from, display information and give structure to your forms.

When migrating from Flowable Eclipse Designer to Workflow Designer and replacing drop-down form properties with Collibra data entry form components, adjust your scripts to account for the fact that the class of the stored value for all these components is now String.

To convert a String to UUID, use string2Uuid(<variable_name>).

To convert a UUID to String, use <variable_name>.toString().

Data entry components

The following components are text or date input fields where you can specify and restrict the type of data you want your users to enter.

Collibra data entry components

The following components are Collibra specific input fields where you can specify and restrict the type of data you want your users to enter.

Container components

The following components allow you to organize the components on your form.

Display components

The following components allow you to configure the display the components on your form.

Selection components

The following components are selection fields where you can provide limited options for your users to chose from.

Form outcomes

You use form outcomes to complete a user task and allow the user to indicate the outcome, for example if a task is approved or rejected. Outcomes are displayed to the user as buttons in the task.

Outcome buttons are not available in subforms.

You can define one or more outcome buttons by selecting Outcomes in the attribute bar.

Field Description
Label The text of the button.
Value A value that is assigned to the outcome variable.

Use simple text to define values. Do not use variables for this field.

Visible (Expression) An expression that determines when the button becomes visible.
Enabled (Expression) An expression that determines when the button becomes enabled.

By default, a primary button becomes enabled when all the mandatory form fields are completed.

Navigation URL The URL where you are redirected after clicking the button.

You can use absolute or relative links and include variables, for example /search?q={{searchTerm}}.

Ignore payload Ignores the form data and any validation and just sends the outcome value.
Ignore validation Ignores the form validation and just sends the payload and outcome value.
Primary The button replaces the default Submit button.

You don't need to assign any value to a primary button if you just want to change the text of the button.

Outcome variables

Use the Outcome variable name to bind the value of a button to a process variable, for example {{myVariableName}}.

Form expressions

Form expressions allow you to bind form components together to define a specific behavior. You can also use them for the majority of attributes and they are defined using double curly braces and a variable name, such as {{form_expression}}.

When you select any form component that is visible on the canvas, you are able to enter a value in the attribute bar on the right side of the canvas. The value option is mandatory. If you specify a form label or name right after adding the form component to the canvas, the value is added automatically for you.

You can then use variables with form expressions to build dependencies between form components.

Some of the options available in the attribute bar allow you to switch between simple and expression modes. For example, the Required option available in the attribute bar is by default in the normal mode. However, if you would like to mark a certain field as required based on a given condition you can click the lightning bolt icon next to the Required option label to switch to the expression mode.

Start forms

Start forms set the process variables that your workflow requires. There are two types of variables you can define at the start of a workflow with different purposes:

Type Purpose
Form reference Asking the initiator to confirm or provide information in a dialog box.
Form property Setting the workflow configuration variables.

Form properties

The form properties were the default way of configuring a user task in the deprecated Flowable Eclipse Designer. For backwards compatibility, the Workflow Designer supports all form properties but you should use form references to design your user tasks and take advantage of the enhanced configuration options that they offer.

You should only use form properties to set configuration variables. You can use any form type that is not exclusively meant for user tasks. The properties you set for each start form determine how the workflow interprets them.

Property Configuration
Default The default value of the process variable. All configuration variables must have a default value.
Required
  • Selected: You must provide a value for these variables to start the workflow. All configuration variables are considered required.

    If you prefer to use a form property instead of the recommended form reference to display a start form dialog box, you must either provide a default value or select the Writable property.

  • Clear (default): Do not use this option for configuration variables.

    In the context of a start form dialog box, this option allows you to start the workflow without providing a value for these variables.

Readable
  • Selected (default): Do not use this option for configuration variables.

    If you prefer to use a form property instead of the recommended form reference, a dialog box appears before the start of the workflow. You must fill in the required information or accept the default values and submit them to start the workflow.

  • Clear: These variables become configuration variables. When you configure the start form, you must provide a default value for these variables.
Writable
  • Selected (default): You can edit the configuration variables on the workflow definition page.

    If you prefer to use a form property instead of the recommended form reference to display a start form dialog box, the initiator can provide a value or overwrite the default value.

  • Clear: You cannot provide another value for these variables in the UI. You can still change the value with a script task.

The term start form refers to both the start event forms and the dialog box that appears before the start of the workflow.

Configuration variables

Configuration variables are the process variables listed in the Variables section of the workflow definition page in Collibra, where you can edit them. These are usually variables that don’t change often but that you may want to configure after you deploy the workflow. By using configuration variables, you don't need to modify the workflow definition file or ask the initiator of the workflow for input every time the workflow starts.

You can create configuration variables in your workflow definition file by adding start form property variables with the following properties:

  • Readable: Clear this check box. The variable no longer appears in a start form dialog box but on the workflow definition page.
  • Default: You must provide a default value for these variables. They are considered essential for the workflow progress and because the workflow initiator cannot see them, they must have an initial value. Collibra does not accept workflow definitions that have configuration variables without a default value.

Workflow configuration variables for the Issue Creation workflow in Collibra Workflow Designer

If you want to assign a fixed value to a process variable at the start of the workflow that cannot be modified on the workflow definition page, clear the Writable check box. You can use and change the value of the variable throughout your workflow the same as any other process variable.

If you redeploy a workflow, the configured variables remain the same. If you delete a workflow and then deploy it again, the variables revert to the default values.

Form properties

The form properties were the default way of configuring a user task in the deprecated Flowable Eclipse Designer. For backwards compatibility, the Workflow Designer supports all form properties but you should use form references to design your user tasks and take advantage of the enhanced configuration options that they offer.

The behavior of a form property is determined by the Readable parameter.

Readable Behavior
Clear (recommended) Creates a configuration variable that you can later edit on the workflow definition page in Collibra.
Selected (not recommended) Creates an individual input element that is part of a dialog box presented to the initiator before the start of the workflow.

Form property parameters

The form property parameters determine the value and class of the stored value for configuration variables. If used in a start form or user task (not recommended), it also determines the type of input that appears in the dialog box or task sidebar.

Parameter Description
Id (required)

The unique ID of the form property. This is also the name of the workflow variable that contains the user-submitted value.

IDs cannot include special characters.

Name (recommended)

The description of the configuration variable.

If used in a start form or user task (not recommended), the label that is displayed on the form, next to the property.

Responsibilities (required) The form property type.
Expression (not used for configuration variables) Use an expression to display a value for this form.

${1 > 2} displays "False" for a boolean.

You must clear the Writable parameter.

The class of the stored value for the expression result must match that of the property.

The form variable does not retain the displayed value.

Variable (not used for configuration variables)

Use a variable to display the value of that variable.

If you select the Writable parameter, the user can change the value of the variable.

variableName for a boolean variable that has the value false displays "False". If the user selects True for this property, the value of variableName is updated to true.

The class of the stored value for the variable must match that of the property.

The form variable does not retain any value because the value is that of the provided variable.

Default (mandatory for configuration variables)

The default value for the property.

You can also use variables, such as ${variableName} or expressions, such as ${1 > 2}

The class of the stored value for the variable or the expression result must match that of the property.

Required Whether it is mandatory to fill in a value for the property.

Select this check box for configuration variables.

Readable Whether the property is displayed to the user.

Clear this check box for configuration variables.

Writable Whether the user can change the current value.

Form property types

The form properties were the default way of configuring a user task in the deprecated Flowable Eclipse Designer. For backwards compatibility, the Workflow Designer supports all form properties but you should use form references to design your user tasks and take advantage of the enhanced configuration options that they offer.

You should only use form properties to set configuration variables. If you prefer to use a form property instead of the recommended form reference to display a user task dialog box, you can choose between:

The Responsibilities field lists the default form property types: String, Long, Boolean, Date, and Enum. To define any other type, choose Custom and specify the Custom type as listed below, in combination with Form values where applicable.

Regular form property types

Form type Responsibilities / Custom type Purpose Class of stored value
activity button activityButton

Replaces the default Done button label on tasks with the value of the Name from property field.

The button completes the task and sets its value to true.

This form type only works for user tasks that have no additional forms.

Boolean
boolean boolean

Only accepts boolean: true or false (not case sensitive).

Boolean
button button

Replaces the default Submit button on a form with the value of the Name from property field.

The button submits the whole form and sets its value to true.

Boolean
checkbox checkbox

Allows users to select one or more values from a predefined list.

You define the values in the Form values section by entering the Id and the Name for each check-box item.

String

dynamicCheckbox

Same as checkbox.

You define the values as a map in a variable by providing the Id and the Name for each check-box item: [<Id1>:"<Name1>",<Id2>:"<Name2>",...]. You call the variable in the Form values section by entering dynamicValuesExpression as the Id and the variable as the Name: ${<variable_name>}.

date and time datetime

Allows users to select the date or the date and the time form a calendar. Accepts timestamp values in long format.

You define the format in the Form values section by entering dateTimeType as the Id and date or datetime as the Name for each check-box item.

Date
enumeration enum

Allows users to select one value from a predefined drop-down list.

You define the values in the Form values section by entering the Id and the Name for each list item.

String

dynamicEnum

Same as enum.

You define the values as a map in a variable by providing the Id and the Name for each list item: [<Id1>:"<Name1>",<Id2>:"<Name2>",...]. You call the variable in the Form values section by entering dynamicValuesExpression as the Id and the variable as the Name: ${<variable_name>}.

upload fileUpload

Creates a temporary file and stores the UUID in the variable of the workflow, so that the user can import or attach a file later on in the workflow.

String
number long

Saves whole numbers. Decimal values are not accepted, they will be truncated to whole numbers.

If you want to enter numbers with decimals, use a string type.

Long
plain text plainText

Allows users to enter simple text.

This form type:

  • Can hold a maximum of 4,000 characters. If the value could exceed this number, use the textarea form type.
  • Is the same as string, except that it has a larger text box, with the same height as text area.
TextArea
radio button radiobox

Allows users to select one value from a predefined list.

You define the values in the Form values section by entering the Id and the Name for each list item.

String

dynamicRadiobox

Same as radiobox.

You define the values as a map in a variable by providing the Id and the Name for each list item: [<Id1>:"<Name1>",<Id2>:"<Name2>",...]. You call the variable in the Form values section by entering dynamicValuesExpression as the Id and the variable as the Name: ${<variable_name>}.

string string

Allows users to enter simple text.

This form type can hold a maximum of 4,000 characters. If the value could exceed this number, use the textarea form type.

String
task button taskButton

Replaces the default View task button label on tasks with the value of the Name from property field.

The button opens the task dialog box and sets its value to true.

This form type only works for user tasks that have additional forms.

Boolean

text area

textarea

Same as string, but indicates that the input has to be a text area field.

Use this type if the value can exceed 4,000 characters, which is the limit for string or plain text form types.

TextArea
Type Custom type Description Class of stored value
asset asset

Only allows assets as input.

Checks whether the assets that are entered exist.

UUID
term
asset type assetType Only allows asset types as input. UUID
attribute type attributeType Only allows attribute types as input. UUID
community community

Only allows communities as input.

Checks whether the communities that are entered exist.

UUID
domain type domainType Only allows domain types as input. UUID
group group

Only allows groups as input.

Checks whether the groups that are entered exist.

String

The values are stored as a comma-separated list of group names.

relation type relationType Only allows relation types as entry values.

String in Collibra version 5.7.6 and newer.

The values are stored as a comma-separated list of relation type UUIDs concatenated with the relation direction. The relation directions are:

  • S for source, when the resource is the head of the relation.
  • T for target, when the resource is the tail of the relation.

00000000-0000-0000-0000-000000007030S for has acronym [Acronym].

UUID in Collibra version 5.7.5 and older.

role role

Only allows roles as input.

Checks whether the roles that are entered exist.

String
role and community roleInCommunity

Displays two side by side input boxes in which users can specify a role and an optional community.

Checks whether the roles and communities that are entered exist.

String

The values are stored as user expressions {role(<roleName>)} or {role (<roleName>,<communityName>)}.

user user

Only allows users as input.

Checks whether the users that are entered exist.

User accounts that have been disabled are also included in the drop-down list.

String

The values are stored as a comma-separated list of user names.

domain domain

Only allows domains as input.

Checks whether the domains that are entered exist.

UUID
vocabulary

When migrating from Flowable Eclipse Designer to Workflow Designer and replacing drop-down form properties with Collibra data entry form components, adjust your scripts to account for the fact that the class of the stored value for all these components is now String.

To convert a String to UUID, use string2Uuid(<variable_name>).

To convert a UUID to String, use <variable_name>.toString().

Form values

The form properties were the default way of configuring a user task in the deprecated Flowable Eclipse Designer. For backwards compatibility, the Workflow Designer supports all form properties but you should use form references to design your user tasks and take advantage of the enhanced configuration options that they offer.

Form values determine how a drop-down form property is used. You can also use form values to include help text to help the user understand what is being asked for with a specific form property.

You enter these attributes in the Form values section of a Custom form property type.

Id Description
defaultFromResource

Determines the default value.

Possible values:

  • true: The default value is the ID of the currently displayed resource.
  • false: The default value is not the ID of the currently displayed resource.
multiValue

Determines if the user can enter multiple values.

Possible values:

  • true: The user can enter multiple values.
  • false: The user cannot enter multiple values. This is the default setting.
proposedFixed

Determines if the user can select other values than the suggested ones.

Possible values:

  • true: The user cannot enter other values than the suggested ones.
  • false: The user can enter other values than the suggested ones.

Use only in conjunction with proposedValues.

proposedValues

Determines which values are suggested to the user.

Possible values: resource IDs

Use only in conjunction with proposedFixed.

For a single value form, when the list of proposed values returns 10 or more items, the form adds a search box above the returned results.

Asset drop-down form

You can restrict the assets that will appear in a drop-down list based on the communities or domains to which the assets belong and the status of the assets.

Id Description
communityId Restricts the assets to those that belong to specific communities, as determined by the community ID(s) you enter.
conceptType Determines the asset types of the values in the drop-down list. The Name field contains the ID of an asset type. The drop-down values are all of the type of the provided asset type ID or of its subtypes.
domainId

Restricts the assets to those that belong to specific domains, as determined by the domain ID(s) you enter.

statusId

Restricts the assets to those that have specific statuses, as determined by the status ID(s) you enter.

Help text

Id Description
helpText

Displays help text directly below the form property.

Free text, including:

  • Maximum of 255 characters, with special characters.
  • Simple HTML styling (no JavaScript).
  • Hyperlinks.

Applicable to all form property types except the following:

  • enumeration
  • checkbox
  • radio button

Although not applicable to the three aforementioned static property types, it is applicable to the dynamic equivalents: dynamicEnum, dynamicCheckbox and dynamicRadiobox.

Form examples

This section contains examples of forms which can help you get started with creating your own forms.

Basic concept

If you add a text input component to the canvas, you will be asked to specify its label, for example First Name. If you then select this component and go to the General section in the attribute bar, you'll notice that the Value attribute is already defined as a form expression with the value set to {{firstName}}.

The text value entered in the text input field is stored under this {{firstName}} variable, which you can use in other components to build dependencies between form fields.

Change the state of text input components based on the checkbox selection

You can control a form component using other components in your model. For example, if you have two checkboxes, Disable (1) and Hide (2), you can control your Text Input (3) component by establishing expressions connected to the checkboxes. You can configure your fields so that if the Disable checkbox is selected, then the Text Input component is disabled by creating an expression for enabled={{!disabled}} (4).

Mark a form field as mandatory if a value entered in another field meets a condition

Form expressions allow you to build dependencies between fields based on defined calculations. For example, it is possible to make a text input component required (1) if the variable age (2) is defined in another component as greater than 18 . You would add the following expression to the Required field of the component: {{age>18}}

Display assets only from a selected domain

By default, after selecting an option from any dropdown component in the Workflow Designer, the Value variable stores the ID of the selected dropdown option.

Some of the dropdown components have built-in filtering options available. For example, the configuration options of an asset dropdown component, allow you to filter assets by domain ID, asset type ID, domain type ID, and status ID.

To display assets from the selected domain only, you must pass the name of the domain dropdown variable to the appropriate filtering option in the asset dropdown. 

JavaScript in expressions

You can also use JavaScript to create your expressions. For example, if you want to return the lower-case version of a string, simply add toLowerCase() at the end of your value: {{name.toLowerCase()}}.

It is also possible to chain several JavaScript functions. The following expression turns the name of a person into an email address: 

{{name.replace(' ', '.').toLowerCase() + '@collibra.com'}}.

Truthiness and Falsiness

JavaScript knows the concept of "truthy" and "falsy". This differs from the strict definition where a value is only true if it evaluates to a true boolean value.

A value in Form Expressions evaluates to true if:

  • A value is the Boolean value true.
  • A value is a string, such as Product A.
  • A value contains an object, such as a date.
  • A value is a number, positive or negative, with or without fraction.
  • A value is anobject {} or an array [].

A value in Form Expression evaluates to false if:

  • A value is the Boolean value false.
  • A value is null.
  • A value is undefined.
  • A value is 0.
  • A value is an empty string, such as '' or "".

Example:

You want to change the state of an input field from disabled to enabled after selecting an asset from the asset picker. The variable defined in Value for the asset dropdown and any other dropdown component stores the ID of the selected option. 

The concept of "truthy" and "falsy" means you don't have to build a complex condition to evaluate the asset ID to true. To change the state of an input field from disabled to enabled, pass the variable of the asset picker variable to the Enabled option in the text input using expression notation.

Create a workflow with dynamic forms

This tutorial guides you through creating a Workflow Designer example workflow with dynamic forms.

Create a new app

Access the Workflow Designer and create a new app:

  1. In the navigation bar, select Apps.
  2. In the top left corner of the Apps tab, click ✚ Create app.
  3. Enter the required information:
    • App name: HR verification process
    • App key: The app key is automatically generated based on the App name value.
    • Description: Although optional, the descriptions allow you to see an overview of the workflow purpose, for example This workflow demonstrates the use of dynamic forms through a process that versifies if an candidate can apply for a particular position.
  4. Click Create new app.

Your newly created app appears in the App models list on the Apps tab and you are redirected to the app editor page.

Add a process to your app

  1. In the app editor page, click ✚ Add model.
  2. In the What would you like to do? dialog box, select Create a new model for the appProcess.
  3. Enter the required information:
    • Model name: HR process
    • Model key: The model key is automatically generated based on the Model name value.
    • Description: Although optional, the descriptions allow you to provide an overview of the workflow purpose.
  4. Click Create new model.

Your newly created process appears in the Business process models on the Processes tab and you are redirected to the process editor page.

Edit the process of your workflow

Your process already contains a start event.

  1. From the Shape repository, drag three User tasks to the canvas and place them to the right of the start event.

    User tasks on the process canvas in Collibra Workflow Designer.

  2. For each user task, provide a name in the attribute bar, such as:
    • Basic information
    • Verification process
    • Success confirmation
  3. From the Shape repository, drag an End event to the canvas and place it to the right of the last user task.
  4. Click the start event and then drag and drop a Sequence flow over the first user task.
  5. Use a Sequence flow to connect all the remaining components on the canvas.

    A complete workflow diagram with three user tasks in Collibra Workflow Designer.

  6. Save your work.

Use the Validate Validate function for real-time form validation of your process to ensure its correctness without the need to deploy it first to Collibra. Any errors are displayed at the bottom of the canvas. Once addressed, you have the option to re-validate.

Add forms to user tasks

Basic information

The purpose of this task is to collect the candidate name and the submission date.

To create a form:

  1. Select the task on the canvas.
  2. In the Details section of the attribute bar, click Form reference to expand the properties.
  3. In the New tab, enter the required information:
    • Name: BasicInformation
    • Key: The key is automatically generated based on the name value.
  4. Click Create.

Your newly created form appears in the Form models list on the Forms tab and you are redirected to the form editor page.

You add fields to your form by dragging and dropping components from the Shape repository on the left to the canvas and editing their properties in the attribute bar on the right:

  1. From the Display section, add a Text display component.
  2. In the Value dialog box, enter a welcome message, for example Welcome to the recruitment verification process!
  3. Use the rich text editor to style your message.
  4. Click OK to close the dialog box.
  5. From the Data entry section, add a Text component.
  6. In the attribute bar, enter the required information:
    • LabelCandidate name
    • Value: {{candidateName}}
    • Required:
  7. From the Data entry section, add a Date component to the right of the Text component.

    The form canvas consists of multiple rows, each of them divided into twelve columns. All columns are equal in size. You can lengthen or shorten a component to fit into any number of columns and place more than one component on a row.

  8. In the attribute bar, enter the required information:
    • LabelApplication date
    • Value: {{applicationDate}}
    • Required:
  9. Save your changes.

Use the Preview function to view and test your forms while you create them: to check required fields behavior, dependencies between form components, and how they look.

A dynamic workflow form preview with a welcome text, an input field, and a date selector in Collibra Workflow Designer.

Verification process

This task allows candidates to select a department and a job that department and checks whether they have enough experience.

  1. Create a new form for the second user task:

    • Name: VerificationProcess
    • Key: The key is automatically generated based on the name value.

      If a form that you require already exists, you don't need to duplicate it. The Workflow Designer allows you to share forms between workflows. You can select an existing form in the Form reference properties in the Reference tab.

  2. From the Collibra data entry section, add a Domain component.
  3. In the attribute bar, enter the required information:
    • LabelDepartment
    • Value: {{department}}
  4. From the Collibra data entry section, add an Asset component.
  5. In the attribute bar, enter the required information:
    • LabelJob position
    • Value: {{jobPosition}}
  6. To restrict the list of job positions to the assets contained by the selected domain, add a dependency between the domain and asset components:
    1. In the attribute bar of the asset component, in the Filters section, select the runtime expression next to the Domain IDs attribute.
    2. Enter the variable you defined for the domain component: {{department}}
  7. From the Selection section, add a Radio buttons component.
  8. In the attribute bar, enter the required information:
    • LabelDo you have any previous experience in a similar job?
    • Value: {{previousExperience}}
    • Items: Click the items properties and enter the required information:
      TextValue
      Yesyes
      Nono
    • Required:
  9. From the Data entry section, add a Text component.
  10. In the attribute bar, enter the required information:
    • LabelHow many years of experience do you have?
    • Value: {{experience}}
  11. To make this field visible and mandatory only if a candidate has any previous experience, add the following dependencies between the radio buttons and text components:
    1. In the attribute bar of the text component, in the General section, select the runtime expression next to the Visible attribute.
    2. Enter the following expression: {{previousExperience=="yes"}}
    3. In the Validation section, select the runtime expression next to the Required attribute.
    4. Enter the following expression: {{previousExperience=="yes"}}
  12. To allow only numbers as an input for this field, add a regular expression validation:
    1. In the attribute bar of the text component, in the Validation section, select the Validation regex attribute.
    2. Enter the following expression: \d*
  13. Provide an error message for the text filed:
    1. In the attribute bar of the text component, in the Error message section, select the Validation regex attribute.
    2. Enter an error message, for example Please enter a value that is a whole number.
  14.  To accept only candidates that have more than two years of experience, add a custom validation:
    1. In the attribute bar of the text component, in the Validation section, click the items properties next to the Custom validations attribute.
    2. In the Custom validations dialog box, click ✚ Add item.
    3. Enter the required information:
      • Expression: {{experience>2}}
      • Error message: Unfortunately, your experience is not enough to proceed with the application.
    4. Click OK to close the dialog box.
  15. Save your changes.

Use the Preview function to view and test your forms while you create them: to check required fields behavior, dependencies between form components, and how they look. Since the preview is connected to your Collibra environment, you can see live data in the Collibra data entry components.

A dynamic workflow form preview with a domain selector, an asset selector, two radio buttons, and an input field in Collibra Workflow Designer.

Success confirmation

The confirmation task shows a success image of your choice.

  1. Create a new form for the third user task:

    • Name: SuccessConfirmation
    • Key: The key is automatically generated based on the name value.
  2. From the Display section, add an Image component.
  3. In the attribute bar, enter the required information:
    • LabelYou have successfully submitted our application.
    • Source URL: Enter the link to an image of your choice.
  4. Save your changes.

About versioning

Throughout this tutorial, every time you modified and saved your process or forms, the Workflow Designer created a new version of that model. To access the history of a model:

  1. In the navigation bar, select Apps.
  2. In the App models list, select your app.
  3. For any process or form that the app contains, select Details.
  4. On the details page, click to see the history of the model.
  5. Select any version to preview it.
  6. If required, you can use that version as a new version of the model.

Deploy your workflow

You can deploy workflows from the Workflow Designer to the corresponding Collibra environment with the push of a button:

  1. In the navigation bar, select Apps.
  2. In the App models list, select your app.
  3. From the app editor, click the Deploy button.
  4. In the Ready to Deploy dialog box, check the target environment.
  5. Click Deploy App to confirm and upload the workflow to the target environment.

Click the View in Collibra link from the success message to go directly to the workflow definition page where you can configure and enable it.