frevvo Latest - This documentation is for frevvo v10.3. v10.3 is a Cloud Only release. Not for you? Earlier documentation is available too.

Workflow Step Properties

When you click on any step in the workflow, a series of action icons display depending on the step type. 

  • Properties displays tabs to set up Settings, Assignment, Messages, Rejection, Precondition, Escalations, Emails, Web Hook, Quick Approval, and GeoLocation. 
  • Edit form takes you to Forms editing mode for the form or parent form of a linked step.
  • Download Step allows you to download the step of the workflow as a standalone form. You may want to do this if you update the step in the workflow designer and you want to keep your Forms and Workflow libraries in sync.
  • Delete removes a step in a workflow. You will be asked to confirm the deletion. 

Summary and HTTP steps only display the Properties and Delete options.

Step Properties Wizard

The Step Properties wizard opens when you click on a workflow step or select Properties from the step's action menu. The workflow outline will slide left but stay visible, and the Step Properties tabs will appear. You can close the Properties wizard by clicking the X just above it.  

  • You can navigate between tabs and between Guided Designer editing modes as you make edits, and your changes will be temporarily saved. Click the Save to permanently save your changes and continue working.
  • You can switch between steps while remaining on the same properties tab. This may be helpful when making lots of similar changes to workflow steps, such as changing the Task Info message for every step of a workflow.

  • frevvo will validate the Property Settings when you save. If a property value is invalid, the tab(s) will not close and a message will display with two options.
    • CLOSE: Close this dialog and fix your errors. Your changes will be saved, but you must correct validation errors shown in order to proceed.
    • DISCARD & CLOSE: Discard your changes. You can then navigate elsewhere. Note that this discards all changes made in the properties settings, not just the validation errors. 
    • The screen will stay on the current tab if there is a validation error.  Otherwise, another invalid tab will be auto-selected (starting from left to right) if another tab needs attention. Tab labels with invalid entries display in red.

  • Hover over any field on the Properties tabs to see a helpful hint providing information about the property. Some fields contain instructions to guide you.
  • Clicking on the down arrow for a property shows an unfiltered list of choices applicable to that property. For some properties, you may see templatized controls from your workflow and workflow/special templates provided in frevvo.
  • In some cases, you can type ahead to narrow down the list. Use the up/down arrows, the Enter key or click an option with your mouse to select an option. Use the Backspace, Delete or click the x on a selected property to delete it.
  • Typing an opening curly brace into some fields, followed by the name of a control, show a list of the fields in your workflow that match the entered text and will be added to the field as a control template.
  • On some tabs, you may have to slide the toggle to the right to turn on a feature.

Each step property setting is described below. 

Click the Help icon at the top of any tab for a quick tour of the features in that section. Currently tours are only available for Cloud customers.

Settings

Specify General Settings for a step in your workflow on the Settings screen.

Name

This is the name of the step that you set in the Workflow Design Wizard or Add Step Wizard. If you do not provide a step name, frevvo will give it a default name i.e. "Step 1" or the name of the existing form, if used. Form names longer than 60 characters will be truncated. 

CSS Class

This CSS class name will be added to the XHTML markup generated for this step in the workflow. Refer to the CSS class topic for details.

Continue Label

This is the label of the button that is displayed at the bottom of every step in the workflow. The default label is Continue for all workflow steps except the last step where it defaults to Finish. You can use templates to customize the label on different steps of the workflow. 

Save Label

The Save button label can be customized for each step in your workflow. For example, you can change the button text to Save for Later. This will help users understand what to do if they want to save a partially completed workflow. To show the Save button on a workflow step, the Save/Load property must be checked on the entire workflow and on the workflow step.

Decorator

The designer can select a decorator for the steps in a workflow by choosing an icon from the Decorator dropdown. The selected decorator will replace the default number for the step of the workflow on the Navigation toolbar and will display in the Workflow Diagram. 

No decorators selected:

With decorators selected:

Printable

If this is unchecked, then this step will not appear in the printable PDF for the workflow. This is commonly used when you add the same form to the workflow multiple times. The Printable property is only available on non-linked steps. The setting for the parent step applies to that step and all steps linked to it. The form for linked step(s) will only be printed once in the PDF snapshot. The designer can have fine-grained control over which controls appear in the PDF by editing the step and setting the control's printable property.

Saved to the Task List

This feature displays a Save button on the step and is useful for workflows containing lengthy forms where your users may not have all the information required to complete the form in a single session. When users click the Save button at runtime, frevvo saves a copy of the workflow with all the current values to the user's task list. Users access the saved workflow from the task list to continue working on it at a later time.

The Saved to the Task List property is checked by default when you create a workflow step. In order to display the Save button, you must also check Save/Load in Workflow Settings. To remove the Save button for all steps, uncheck the Save/Load property in Workflow Settings. To remove the Save button for an individual step, uncheck the Saved to Task List property in Step Settings.

Workflow Setting: Save/Load 

Step Settings:     Saved to the Task List



Result

CheckedCheckedA Save button is displayed on this step.
CheckedUncheckedNo button is displayed for this step.
UncheckedChecked or UncheckedNo button is displayed for any step.

The Save/Load feature documentation explains in more detail how the Save button works.

Save to Role

The Save to Role property allows the user to save the workflow to the task list of users in the assigned Role for the current step. For example, you may have an Issue Tracking workflow where an employee submits an Issue and the Issue can be acted upon by multiple users in the "Admin" role before it is resolved. The first step is filled in by any employee. When the employee clicks Continue, a task is generated for the "Admin" role. Any user with the "Admin" role can perform the task. The user can enter some data and click Save. The workflow goes back into a pending state and is placed on the task list for any "Admin" user. A different "Admin" user can pick it up and continue working on the issue. In this manner, you can create a step in a workflow that loops several times before continuing. Refer to the Looping between multiple users in a role topic for an example of a workflow design pattern that uses Save to Role.

