Skip to main content

1.33.0 - Rapid Platform

· 5 min read
Matt Franklin
Documents

30/11/2023

Features

Token Injection and Process Interruption

simple scenario

Imagine a sales lead nurturing process. The workflow will: •    Send newsletters, product updates every week to the lead •    Every time before sending, check the lead status •    If lead status = subscribed; send the material •    If lead status = unsubscribed; display a form to gather reason for unsubscribing and End process.

Before this release, the above case (and all similar requirements) was achieved by a combination of a Timer Intermediate Catch Event and an Exclusive gateway.

Timer with gateway

The problem with above solution

The Timer Intermediate Catch Event can only be configured to:

  • A specific point in time 
  • A duration of delay

Imagine the user who received a newsletter on a Tuesday. Upon receipt the Unsubscribe button was pressed. But the workflow will only check for the status next week. Till then the process token remains active.

Token injection and process interruption

This release introduces a new type of Intermediate event – The Signal Intermediate Catch Event.

Intermediate Catch Event

There are three fields which will help to configure the nature of this event:

  1. Choose a table – select the required table from the list. This a mandatory field.
  2. Conditional Expression – to provide the condition to be checked on a column value of the selected table. This is an optional field.
  3. Interrupting signal – YES / NO – When turned YES, and the nature of the event becomes interrupting, else it remains non-interrupting.

As the name suggests, this event is capable of:

  • Injecting a new token in the workflow process
  • Interrupt the existing process (kill all existing tokens)

What does it mean?

The Signal Intermediate Catch Event gets triggered when:

  1. an item is updated on the selected table (Default case - if the Conditional Expression is left empty)

OR

  1. an item is updated on the selected table AND the defined condition on the relevant column value is met. 

Considering our previous scenario, as soon as the lead Status turns “Unsubscribed”, this event will be triggered (if configured properly). Triggering of the event will generate a new token and the workflow will proceed forward from the subject intermediate event. Hence, token injection at the point in workflow where intermediate event is present, when the defined condition is met.

Further, if the “Interrupting Signal” field is set to YES, it means that as soon as the subject intermediate event is triggered, all the existing active tokens will be terminated. The only active token in the process will be the one injected by the intermediate event. 

Triggered Interrupting Catch Event

When the intermediate event interrupts the existing process, the symbol (where the token was present at the time of interruption) will turn grey as seen above.

When the intermediate event is triggered but does not interrupt the existing process, then all the tokens – i.e. the ones prior to triggering of intermediate event AND the one created by intermediate event trigger remain active in the process.

Triggered Catch Event

Another scenario

Imagine a company has a five-stage procurement process:

  • Stage 1 - identifying the need for a product or service
  • Stage 2 - conducting research and gathering information about potential vendors
  • Stage 3 - submitting requests for proposals or quotes
  • Stage 4 - evaluating proposals and selecting a vendor
  • Stage 5 - finalizing and executing a contract

The process is sequential in nature. However, in certain situations, it may be necessary to bypass a stage in order to expedite the procurement process.

For example, if the company has a pre-existing relationship with a vendor and has already conducted extensive research on their products or services, they may choose to bypass Stage 2 and go directly to Stage 3 to request a quote or proposal.

Alternatively, if the procurement process is taking longer than expected and the need for the product or service is urgent, the company may choose to bypass Stage 3 and go directly to Stage 4 to select a vendor and negotiate a contract.

With the introduction of new Signal Intermediate Catch Event, the workflow diagram may appear as shown below:

Multiple injection points

If the intermediate event(s) are set as interrupting, then in the episode of a stage bypass, the existing token would be killed and the process will advance from the next relevant stage.

Bug Fixes

  • Fixed feature level permissions getting confused between being on or off
  • Ensured restarting a process with an errored data association no longer fails to restart
  • User fields in Explorer will no longer mark the go-to user button as disabled
  • Fixed choice field fly-outs being random sizes depending on configuration
  • Exit intent no longer tries to fire when deleting an item
  • Configuring email communication activities in Workflow will no longer fail if the Principals view is missing columns
  • Rolling back to the start of a process run will no longer drop input or signal context

