’ flow palette contains all of the forms you have already created in the Forms tab of the application you are currently editing. These forms are available for you to add as steps of the flow. The palette also contains a new form which lets you create a new form step directly within the flow designer. Additional activity types for flow steps are Summary, HTTP and Email. The purpose of each is described below.
On This Page:
New Form
Consider going back to the Forms tab to create any new form steps required in your flow. Forms created in the Forms tab are reusable whereas forms created in the flow designer are not reusable.
The New Form palette control allows you to create a new form step in your workflow directly inside the flow designer. If you do not have an existing form for the step you require, drag & drop the New Form into your flow and create the step in place. This will launch the form designer where you can add controls to the form just as you would if you designed the form from the Forms Home page.
Drop the New Form from the palette into the flow. Click to select it. Then click the pencil icon to launch the form designer. A unique and arbitrary name will be generated automatically for the step--Form 29 for example. You'll change this name inside the form designer.
Existing Forms
Consider going back to the Forms tab to edit the form. Then delete the old form from the flow designer canvas and add it back to the flow from the flow palette.
The palette contains all of the forms that you have already created and which are listed in your current application's forms home page. You can use any form as a step in the flow. Adding an existing form to the flow creates a copy of that form. If you later edit the form from the forms home page, those changes will not affect the step in the flow. It remains as it was at the time you copied it into the flow. If you want to update the flow to have a new copy of the form, delete the form from the flow and drag it in again. You can also edit the form directly in the flow. Conversely these changes to the form inside the flow do not affect the original form in the form home page.
Summary
Drag a Summary step anywhere in your flow. This will simply display a Summary view of all the data that has been entered into the various steps of the flow prior to the Summary step. Previously completed activities in a workflow can be viewed by all users but editing data is only allowed for the currently logged in user. Clicking on the Details button navigates to the selected activity for viewing/editing. Refer to Flow Processing Modes for more information.
HTTP
HTTP Wait-Notify is a new type of activity that can be added to a flow. It is configured with a post url. The flow data is posted to this url when the task is executed. A call back url is included in the post. The flow and task are suspended until the receiver posts back. Y
The timezone must be added programmatically by the service you are using. HTTP activities can be performed by an anonymous user.
Let’s consider this scenario. Your company has a purchase process workflow. One of the steps in the workflow requires approval from several other approvers before the flow can continue to the next step. These approvals should happen in parallel and not one after the other. A web component that would manage those approvals is in place. An HTTP Wait-Notify can be added to the Live forms flow with a URL to the web component to collect the signatures. The callback URL will be included in that post. The flow will be suspended until all the signatures are collected. The remote web component will notify the Live Form flow using the callback URL when the signature task is completed. If the HTTP step in the flow has doc actions configured, they will be performed and the flow will proceed to the next step.
Now let’s take a look at a simple flow that will accomplish the scenario described above. This flow contains the Purchase Request form submitted by the company purchasing manager as the first activity, followed by an HTTP activity which provides the url to the web component that handles collecting the signatures from all the required approvers, followed by a Summary activity. Remember the flow will be suspended until all the approval signatures have been collected by the web component. The web program will then use the callback url to proceed to the Summary step of the flow.
To set up the HTTP URL, click on the HTTP activity and enter the URL for your post. In the image below, we are entering the URL to a remote test server running a service that can be used to test this feature: http://localhost:8082/services/testwaitnotify
10:14:13.071 |-INFO [http-nio-8080-exec-2] [ c.f.f.s.FlowService] - HttpWaitNotify: POSTing to http://localhost:8080/services/testwaitnotify Jun 21, 2013 10:14:13 AM org.apache.catalina.core.StandardWrapperValve invoke INFO: TestHttpWaitNotifyServlet: notify URL is: http://localhost:8080/frevvo/web/tn/willstenant/user/designer/app/_fZMUEK5vEeKl1rJ0IEAosw/flowtype/_pJUvcMFJEeKKR-e9RKn4zg/notify?embed=true&_method=POST&nextActivityTypeId=next&locale=eng&_method=post&embed=true&_submission=4a3850a2-4c62-4a1b-b2e1-f50bba6547c8
When the first activity in the flow is submitted, you will see an outbound message in the frevvo log similar to the one shown below:
Notice the latter portion of the entry contains the call back URL
This URL is generated by the frevvo server and will point to whatever host/port the frevvo server is accessed on. If the frevvo.forms.server.external.url parameter in config.properties or web.xml is set, it will always use the value of that property.
This URL is used by the remote service to “wake” up the Live Forms flow. Any document actions configured will be performed and the Live Forms flow will resume. Flow visibility must be set to public.
You cannot reset a flow to an HTTP activity. There is a new flow status, WAITING, that you can use to find activities in a flow that is in a suspended state.
If navigation is used to go to previous activity, the HTTP activity will be skipped. In this case if a user who has navigated back, makes some changes in a form and proceeds forward through the flow, the backend system will not have updated data. If you use the HTTP activity, it is important to realize that it will not get called again if the user navigates around. The designer may not want to have the navigation bar visible or prior steps' data should be read-only. The HTTP activity will get recalled if you reset to a prior step and the flow continues through it's normal steps.
Configure a History Message on the activity before the HTTP activity if you want to see relevant information in the audit trail.
HTTP activities can be performed by an anonymous user.
Many business scenarios require a step in the workflow to be performed by a person who is not an authenticated user - someone who is not logged into .
The email activity allows the design of a flow where some steps are performed by authenticated users/roles and other steps are performed by an anonymous user. The anonymous user receives an email, clicks on a link in the email and accesses the task without being authenticated, performs the anonymous step, clicks continue, and the flow is routed back to an internal, authenticated user. The Email activity suspends the flow (saves the flow to the database), sends an email to the specified email address with a back link. The email recipient clicks the link and the flow renders even though he/she is not logged in.
A typical situation is an employee who submits a request to an outside vendor for a quote, which then needs to be approved by the employee's manager. The second step of the flow sends an email to the vendor, the flow is suspended until the vendor submits his quote, then the flow continues for the manager's approval. The Vendor Quote Workflow Tutorial consists of step by step instructions to completely build/test a workflow that uses the email activity.
The Vendor Quote workflow, shown in the image, has 4 steps:
- Step 1 is the Vendor Quote request filled in by someone in the company with the employee role. The Employee role was selected from the role list for this step.
- Step 2 of the flow sends an email to the vendor. The Email activity was dragged from the palette and dropped into the flow. This step must have an email address. It can be filled in by the user or populated via a business rule. In this case, the value of the control named VendorEmail will be used to determine the email address to send to. VendorEmail is an example of a template. An email is sent to the email address in the VendorEmail control with the link back to the flow.
- Step 3 is what the vendor sees when the link inside the email is clicked. The step that goes to the anonymous user cannot have a role, dynamic role or user assigned to it. This step is really a section in the main form that is shown only when step 3 is being performed. The Vendor and Manager sections are shown/hidden using a business rule. The flow is suspended until the vendor completes his section. In a future version of , the amount of time the flow remains suspended can be configured.
- Step 4 is the Manager Approval step. After the vendor submits the quote information, the flow proceeds to the manager step and puts the Vendor Quote Task on the Task List of the employee's manager . The manager can approve/reject the quote. If approved, the flow is completed.
Here is what it looks like when the flow is performed:
When the Vendor clicks on the link, the relevant parts of the flow are shown. The notify URL automatically adds the timezone from the browser.
The manager approve/rejects the flow from his Task List. Any configured Form/Doc actions , such as a display message, will execute. If the manager approves the task, the workflow is complete. Note the email step in the flow is greyed out.
Some Tips about Email Activities
Email activities can be performed by an anonymous user.
- An anonymous activity cannot be performed twice. If you click the link again, it will give you an error.
- The anonymous email activity will show up in the navigation bar for other users as usual; you can assign it a decorator but you cannot click on it.
- The task will show up in the Audit Trail in the Waiting state when it is waiting for an anonymous recipient. You can search for it, do all the usual things.
- There is currently no way for an Anonymous recipient to Reject a flow. This will be added in a later release. The workaround is to send it forward to the internal employee for review and that internal employee can reject it all the way back to the first step.
If navigation is used to go to previous activity, the EMail activity will be skipped. It would get recalled if you reset to a prior step and the flow continues thru it's normal flow.
Configure a History Message on the activity before the Email activity if you want to see relevant information in the audit trail. The History Message can be templatized so you can see who the email address of the recipient.
Email Properties
When you drag/drop an Email activity into your flow and click on it, a Properties panel displays. The Name, Pending Message and Decorator properties work exactly like they do on other types of activities. Task Info and Precondition do not apply and if you want to set up a History Message you must do so on the step in your flow that the anonymous user is going to see. Note the envelope decorator to identify the Email activity in the flow.
Activity Doc Actions work exactly like they do on other types of activities.
When you click on the step in your flow that is seen by the anonymous user, a Properties pane displays. Several of these properties, do not apply to a task performed by a non-authenticated person and will have no effect. These properties are: Role List, Role, User, Task Info, CSS class, Preconditon, Save Load, Save to Role, and Save to User and . You can customize the button label, history message and select a decorator for this task that will display on the Navigation toolbar.
The Task Notification Email wizard also works exactly like it does on other types of activities except that the default message content is slightly different. It references {task.notify.url} which is the back link URL that the non-authenticated person clicks in the email to perform their step in the workflow. The designer can customize this message however, if you don't include the {task.notify.url} in your email content, the email recipient will never be able to access the task.
Resetting a Flow with an Email Activity
Consider a flow with the following navigation: Step 1 is performed by an Employee > Step 2 is an Email activity > Step 3 is performed by an Anonymous user > Step 4 is performed by a manager.
- Employee starts flow, email gets sent, the anonymous step is performed and a task is generated for manager.
- A flow cannot be reset to the Email or Anonymous user step. In this example, only a reset to the employee step is allowed.
- The Employee performs the step again and clicks Continue. The Email activity is performed again and another email will go to the anonymous user.
The same behavior applies to a flow with an HTTP activity.
Searching Tasks with an Email Activity
Consider a flow with the following navigation: Step 1 is performed by an Employee > Step 2 is an Email activity > Step 3 is performed by an Anonymous user > Step 4 is performed by a manager.
- The flow has been started and the notification email has been sent.
- The flow is now in the WAITING state.
- The Employee can search for a status of WAITING and reset the flow to a previous step or view the audit trail.
- The tenant admin can search for a status of WAITING, reset the flow to a previous step, abort it or view the Audit trail.
The same behavior applies to a flow with an HTTP activity.
Form Viewer Control
The Form Viewer control is used to allow a generated PDF to be viewed as part of a form activity in a flow. This control only appears on the Forms palette in the flow designer when you click the icon to edit an activity in a flow.