Save to User

The Save to User property allows the workflow to be saved to the user specified in the Assign to User field, rather than the current user. Usually in this scenario, the Assign to User field contains a template, such as {NextApprover} to dynamically assign the step based on data entered at runtime. For example, you may have a form that needs to be reviewed and approved in an ad-hoc manner. You can create a step in a workflow that loops several times and that dynamically routes to different people before continuing. Each approver selects another user from the NextApprover control and then clicks Save to save the task to the next user's task list. See the Task Collaboration workflow pattern example for a deeper understanding of this feature.

Fast Finish

The Fast Finish feature is useful for workflows with many steps. If a user navigates to a previous step to change data, Fast Finish eliminates the need for the user to click the Continue button on the remaining steps of the workflow to resubmit it with the changed data. Fast Finish can be selected at the workflow level or at the step level. Refer to this feature announcement for more information.

Allow Signature Pad

Check this checkbox if the step in a workflow will be using an external signature pad. Leave the property unchecked (default) on the steps that will not be using a signature pad. See Topaz Electronic Signature Pads topic for the models supported and configuration information.

Assignment

Use the Assignment tab to:

  • Assign a workflow step to a user, role(s), or an email address.

  • CC a notification to any additional user(s) who should also know the workflow is on this step.
  • Customize the Task Notification email message that is sent when the generated task for that step is put on the user's Task List. This email informs the recipients that there is a task that requires their attention.
  • Disable task notification emails for the step.

Assign a Workflow Step to a User, Role(s) or Email Address

Users are given the highest priority at runtime followed by roles and then any email address.

  • When you add a user to the Assign to User field, the Assign to Role and Assign to Email(No login required) fields become disabled. You cannot add Role(s) or an Email Address.
  • When you add a role to the Assign to Role(s) field, the Assign to Email(No login required) field becomes disabled but the Assign to User field remains enabled.
    • If you add a specific User then the Assign to Role(s) field becomes disabled, and will be ignored at runtime.
    • If you add a dynamic User (using a template), the step will reroute to the Role(s) only if the template resolves to null at run time.
  • If you only add an Email Address, the Assign to User and Roles(s) fields remain enabled. If you add a User or a Role(s), the Email Address field becomes disabled and will be ignored at runtime.

User

This field allows the designer to assign a workflow step to a specific user. Clicking the shows the first 10 users in your tenant in alphabetical order, followed by the first 10 fields in your workflow in curly braces, making it a Control Template.

  • You can enter a frevvo user id. Begin typing in the user id and a list of user names matching the text displays. Use the Enter key, the Up/Down arrows, or click an option with your mouse to select a user.
  • You can only enter a single username in this field. Ex: nancy. Setting the user property to a comma-separated list of usernames, Ex: nancy, prajakta, will not work. This will be treated as a single username.
  • This field can use templatized strings for dynamic content. For example, in a Vacation Request workflow, the first step is to be completed by an employee but the second (approval) step must be performed by the employee's manager. i.e. it can contain "{ManagerId}" where ManagerId is the name of a field in a form from a prior step. frevvo will resolve the ManagerId string using the actual value of the ManagerId control and generate a task targeted at that specific user.
  • To enter a Control Template, type the opening curly brace '{' followed by the control name into the Assign to User field. A list of fields from your workflow displays. Select an option to enter the control name into the field with the closing curly brace.

Do not use accented characters in the User property field.

Refer to the workflow topic sending a workflow step to a specific user for an example.

You may want to route a step in a workflow to the user's manager. frevvo provides a built-in template that is available for every transaction. Simply type the template {subject.reports.to} in the User property for that step in your workflow. The workflow will then be routed to the user who is specified in the Reports To field on the User's configuration screen.

Role

Roles are created by your tenant administrator or automatically imported from your LDAP or Active Directory server. When a role is selected, only users belonging to that role may perform the step. For example, if you have a Purchase Request workflow where the first step is to be completed by any employee but the second (approval) step must be performed by someone with the "Manager" role, you can select the Manager role for the second step. When an employee uses the workflow, completes the first step, and clicks Continue, frevvo will generate a task and place it on the task list for users with the Manager role and display the Pending Message to the employee.

  • You can enter one or more frevvo roles. Begin typing in the role name and a list of roles in your tenant matching the text displays. Use the Enter key, the Up/Down arrows or click an option with your mouse to select a role.
  • Repeat these actions to select additional roles i.e. Manager, HR 
  • This field can use templatized strings to dynamically determine a role at runtime.  For example, you may have a workflow where the first step is a Purchase Order or a Loan Request and the second step is an approval; however, the approval must be performed by a Manager if the amount is less than $1000 and a Supervisor otherwise. You will need a control in your form that is populated with the role that you want the workflow to navigate to - in this case, Manager or Supervisor. To enter a Control Template, type the opening curly brace '{' followed by the name of the control into the Assign to Role(s) field. A list of fields from your workflow displays. Select an option to enter the control name into the field with the closing curly brace. Repeat these actions for the steps in your workflow that are going to use the role entered for routing e.g. {ApproveRole}. At runtime. frevvo will resolve the target role using the data in the ApproveRole control and will route the workflow to that specific role. See the workflow example topic determining the role at run-time.

Partial templates with prefixes and suffixes can be used to create a complex role such as floor-manager for workflow routing.

 Click here for an example

When you are setting up step Assignments or Escalations for workflows, you can assign a user/role template where only part of the text is inside the curly brackets - {}. This is best explained with a simple example using roles for workflow routing.