Improvements

  • Added v3 Adaptive document routing to Public Forms in preparation of release
  • Prevented unconfigured data cans from being flagged as errored
  • Process runs are now marked as completed when they have no active tokens
  • Added copy behaviour to ledger content in Explorer
  • Ensured the Delete Entity button doesn't randomly disappear

1.32.0 - Rapid Platform

· 9 min read
Matt Franklin
Documents

27/11/2023

Features

We are proud to announce five new features being released today.

Search field for Boards component

A search box is added to the KanBan Boards component. This can be used to search items on the Board based on provided keyword(s). The behaviour is identical to the Search items field already present in Data Table List.

Benefit: This feature is useful in filtering and finding items easily on the Board.

Please refer to the video below for illustration on how this new field can be used to search Tasks on a Board:

Set default value of User Type field to current user

If in a Data Table, you have a User Type column, you can now set its Default Value to the current user. Therefore, if User 1 is creating an Item, then the default value of the User column will be User 1; if User 2 is creating an Item, then the default value will appear as User 2.

Benefit: This feature is particularly useful in reducing effort where the current user had to repeatedly select oneself while creating items.

The default value can be set using the following steps: 

  • Navigate to Designer->Desired Table->Columns Tab->Desired User column.
  • Goto Default Value field.
  • Click "Assign to Me"
  • The Value "@me" appears in the field indicating it is set to current user as default.

Please refer to the below video for illustration:

Create Item Service Task

You can now generate items for an entity from within the Workflow. This means (for example) when this service task gets executed, it will add an item with defined field values to the Data Table.

Benefit: This is particularly useful in reducing effort spent on creating items by configuring User Tasks, Flows etc. The values of the field can be controlled from within the workflow.

You can pass both static values, as well as, Lodash expressions to the field.

Cerate item service task

The UI is consistent with Data Association.

To configure Create Item Service Task:

  1. Select Create Item in Service Task
  2. Select entity
  3. Click +Add Field
  4. Select desired field - the system will display all the fields from the selected entity.
  5. Provide Value to the selected field.

Please refer to the below video for illustration:

Timer Start Events

A new type is unlocked for Start Events - the Timer Start Event. You can now configure Timer Start Events in Workflow to have your processes start on a regular cadence.

Timer start event

Benefit: This is particularly useful when you need a workflow to trigger at a specific time period. For example - an HR manager may want the appraisal cycle to trigger on 1st of March every year. 

Timers are configured using the frequency picker but can also be configured with regular cron expressions.

Timer CRON configuration

Fields for Time Start Event: A time period can be viewed as a hierarchy of units

  • Year
  • Month
  • Week
  • Day
  • Hour
  • Minute

The first field (Every) is used to define the frequency and the remaining lower fields are used to defined the exact point(s) on time period when the workflow should be triggered. 

For example - Every Month - defines that the workflow will be triggered every month. 

The lower fields are used to define on which day of the month / week - e.g. 1st of every month and every Sunday of the month.

Further going down the hierarchy of time units, you can define what time of the day - e.g. 9 :15 am

Therefore you can define the exact frequency and time when the workflow will be triggered. 

Based on the value selected for the first field (Every) the lower fields are displayed for definition.

Please note, if a field is not manually set, its default value is set to single unit. For example: if you have left the minute field blank, the workflow will be triggered every one minute.

Displaying defined information

Based on the definition of frequency, the system will interpret and display the frequency as an English statement. 

CRON tester single example

Further, the system also displays a schedule for all the future runs of the workflow at the defined frequency (in batches of 5).

CRON tester multi example

In case the set frequency is a non achievable case - For example - 31st February, then the schedule will display N/A.

Please refer to the below video for illustration:

Trigger a specific workflow from a Menu button

You can now configure a Menu button to trigger a desired workflow from within Command Bar of the Explorer Item. There is a new option in the "On-Click Action" dropdown for Menu. It is titled - "Workflow - Execute Process".

Benefit:

Prior to this feature, a Menu button could trigger a Workflow using the "On-Click Action" as "Raise Workflow Created Signal". A click on such a Menu button throws the Signal and all the workflows with relevant Trigger Start Events would get triggered with this.