Let's say the roles in your organization are floor-manager, sales-manager and store-manager. Of course, these role names and users assigned these roles must exist in your tenant. Your form has a dropdown control named roles with these options: floor, sales, store. Users select the first part of the role from the dropdown. The suffix -manager is typed in after the role template in the Assignment tab to create the complex template - (floor-manager, sales-manager, store-manager). The workflow step with the complex template assigned will navigate to the appropriate role.

A partial match template lookup is available on the Assignment and Escalations tabs to select the complex template from dropdown options.

We will assign the {role}-manager on the Assignment tab of a workflow as an example:

  1. Type the control name of the template surrounded by curly brackets - in our example - {role}

     

  2. Type the dash - followed by manager. The {role}-manager appears in the dropdown

  3. Click on it to select. Click Finish to save the changes to the Assignment tab then click the save and exit to save the changes to the workflow.

  4. Test the workflow. Select floor in the role dropdown. The assigned workflow step will navigate to all the users in your tenant with the role of floor-manager.

The partial lookup works with users/roles and prefixes/suffixes in the users/role names.

Email Address(No login required)

Use this field to assign a step in your workflow that is going to be performed by an anonymous user. This is a user who will not need to log into your frevvo tenant to perform their step. Let's say you have a Purchase Order workflow, where the Order Details are completed by someone in your company and one of the steps is routed to the customer for approval and signature.

  1. Edit the Purchase Order workflow in the Workflows Designer.
  2. Click on the three-dot Action Menu for the step anonymous users will perform and select Edit Properties. Select the Assignment tab.
  3. Enter a valid email address into the Assign to Email Address (No login required) field.
    • frevvo will check if the address is entered in the correct format and notify the user if it is not.
    • Only one email address is allowed.
    • This field can use templatized strings to dynamically determine an email address at runtime. To enter a Control Template, type the opening curly brace '{' followed by the name of the control that will contain the email address into the field. A list of fields from your workflow displays. Select an option to enter the control name into the field with the closing curly brace. Repeat these actions for additional steps in your workflow that will be performed by anonymous users.

Some important information about the Assign to Email feature is

  • The workflow can be rejected to a task performed by an anonymous user.
  • Tenant/workflow admins can reassign the anonymous step to a different email address.
  • The Task Assignment can be CC'd to another user so that in case the link is lost, there is another way to access the task, reassign or resend it. Be aware that the first user to click the link will lock the task, so to ensure the intended user performs the task, consider including in the email message a warning such as "A copy of this message has been sent to your manager. Managers should not click the task link."
  • Configure a History Message on the step before the Anonymous Task step if you want to see relevant information in the audit trail. The History Message can include templatized strings so you can see the email address of the recipient.
  • The Who can start the workflow permission does not need to be set to 'Anyone (login not required)'. The Anonymous step will work with any of the workflow visibility choices.
  • The Anonymous step uses the {task.perform.url} template in the Task Notification email Message by default. If the anonymous user submits their step of the workflow then goes back into the email and re-clicks on the link, the following message displays:


Refer to the Anonymous Participant topic or the Workflow Tutorial for an example.

Workflow Task Design Considerations

The designer defines task boundaries by setting assignments (user, role, or email address), so each workflow step with an assignment is considered a new task. Any subsequent workflow steps without assignment are considered part of screenflow of the same task. If the next step is a new task and the current user is eligible to perform it, the user will be provided with a link to continue the workflow in the same screen. When the user clicks the link to continue the workflow execution, the workflow will continue like a screenflow but a new task will be created behind the scenes. 

Here is a diagram that explains how step assignments define tasks:

Having an assignment to a workflow step strictly enforces the task boundary and it is applicable for the first step of workflow as well. This means to create a task for the first step simply configure the first step with an assignment. Designers can also define workflow level Access Control by selecting Custom in the Who can start the workflow property and entering user(s) or role(s).

Assignment on First Step

There are some cases where you may want an assignment on the first step of the workflow so that initiating the workflow places a task on the user(s) task list rather than opening the form up right away. Usually, this pattern is used when an external process is used to start the workflow. Here are a few examples:

  • The HR Manager needs to launch Employee Review Forms for all of the employees annually and place them on the respective Managers' task lists.
  • The CFO kicks off the budget process by placing the first step of a budget workflow on each department head's task list. The first step has an escalation to ensure the step is completed within 60 days.
  • After a new employee completed their Employee On-Boarding workflow, a task is created for them to complete the Acceptable Use Policy Workflow, which follows a different approval process than the EOB workflow. (This is one way to handle parallel workflows.)

Just as with any step of the workflow, you can set the first step's assignment to a hard-coded user, role or email. For example, if the first step of the Budget Planning workflow is assigned to the user Sue, then anyone with Access Control to start the workflow can start it (i.e. via portal, link, etc.). For example, perhaps the CFO clicks this link when they are ready to start the budget planning process. When they do so, they will see the pending message set on the first step, and the step will be placed on Sue's task list. Sue will also get a task notification email. 

However, it is more common to use this pattern with a template in the assignment field. In this case, a hidden control is added to the form, i.e. 'assignedUser'. The Assign to User field is set to the template {assignedUser}. The workflow is launched using a kick-off form (or another web service) that calls the workflow's raw share URL with the parameter _data=(<targetControlName>:<value>). The value in the parameter can also be a template, such as when using another frevvo form to select a user and launch the workflow to that user's task list. Here's an example:

The CFO is ready to kick off the budget planning process and wants to place the Budget Planning Workflow on the task list of each department head. The Budget Planning Workflow has a hidden control named 'assignedUser' and the first step's Assign to User field is set to {assignedUser}. The CFO opens a different frevvo form designed as a "launch" or "kick-off" form. She enters the userID of a department head in a control named 'userID', and clicks a trigger button. A business rule then performs an http.get to the Budget Planning Workflow's raw share URL plus the parameter &_data=(assignedUser:{userID}). Let's imagine she entered the userID 'trevor'. Trevor will get a task notification email to perform the first step of the Budget Planning Workflow. The CFO can repeat her process for each department head userID. 

When a templatized control is used in the first step assignment, it's important to know that the value for that control can be initialized only by the first three methods of initializing default values in the order of precedence: 

  1. Default values entered when the form was created in the Form Designer
  2. Values from an XML document(s) sent in the Post request for the form or OnInit. (This is uncommon.)
  3. URL parameters appended to the form URL via the frevvo _data URL parameter 

The third method, URL with the _data parameter, is by far the most common method. The workflow pattern "Start a New Workflow from Another Form/Workflow" describes how to design this scenario using frevvo forms/workflows. All values set by the _data parameter (including the assignment control value and any other control values) will be set prior to the user performing the task. 

When the first step has an assignment, the form will not be loaded for the user who started the flow. As a result, rules that prepopulate form fields will not run and templates based on form fields will have no value. The only way for fields to be populated in this scenario is to pass those values in the form URL using _data.

Doc URIs and Business Rules on the target workflow will only run after the assigned user performs the task. This ensures the correct initialization of form data when these methods are used. However, it also means that the target workflow in this pattern (whose first step is assigned to a template that is initialized using the _data URL parameter) cannot be started using the traditional methods i.e. via a portal or email link without _data parameter setting the value of the assignment control. For example, a business rule that sets assignedUser to the logged in user's id would not run until after the task assignment. If a user tried to start the form via a portal, they would see the pending message for Step 1, but the {assignedUser} template would resolve to null, resulting in an invalid task assignment. The best practice is to only launch a target workflow using the external process, such as a launch form or web service. However, if the first step has Save to User or Save to Role checked, frevvo will bypass the user assignment when the workflow is first initiated via the share link or portal. This can be a workaround if a target workflow needs to be started both via the launch form and via the share link.

Save to User or Save to Role on First Step

When you have Save to User or Save to Role, combined with a templatized User/Role assignment, enabled on the first step, frevvo will allow a null value in the template only on workflow initiation. This means that any eligible initiator (based on Who Can Start the Workflow permissions) can start the first step, bypassing the user assignment on initiation. 

When the user clicks Save, the step will be assigned to the user specified in the template following the standard Save to User/Save to Role behavior.

  • If the template resolves to a valid user, the step is assigned to that user/role. The current user sees the Step 1 pending message after clicking Save.
  • If the template resolves to null, the step will be saved to the current user's task list. The current user sees "Save successful" next to the Save button after clicking Save.
  • If the template resolves to an invalid user/role, an Invalid Task Assignment notification will be sent to the admin. The current user sees the Step 1 pending message after clicking Save.

Invalid Task Assignment

When a task that is routed to a templatized user, role, or email resolves to null or empty string, the task will be assigned to the "invalid-task-assignment" userId, and a notification will be sent to workflow admin users (or tenant admin user if no workflow admin is configured.) This will enable workflow admin users to easily search misrouted tasks assigned to the "invalid-task-assignment" userId and re-assign to a valid user.

One exception to this is when you have both a templatized user and a role assigned, the step will reroute to the Role(s) if the template resolves to null at run time. If the templatized user is valid, the Role will be ignored.

Workflows created in v8.x and prior will not inherit the new "invalid-task-assignment" behavior if a templatized user, role, or email resolves to null. Instead, they will retain the previous behavior of morphing into a screenflow.

Anonymous Steps and the Audit Trail

If your workflow was created in a version of frevvo previous to v8.0, then the step performed by the customer (anonymous user) was designed by dragging an EMail or Anonymous Task step from the Palette and dropping it on the Workflow Designer canvas. Workflows designed in this manner will still work in v10.0 but the Audit Trail will show the task in a WAITING state.

In version 8.0 and later, the same workflow can be designed by simply assigning the step to an Email Address. The Audit Trail, shows the step performed by the customer (anonymous user) in a Pending state and displays the Email address it was sent to.

Setup Task Notification Email

When frevvo generates a task and places it on a user's task list, and a notification email is generated.  The email informs the user that there is something on their Task List that requires their attention. A clickable link to the task or the Task List depending on the template that you choose is included in the email.

You can specify your own email subject and message. The message body can contain HTML and CSS, giving you the ability to generate nicely formatted emails. Form data values can be added to the message subject and body using control template names or workflow/special templates provided by frevvo.

The designer can also specify email address(es), user(s), and role(s) to receive a CC: of the task notification message. For tasks assigned to an Email Address (No login required), the task will be locked by the first user who clicks the {task.perform.url} link. Designers can help ensure only the intended recipient picks up the task by configuring a warning into the email message such as "A copy of this notification has been sent to your manager. Managers should not click the link above."

Access the Assignment tab for that step to customize the subject and message of the email the user receives.

Email notification is optional. Each user can configure their own email notification preference in their User Profile using the My Account link on their projects page. The tenant admin may also view or edit users' task notification preferences in bulk via the users.csv file. If the Email option is turned off, they will not receive Task Notification emails.

  • You can enter any text you want for in the Subject and Message fields. Clicking on the DEFAULT button, shows "New Task" as the default subject and "You can access your task by clicking <a href="{task.perform.url}">this link</a>" for the default message.
  • Clicking on the down arrow, show a list of templatized fields from your workflow, workflow/special templates provided by frevvo and Task Templates that you can use in the body of your email.
  • Type the opening curly brace '{' followed by the control name to enter a field from your workflow as a template. Select an option to enter the control name into the field with the closing curly brace.

See the Email Integration topic for information on setting up email notifications for form and workflow submissions. This function uses a similar notification wizard.

The tenant admin can configure the from email address for task notification emails on the admin's Edit Tenant page.

If you are using tomcat, emails sent are tracked in the <frevvo-home>\tomcat\logs\frevvo.log file when the INFO  log level is enabled. In-house customers can search for an entry like "Sending email to <email address> with subject <the subject of your email>. If an error occurs when sending, the message "Could not send email to <email address> with subject <the subject of your email> including the actual exception that caused the problem.

Built-in workflow templates

  • {flow.id} - The unique workflow instance id. This id is unique for each workflow submission.
  • {flow.type.id} - The unique id associated with a given workflow. See Sharing Forms
  • {flow.extid} - Client defined extId passed in the formtype Url parameter.
  • {flow.name} - The name of the workflow.
  • {flow.description} - Description of the workflow. 
  • {flow.activity.id} - The Id of the current workflow step.
  • {flow.activity.name} - The name of the current workflow step
  • {flow.activity.reject.reason} - The reason a workflow step is rejected

Built-in special templates

  • {subject.id} - logged in user's username. 
  • {subject.roles} - A list of all the roles for the logged in user 
  • {subject.email} - logged in users's email address
  • {subject.first.name} - logged in users's First Name
  • {subject.last.name} - logged in users's Last Name

  • {subject.reports.to} - the user id of the person the logged in user Reports To - configured in the user profile by the Tenant Admin. Typically used to designate a manager/supervisor.

  • {tn.id} - the Tenant ID where a form/workflow is located

  • {tn.name} - the Tenant Name where a form/workflow is located

  • {user.id} - Owner of form/workflow and user folder name in the filesystem 

  • {project.id} - The unique id associated with a given project (See Sharing Forms.)

  • {project.id} -The name of the project

  • {form.project.id} - The unique id associated with the project of the given form

Starting in v9.1.0, "Applications" are known as "Projects." The built-in data names app.id, app.name, and form.application.id will be supported for a limited time but may not be available in a future release. Please update forms and workflows to use the updated data names project.id, project.name, and form.project.id.4

Built-in data templates for forms (form.id, form.name, etc.) may be used in Workflow Step Properties Settings, Messages, and Quick Approval tabs.

There are two built-in frevvo templates that can be used to generate a link in the task notification email: {task.list.url} and {task.perform.url}.  To make any of these clickable links in your task notification emails, wrap them in an HTML <a> tag like this:

You can access your task by clicking <a href="{task.perform.url}">this link</a>

{task.list.url} - The special template {task.list.url} can be used in the email body to generate a clickable link to the user's frevvo server task list. Users will be taken to their Task List in your tenant after logging into frevvo. Users will be directed to the Task List in your portal if a default portal is set for the tenant. Use the directions for portal Specific URL to direct these links to any portal other than the default.

Here is an example of the hyperlink generated in the email:

{task.perform.url} - This is a URL template to the specific task in question and is set in the Task Notification Message by default. 

  • Clicking this link from the email on a desktop, shows the form/workflow rendered in an iframe (similar to clicking Test).
  • Clicking this link on a mobile device shows the mobile rendering (no iframe). Users will be directed to the form/workflow rendered in your portal if a default portal is set for the tenant. Use the directions for Portal Specific URL to direct these links to any portal other than the default.
  • Clicking a link in an email created with this template satisfies the Perform By or Perform Within requirement when setting up Escalations.
  • When Save/Load or Save on Navigate is checked, the user may click this link again to return to the last step they saved (Save/Load) or closed the browser (Save on Navigate).

    Here is an example of the hyperlink generated in the email:

Consider an Employee On-Boarding workflow where the manager receives a task notification email to approve or reject the screenflow submitted by the new employee. If this built-in template is used, the manager step in the workflow displays when the link is clicked without having to access it from the Task List.

Portal Specific URL

If you use a single frevvo portal for all of the activities in your tenant, an easy way to open task URLs in your preferred portal is to set a Default Portal for the tenant in the Manage Tenant page. Selecting a default portal will cause task notification links to direct the user to the task and/or Task List rendered in the default portal.

However, if you have multiple frevvo portals, you might want links to render in different portals for different forms/workflows. To do this - modify the task notification email to use a portal-specific URL. Change the default Task List special template to a portal-specific URL which will return you to the user's Task List embedded in your chosen portal. Create a portal-specific URL by supplying a URL to the Task List with the portal/portalID/tasklist appended to it.

You have a new task for New Hire. To access your task list,
please click on:
http://10.0.0.14:8082/frevvo/web/tn/mycompany.com/user/designer/portal/mycompany/tasklist   

In this example, the URL is the portal URL with /tasklist appended to it. Users must be logged in for this URL to take them directly to their Task List in your portal. On mobile, you will see a Back button rendered to take you back to the portal. In both cases, the top browser URL is redirected to the appropriate menu item for your task list so the user will not have to click on the Task List menu tab to display it. If you do not have a task list menu item in your portal, you'll end up on the portal home page.

Disable Task Notification Emails

You can disable the Task Notification emails for any workflow step assigned to a User or Role. This feature is useful for steps that should not notify users or for testing purposes. This feature is not available for steps assigned to an Email.

  1. Navigate to the Assignment Tab.
  2. Click CLEAR NOTIFICATION .
  3. A confirmation message will appear. Click OK.