The subject feature is useful, when you do not want all the workflows to get triggered rather a very specific one.

Therefore, this makes it very similar to manually pressing the "Launch" button from within the workflow, however, this time from within the Explorer. 

Further, you can also pass inputs from Explorer to the subject Workflow. (discussed later as Part II)

To configure the menu button:

  1. Navigate to / create the desired Menu in Designer
  2. Select On-Click Action as "Workflow - Execute Process"
  3. Enter the Process Diagram ID - The process diagram id is present on the url of the process diagram.

For example - https://test.rapidplatform.com/rapidplatform/example/workflow/diagrams/**91**/edit

In the above URL - 91 is the Process ID. 

:::[Please note:] The workflow that you want to trigger from the Menu button triggers with any type of Start Event (normal / Signal / Timer). The Menu behaves like a manual Launch of the workflow process. :::

Please refer to the below video for illustration:

PART II - Dynamic inputs

This new feature also allows you to pass inputs to the Workflow from Explorer when the Menu button is clicked. 

To achieve this you need to configure the Workflow's Process Input section.  

Workflow input configuration

When you configure an Input field in the Process Inputs section, this enables you to provide a user input value at the time of manually triggering the Workflow from the Menu button.

A special case:  In case you have: 

  • configured a Lookup type of Input field in the Process Input section, AND
  • the Lookup is on the field of the same table where you have configured the menu button, AND
  • the menu button is displayed on Item Level 

Then the system will pickup the Title field value from the subject Item and pre-fill the same in the Input field. This still remains editable, if you wish to manually change the value that gets passed to the Workflow.

Please refer to the image below for illustration: 

Inputs affecting button forms

Bug Fixes

  • Fixed popup not closing when clicking off a task entry in explorer with an embedded file selected
  • Fixed multi-lookup and scoped-link fields failing to render correctly
  • Repairing sites no longer overrides the primary group
  • Fixed the titles not wrapping correctly when viewing the cards in the board component
  • Fixed the logo header in the task experience to match branding guidelines
  • Fixed email field not being greyed out when write permissions are turned off
  • Fixed media queries incorrectly applying at the correct screen size
  • Feature level permissions no longer apply when disabled
  • UTF8 and UTF16 characters now render correctly in public forms
  • Deleting a site no longer leaves the database intact
  • Viewing an Adaptive Documents item in explorer no longer references a non existent column
  • Loading spinner no longer aligned with the select all toggle when loading a data table
  • Loading spinner no longer spins indefinitely when creating a new site
  • Clicking on Workflow in the explorer menu no longer returns a 404 page not found error
  • Fetching a sub-type of task that already had estimated_time value, no longer returned as an array
  • Can create and update public forms with site and task id
  • Manually triggering a process diagram with a signal start event now gives you full item results in the output
  • Lookups on Workflow execution forms now fetch lookups
  • Single embedded file component no longer adds a second file when another file is uploaded
  • Set multiple item data cans to green completed when they fetch successfully
  • Fixed the Board component not being able to fetch needed columns if the selected view was missing them

Improvements

  • Added a confirmation modal in Workflow to prevent accidentally rolling back processes
  • Embedded files preview panel updated to current design
  • UI now maximizes the use of available screen space in page designer
  • Removed illegal characters in DocX template names
  • Adjusted the width of the Delete Entity pane
  • Added buttons to toggle "use created" for the Drive and Folder ID's when configuring a new Embedded File
  • Configuring page layouts are now displayed at a more appropriate size
  • Adaptive Designer styling now matches the new branding
  • Added search box to board component
  • Added webhook trigger type to post webhook options
  • File template configuration input fields now have added spacing
  • Can now trigger a Workflow from a menu item
  • Can now delete Embedded Files
  • Added menus page in Designer and moved all list level menus out of the menu

1.31.1 - Rapid Platform

· 4 min read
Matt Franklin
Documents

2/11/2023

Features

You can now use template strings in the open Hyperlink menu action, just like input field hyperlinks. We have also added three new parameters for templates to be aware of which server you are on. 