This will permanently remove both the Subject and Message text, effectively disabling the Task Notification email for that step.

If you have customized your task notification Subject and Message fields, and only want to temporarily disable notifications (such as for testing) we recommend copying the Subject and Message fields to a text editor so that you do not have to configure them from scratch later. 

Messages

Setup Task Information, Pending Messages and History Messages on the Messages tab. If you created your workflow using the Workflow Design Wizard, the Messages are preset for you. You can further customize them by entering the static text and/or templatized fields from your form. Click the down arrow or type an opening curly brace /{ and the first few letters of your control name to show a list of templatized fields from your workflow, workflow/special templates provided by frevvo and Task Templates that you can use in the messages.

Task Information

When a user saves a partially filled workflow to continue it later or is assigned a step of a workflow, the task is accessed via the task list. Task Information controls the text that gets displayed in the user's task list. For more details, see the Using the Task List. This information gives the user(s) more details about the task that is waiting on their Task List. It also helps you to quickly find a particular task if you have a lot of tasks on your Task List.

This field can use templatized strings for dynamic content, e.g. the Task Info can contain "Vacation Request for {FirstName} {LastName}" where FirstName and LastName are the names of fields in a form from a prior step in the workflow. Before putting the task on a user's task list, frevvo will resolve the Task Info string using the actual values of the FirstName and LastName fields e.g. "Vacation Request for Tom Smith". frevvo will truncate the Task Info data to 250 characters.

You access your Task List from your projects home page or from a frevvo portal. You use the Task list to perform tasks assigned to you, to view a task's history, or search for tasks you've participated in — a tenant admin can also search for other users' tasks.

If the Task Information is the same for all the steps of your workflow, you can set it up on the workflow level. If you want the Task Info to show something different on a workflow step, select the step, select the Messages tab and customize the Task Information message. The Task Information on individual workflow steps overrides the default Task Info for the workflow for this step only.

Pending Message

Use this property to display different customized messages for each step of your workflow. Pending messages can be set up at the workflow or workflow step level. Workflow step settings override the default workflow level setting so that you can display different messages to the users submitting each step of the workflow. Templates can be used in the messages to provide dynamic content. The Pending Message is best explained with an example.

 Click here for a Pending Message example.

Let's say you have a 3 step Expense Report workflow.

  1. Step 1 (the Expense Report) is filled in by the employee. It has fields that collect the user's ManagerID and Manager Name. When the employee submits the Expense Report, we want the employee to see the message "Your request has been sent to Jerry Jones". We can make the manager's name in this text dynamic using the template {ManagerName} and use the name entered in the ManagerName field in Step 1.
  2. Step 2 is performed by the employee's manager who approves or rejects the report. When the manager approves the report and clicks submit, we want to display the message "The Expense Report has been sent to Payroll for processing" to the manager.
  3. Step 3 is performed by an employee in the payroll department who processes the Expense Report for payment.

To understand where you type in the text for your messages to get them to display when you want them to, think of the Pending Message property as the message that is displayed when users try to access workflow steps. In our example, when the employee submits Step 1, the workflow moves to Step 2, the manager approval step. The Pending Message configured on Step 2, "Your request has been sent to {Manager name}", is shown to the employee instead of the Step 2 form. When the manager approves the Expense Report and submits Step 2, the Pending Message configured on Step 3, "The Expense Report has been sent to Payroll for processing", is displayed to the manager when the workflow moves to the Payroll department employees instead of the Step 3 form.

To set up the Pending messages discussed in our example, follow these steps:

  1. Click on the first workflow step to display the Properties Wizard.
    1. The Pending Message for Step 1 displays the default - "Your request is being processed"
    2. A Pending message set up on the first step of a workflow is only displayed if there is an assignment on the first step. This feature is useful for auto-starting workflows programmatically. Leave the default Pending Message or leave this field blank on the first step if you are not using this feature.

  2. Click on Step 2 of your workflow - in our example this is the Manager step. Notice that the Step Properties Wizard stays on the Messages tab, but the step name above the tabs changes to Manager.

    1. Type "Your request has been sent to {ManagerName}" into the Pending Message field. The employee will see this message when he/she submits Step 1.

  3. Click on Step 3 of your workflow - in our example this is the Payroll step. Notice that the Step Properties Wizard stays on the Messages tab, but the step name above the tabs changes to Payroll.
    1. Type "The {flow.name} has been sent to Finance for processing." without the quotes into the Pending Message field. The manager will see this message after clicking Submit on Step 2.

  4. Save the workflow.

If you want to display a custom message such as "Expense Report Processing is complete." after the Finance user clicks the Finish button, use the Workflow Properties Message tab for the workflow. 

History Message

You can use the History Message property to configure the information that appears in the audit trail for each step. Type a message e.g. {EFullName} requested leave starting {StartDate} for {NumberOfDays} days in the History Message field.  At runtime, frevvo will resolve this message using the data from the form and save it in the audit trail. The names in the {} must exactly match the names of the respective controls.

 Click here for an example

Let's say you had a workflow for Technical Support Problem reporting that has 3 steps: Issue, Action and Resolution. Step 1 is filled in by the user reporting the problem. Step 2 can be handled by any one of a number of employees with the role SupportStaff. Once the issue is resolved the workflow navigates to the Documentation department to write an FAQ about the problem resolution.

Adding history messages to all the workflow steps puts an entry in the Audit Trail that will indicate the actions taken by the reporting user, individual support team and documentation team members.

This workflow uses the frevvo feature Save to Role and records information in the Audit Trail for each step using the History Message property.

  • Step 1 of the workflow has a control where the user fills in the details of the issue. The name of the field is TSDetails. This field is entered as a control template so the text entered here shows as the History Message for this step.
  • Step 2 of the workflow has a Repeat control that includes a Textarea control named Comments. Step 2 becomes a task for all the users with the role of SupportStaff. The first Support person to perform the task enters their comment in the Comments field then clicks Save. The task is then returned to all the Support Staff users Task List. The second Support person to perform the task clicks the Plus icon and enters their comments in the second Comments box then clicks Save. The task returns to the Support Staff Task Lists and the comments are added as described for each Support person that works on the task. This step has a business rule that copies the latest comment in the Comments field to a control named LatestComment. This field is entered as a control template so the text entered here shows as the History Message for this step.
  • When the issue is resolved, the workflow advances to all the users on the Documentation team so they can write an FAQ about the solution. The History Message for the Resolution step will always be "Issue Resolved and FAQ written".
  • The Audit Trail displays the configured History Message with text entered in the form.



Use the Save on Navigation feature and the history message to log a new submission entry in the Audit Trail every time the workflow navigates to a new step, even if the current user has permissions required to immediately execute that step.

Configure a History Message on the step before the task to be performed by the anonymous user, if you want to see relevant information in the audit trail. The History Message can be templatized so you can see the email address of the recipient.

Rejection

Use the Rejection tab to:

  • Specify if a user can reject a step in a workflow or if the step can be rejected to by other users or both.
  • Customize the Reject button label on workflow steps that are configured to show one.
  • Customize the Subject and Message for the email users receive when a task is rejected.

  1. Click on any step to display the Step Properties Wizard and then select the Rejection tab.
  2. Check Reject to Here if the workflow may be rejected/reset TO this step.
  3. Check Reject from Here if the workflow may be rejected/reset FROM this step.
  4. If Reject from Here is checked, fields to customize the rejection email will be enabled.

Click  Save to save your changes and continue working.

Rejecting a Workflow

There are three types of rejection scenarios for frevvo workflows:

  • Reject to Revise - The form is sent back to a prior workflow step for correction/more information. The Reject to Revise (Easy Reject) feature is described below and is built into frevvo.
  • Submit as Disapproved - When a user disapproves the request from an Approval control, the workflow skips all subsequent steps and completes. A submission is saved into the Submission Repository. You may want to implement some custom business rules that run when the "disapprove" option is selected, such as display a message to communicate the status to the user. 
  • Abort a Task - Crumple the form up and toss it into the trash can. Only the Tenant Admin, users who have been granted the Workflow Admin privilege for the workflow, and the designer who created the workflow have the capability to abort a workflow task. When a task is aborted, all subsequent workflow steps are skipped and the form is not saved in the Submission Repository. The Abort feature is built into frevvo.

Reject to Revise (Easy Reject)

Steps in a workflow that are routed to different non-admin users other than the person originally performing the step can be rejected (sent back) to a previous step by clicking on the Reject button. The designer can specify which steps display a Reject button and the steps the reject button can reset to. To take full advantage of this feature, make sure email is selected as the notification method for participating users. On Premise customers should also make sure email is correctly configured. When a task is rejected, the user to whom it is sent back receives an email informing them of the reason for the rejection. The subject and message of the email contain default content that can be customized. The History Message is set to the specified reason provided by the person rejecting the task.

Users designated as workflow admins can reject a task using the Reject button (if configured) or the Modify Task icon to reject workflow steps.

Rejecting to a step that has a signed section will clear the signature on that section, requiring the user to re-sign before submitting that step again.

Configure the Reject button

To configure the Reject button on a step of a workflow, follow these steps:

  1. Click on the step in your workflow where you want to configure the Rejection feature and select the Rejection tab.
  2. The Reject to Here checkbox is checked by default. Leave it checked if the workflow can be rejected/reset to this step. Check Reject to Here if the workflow may be rejected/reset TO this step. This
  3. The Reject From Here checkbox is checked by default. Leave it checked if the workflow can be rejected/reset from this step.
  4. If Reject from Here is checked, you can customize the Reject button label and the Rejection email. You can use a template to set dynamic text using controls in your workflow.

    Clicking on the down arrow shows a list of templatized fields from your workflow, workflow/special templates provided by frevvo and Task Templates that you can use in the rejection email Subject and Message. Type the opening curly brace - {- followed by the control name to enter a field from your workflow as a template. Selecting an option enters the control name into the field with the closing curly brace

  5. Repeat these steps for each step of your workflow. Click  Save to save your changes and continue working.



Configuring a Reject button on the first step of a workflow or for the steps in a multipage form/screenflow (steps fill out by the same user) serves no purpose. It is possible to reject to a step with a precondition, provided that step was executed and the precondition still holds.

When a user clicks the reject button, an embedded rejection page replaces the task form on the right side of the task list. This will happen on desktop or mobile devices. To reject a task, the user selects the user/step that they want to send the workflow back to from the To dropdown. and provides a reason for the rejection. Note the list contains prior workflow steps and the first and last names of the users who performed them. 

If a task is accessed from an email that uses the task.perform.url, the user will be taken directly to the task. If the task is then rejected on the desktop, the display rejection popup displays instead of the embedded rejection page.

 Click here to see an example

 Imagine a Time Sheet workflow with three steps:

  • Step 1 - Time Sheet - this is filled in by the employee
  • Step 2 - Manager Approval - the Time Sheet is approved by the employee's manager or rejected back to the employee for correction.
  • Step3 - Finance step - this step is performed by any member of the Finance department. The user must have the role of Finance. The workflow can be rejected back back to the manager or employee for corrections from this step.

Configure the Rejection feature as shown in the image:

Employee (Step 1) - Only Reject to Here is checked. This is the first step and it will not have a Reject button since there are no previous steps to reject to.

Manager Review (Step 2) - Reject to Here and Reject from Here are checked. The Manager can reject the workflow back to the Employee, and the Payment step user can reject the workflow back to the Manager or the Employee. The Reject button label is customized to "Return for Corrections."

Payment (Step 3) - Only Reject from Here is checked. The user who performs this step can reject the workflow back to the Manager or the Employee. The Reject button label is customized to "Return for Corrections." This is the last step of the workflow, so there are no steps that can reject back to Payment.

Configuring Reject for Steps performed by Anonymous Users

Tasks assigned to an Email Address can be rejected from and rejected to, just like any step is the workflow performed by a logged-in user.

Let's say you have a Purchase Order workflow where the PO is sent to the customer for signature. The designer can configure a Reject button on this step (anonymous) so that the customer can send the PO back to the sender for corrections before signing.

Subsequent workflow steps can be configured to Reject the task back to the customer, if necessary.

Configuring Reject for Screenflows

Steps performed by the same user in a workflow are referred to as a screenflow. The steps of the screenflow are considered one task. The reject functionality will allow users to reject only to the beginning of that screenflow. You cannot reject back to steps after step 1 in the screenflow.

Steps performed by the same user that are separated by Anonymous Task steps are considered to be separate workflow tasks. For example, consider a Purchase Order workflow with the following navigation: Step 1 is performed by Sales employee > Step 2 is sent to the customer's Email Address (Anonymous user) > Step 3 is performed by the same Sales employee that performed Step 1. You can configure a Reject button on the Sales step that will show both steps as rejection targets even though Step 1 and 4 were performed by the same user. Refer to the Workflow Tutorial for an example.

Customize the Rejection Email

It is possible to customize the subject and email message body that is sent when a workflow task is rejected. You will configure this email on the step you are rejecting from. The customized rejection email will be sent when the Reject button is clicked on that workflow step or Quick Approval screen.

You can choose controls from your form which will be added to the Message as templates or you can use built-in templates as described below. Click on thedown arrow shows the list.

  •  {flow.name} - Name of the workflow
  •  {subject.first.name} - First name of the user who rejected the task.

  •  {subject.last.name} - First name of the user who rejected the task.

  •  {flow.activity.name} - The step of the workflow that was being performed when the task was rejected.

  •  {flow.activity.reject.reason} - The reason for the rejection.

  •  {task.perform.url} - The URL to the rejected task.

Here is the default rejection subject and message. Notice the use of built-in templates to pull the following information into the email:

Subject: You have a new task for {flow.name}
Message: <p>This workflow was rejected back to you for further action.</p><p>The workflow was rejected by {subject.first.name} {subject.last.name} at step: {flow.activity.name}. The reason was: {flow.activity.reject.reason}.</p><p>You can access this task at <a href="{task.perform.url}">this link.</a></p>

In-house customers can modify the default subject and message values by changing the text in the frevvo frevvo-config.properties file. Click here for the details.

Click here for an example showing how the Easy Reject feature works.

The "from" email for a rejection is the tenant "from" email. If no tenant "from" email is set, this will default to the admin user's email address.

Submit as Disapproved (Reject to Discard)

Most often, steps in an Approval workflow can have one of three possible outcomes. They can be:

  • Approved
  • Sent back to a previous step for corrections/more information (Reject to Revise)
  • Disapproved and terminated (Submit as Disapproved)

In the third case, where any approval step that is disapproved should terminate the workflow, we recommend the Submit as Disapproved workflow pattern. This is also known as "Reject to Discard" but it is important to note that this scenario does not use the Rejection feature. Rather, it uses Preconditions to skip the remaining steps in the workflow and submit it. Let's say you have a three-step workflow:

  1. User fills out a form
  2. Manager approves or disapproves
  3. VP approves or disapproves 

If the Manager disapproves, you don't want the VP to even see the workflow; you simply want to discard it. To do this, you will set a Precondition on the VP step to only perform that step if the Manager has approved (click the link below for step-by-step instructions). Often you will use a Radio control to indicate Approved/Disapproved. The workflow will now route as follows:

  1. User fills out a form
  2. Manager can 
    1. Approve and send to VP
    2. Reject and return to User for more info
    3. Disapprove and skip VP step, submitting the workflow at this point.
  3. (if Manager approved) VP approves/disapproves and submits the workflow.

When you use the Submit as Disapproved scenario, you will still have a submission for the workflow, and Workflow Document Actions will run. Activity Doc Actions on skipped steps will not run. Many customers choose to configure Document Actions, such as email, with templatized strings in the To address, subject and message, in conjunction with business rules that set those control values, so that the message sent will be different depending on whether the steps were approved or disapproved. Here is an example of conditionally sending a Workflow Doc Action email. You may also choose to set the control that indicates approval/disapproval as a Searchable Field, so that you can easily view it in the Submission table and filter submissions by that field.

 Click here to see how to implement Submit as Disapproved for the above example.

Follow these steps to implement Submit as Disapproved:

  1. Create an approval section with a Radio button in Step 2 of the workflow. Note the name of the Manager Approval control. In this example, the control where the Manager selects "Yes or No" to approve/reject is named mgrApp.


  2. Add a Precondition on between Step 2 (Manager Approval) and Step 3 (VP Approval) so that it only executes when the Manager selects "Yes" in the Approval control in Step 2. When the Manager selects "No"  Step 3 will be skipped and the workflow completes.


  3. Use the Visual Rule Builder to write any Business Rules needed for behaviors after the Reject to Discard selection is made. For example, a business rule to show a message to the Manager explaining the workflow status, when "no" is selected and to hide the message if the Manager selects "yes" to approve the request.