ParameterResult
envEither 'test' or 'prod'
tenantThe current tenant
siteThe current site

For example, you could create a link that goes to the correct tasks experience for the current site like so:

http://tasks.rapidplatform.<%= env!="prod" ?"com/_test" : "com/_prod"%>/<%=tenant%>/<%=site%>

HTML sanitize lodash function

When you have a textual input that contains HTML glyphs such as or you can now invoke a built in lodash function to strip out these glyphs. For example, to remove the glyphs from a User Task description field would be like so:

<%=htmlToText(UserTask_0ak37ta.properties.description)%>

Default Embedded Files

Continuing our learnings from template files, you can now configure at the table level a default embedded file definition. These default definitions can either point at the current item (and generate a folder as required) or a statically defined target folder in SharePoint. You can find the configuration in the newly reorganized Options tab when configuring a table.

Trigger on Change

You can configure Webhooks and Workflow Signal Events to conditionally trigger when one or more columns are updated. the changed() function now returns true or false if the indicated column is different from before it was updated.

For example, you could configure a Signal Event to trigger when an Invoice is marked as Voided like so:

Changed condition in trigger event

Here the process will only trigger if both the status was changed, and if it was changed to 'VOIDED'.

The syntax for changed is:

changed('column_name')

Workflow Element Coalescing

For those of you working with multiple branching paths in Workflow that need to reference something that could have been created on one of them, you can now reference elements in lodash regardless if they have been executed.

This is best demonstrated with an example, consider this process:

Workflow collapsing to a single task

This process could optionally start from three difference causes; either manually with an input, or triggered via a create or update signal. The AllField data can now references whatever the starting item is and collapses the trigger item into a single place to easily reference throughout the document. The syntax to configure this can is;

<%= inputs?.all_field?.id ?? StartEvent_1?.properties?.id ?? StartEvent_0wzx24k?.properties?.id %>

Previously trying to reference StartEvent_1 or StartEvent_0wzx24k would throw an error as only one existed. This has been resolved.

Outside of starting situations, you can also collapse something created in a branching path for later referencing. Again a Data Can is used here but is not required. The Task can references the single letter task that was chosen (A, B or C) so that it can be reviewed in the Combine task. For completeness the syntax in the Task can is:

<%= inputs?.all_field?.id ?? StartEvent_1?.properties?.id ?? StartEvent_0wzx24k?.properties?.id %>

Bug Fixes

  • Prevented tab freeze when configuring pages in Designer under certain conditions
  • Stopped Table search being case sensitive
  • Disabled and removed public forms where the task has been completed in all cases
  • Fixed UI failing to react when clearing / updating template folder configuration
  • Enabled attachments to be added via drag-n-drop regardless of file type
  • Fixed daylight savings time being regarded for Public Form submission timeout
  • Prevented page crash when closing the 'Add to form' panel in Designer on a table with >30 columns

Improvements

  • Upgraded styling on required fields in Explorer for readability
  • Improved Rich Text area styles when disabled to display as rich text instead of HTML
  • Added time to notes in the Activity feed
  • Added 401 page when navigating to experiences where the user is not allowed
  • Added collapse mode to workflow configuration panel (and stopped it popping out on click!)
  • Put back the Users' displayed email in User fields
  • Added Estimated time and On Hold status to Tasks, removed Failed status
  • Added support for principal unique ID in workflow user task configuration
  • Added default pages for Workflow Folders system list
  • Added feedback when uploading a process diagram using the new creation panel
  • Added Excel Date column when exporting data for better date consistency between locales
  • Added Multi-Lookup update/replacement support into Public Forms and API requests
  • Upgraded Tasks, Designer and the Login screens to match the new branding

1.31.0 - Rapid Platform

· 4 min read
Matt Franklin
Documents

12/10/2023

Features

UI Styling Upgrade

Rapid Platform System Upgrades

Following the Rapid Platform branding upgrade, Explorer, Designer and Workflow have gotten a facelift. This includes a change to routes for Designer and Workflow

PreviouslyNow
/{tenant}/{site}/Dezigna/{tenant}/{site}/Designer
/{tenant}/{site}/Compoza/{tenant}/{site}/Workflow

Authorized Forms

It is now possible to configure an authenticated public form. Configuring a form to be authorized will require the user to put in a predetermined, generated password before proceeding to the form. It is possible to set auth from workflow and have a password be generated or manually. 2 new columns were added to the tasks table to allow for this.

Custom Users and Minimal Install

Principals can now be created manually.

In our continued quest to make Rapid as flexible as possible you can now install a limited version without requiring application consent. This change alters the install mechanism to not require SharePoint or Groups access. This will install a site with the creating user only. In order to enable inviting users you can now create principal records to manually create both users and groups.

When adding a new User the only required information is an email address. This will try to match the User on your active directory (if access is granted) and backfill details when available. Any user that can authenticate to your tenant that have a matching email address to a User in the site will now be able to login.

To help manage membership in cases when groups are not accessible, you can now manually add & remove principals to groups using the command bar. You can view the membership using the Principals tab on a group, with a plan to build a custom membership control at a later stage.

Sites created with no application permissions will have reduced functionality, notably around files and emails.

Added pipeline page control

It is now possible to add the pipeline control to a page layout in legacy designer, this will allow the connection to a choice field and will display that choice field in a tasteful way as a method of describing progress.

New fetching query parameters

With the development of Adaptive v3, additional query parameters have been added to fetch lists of items based around their link relationships. Check the API Concepts page for further details.

Bug Fixes

  • Prevented page crash when configuring a Trigger a Webhook service task
  • Fixed 'Failed to Load' race condition on Explorer components when refreshing a page
  • Squashed Resize Observer error in console
  • Prevented erroneous error being reported when timers return to a deleted process run or diagram
  • Fixed conditions failing to fire in Adaptive Designer when configuring connections
  • Stopped menu actions with a form from sending the request on blur or when cancelled
  • Fixed site repairs with more than 700 principals failing to complete
  • Fixed selected items in multi-lookup fields failing to display as ticked
  • Fixed quick search on data tables failing to react after opening an item on the list
  • Saving in the Tasks experience without document storage set up no longer fails
  • Prevented command bar action buttons from sending when pressing cancel

Improvements

  • Ensured Preform Remote Action menu items always send
  • Made the group picker optional when installing a site
  • Removed extraneous padding on new lines in multi-line text fields
  • Added route to fetch Principals based on their membership
  • Wide sweeping CSS upgrades and library updates throughout UI-React
  • Ensured page creation state is not re-rendered until after an item is fully created
  • Improved table scoped command bar actions to respect all possible configurations
  • Added Choice pipeline component
  • Upgraded cascading lookup configuration in Designer to be able to regard full query logic
  • Added Pages page in Designer to manage the pages on the site
  • Added manual override control for Prefill data configuration in Workflow user tasks
  • Styled 404 and 403 pages

1.30.14 - Folder Templates

· 2 min read
Matt Franklin
Documents

31/08/2023

Features

Folder Templates

Through Designer, it is possible to now configure a folder to use as a template for a particular list. If configured, when creating an item when the 'always create folder is enabled', the contents of the folder will be set on that item. For existing items, the folder will be cloned when creating a new folder for the item through the UI.

URL Parameter for universallyLinkedTo

Like the LinkedTo param, putting this in a get Items request from RAPID will return any items for the specified list that are universally link to the specified item, this will not return scoped universal links.

Bug Fixes

  • Fixed an issue where lists cannot be deleted due to since deleted lookup fields
  • Prevented page crash on Workflow when viewing malformed sequence flows
  • Fixed files component in Public Forms failing to upload a file when within a child connection

Improvements

  • Added a suite of Workflow Integration tests
  • Added the IN Odata query operator, using the following syntax IN(column name,value1,value2)
  • Added toggle on Perform Remote Action menu items to send a batch request instead of individuals
  • Added default filter to Adaptive Designer when selecting a document to not regard apps
  • Hide the execute diagram button if a non-executable diagram is opened
  • Improved UI for configuring cascading lookups
  • Cascading lookups now use OData filters

1.30.12 - Workflow Rollback

· 2 min read
Matt Franklin
Documents

20/07/2023

warning

Breaking Change - API user webhook control

A new query parameter has been added to POST/PUT requests called webhooks. When true requests will trigger webhook events to fire, when false it will prevent them. This new parameter is assumed to be true for normal requests, but is assumed to be false for Application User requests.

All requests made by application users that require webhook events to fire will need to add webhooks=true

Features

Rollback support in Workflow

While viewing a process run in Workflow you can now select a previously executed element and revert the run back in time to there. For example, selecting a User Task will roll back the process to just prior re-creating the task. Rolling back a process will abort existing tasks and timers to help clean up.

Bug Fixes

  • Fixed resuming unconfigured data associations erroneously failing
  • Fixed page crash when configuring some condition cases in Adaptive Designer
  • Re-enabled success toast on items in Explorer
  • Enabled the disable deletion configuration to persist through refresh
  • Refreshed page set when navigating between different Tasks sites
  • Fixed attachment records failing to refresh when navigating between different tasks in the Tasks experience
  • Improved reactivity when uploading attachments in the Tasks experience

Improvements

  • Ensured site details (environment, tenant, site) are on menu action requests
  • Added concurrency support for resumes in workflow
  • Added Embedded File column support in data tables for Explorer
  • Improved performance on lists that contain multi-lookup fields
  • Added error message reflection to UI when service tasks fail in Workflow
  • Enforced currency formatting in data tables to be 2 decimal places

1.30.11 - SendGrid support in User Tasks

· One min read
Matt Franklin
Documents

6/07/2023

Features

User Task Communication Support

You can now leverage the existing communication infrastructure in User Tasks when configuring your Workflows. This currently only supports SendGrid but will naturally extend to more communication channels as they become available.

Embedded File Control

Added the embedded file control to Adaptive. This allows custom pages to render an embedded file definition and allow file viewing and uploading.

Bug Fixes

  • Fixed Adaptive Designer overview page failing to populate on refresh
  • Added more robust error handling and reporting when Data Cans run into problems
  • Fixed Embedded Files configuration being destroyed by update item menu actions
  • Fixed dependant lookup construction failing when regarding filters on base tables for sub-types
  • Updated the Due Date for tasks generated in a loop to regard now, rather than the start of the loop

Improvements

  • Added exit intent configuration on all Explorer menu buttons
  • Added Embedded Files control to Adaptive control library
  • Added environment variables to webhooks and remote actions in Explorer

1.30.10 - Control Deletion at List Level

· One min read
Matt Franklin
Documents

29/06/2023

Features

List Deletion Configuration

It is now possible to enable/disable delete buttons for a list and its items in Explorer using configuration in Designer. This feature helps prevent accidental deletions in linked contexts.

Bug Fixes

  • Repeating sections no longer crash the page in certain prefill scenarios
  • Aliased illegal characters in view names
  • Enabled common names
  • Webhooks and signal events now fire on workflow update data association
  • Fixed cases where an entity cannot be deleted due to foreign key constraints

Improvements

  • Added ability to copy json paths containing spaces and other characters in workflow
  • Added validation for view names
  • Command bar is now disabled when no document is selected
  • Site creation timeout increased to 5 minutes

1.30.9 - Form Submission Custom Pages

· One min read
Matt Franklin
Documents

15/06/2023

Features

Successful Submission Form

It is now possible to configure a form or page to be shown in form service after the submission of a form. This is configured on a form level, where successful or errored submissions of the form can have a custom page shown rather than the default success/fail pages.

Bug Fixes

  • Fixed an issue where lists fail to delete due to foreign key constraints
  • Fixed a page crash in forms service when a lookup is prefilled to null
  • Fixed a crash when typing 2 characters at once in a multi line field with a default value set
  • Fixed an issue where repeating sections will submit null when containing a default value

Improvements

  • Priority and all other required fields will now be fetched for the tasks experience
  • Resolved an issue where an erroneous error is thrown on creation of a folder
  • It is now possible to compare 2 columns together in an OData Filter
  • When creating or updating a view with an invalid request, no longer times out but returns error
  • Inactive users will no longer attempt to have SharePoint permissions synced to