Designers OverviewLast Updated: 08/01/2016 Introduced in Verision: 2.0
The platform contains designers for forms, flows, pages, reports, text merges, and rules. Designers allow users to create and customize entities to build an application to meet a business need.
Most of the designers contain a workspace, onto which a user drags components to build an entity. There are many components to choose from; so many that a search field appears in the Toolbox panel to locate components. Examples include components to build a flow; buttons, text boxes, and labels for building forms and pages; and data sources and columns for reports.
Once you add a component to the workspace, select it and change its properties in the Properties panel, where you can set values for the component’s appearance and behavior. Depending on the designer, you may also map objects, designate input data, or select folder or report sources for components.
With the advent of Decisions 3.5, in our ongoing effort to convert the platform from Microsoft Silverlight to HTML5, the Designers have been moved to Decisions Studio. See this article for more about Studio.
Using the Form Designer, you can create and customize a form to allow a user to perform an action, such as enter information, run a flow, or request approval. Forms can also display data.
When creating a form, you can start from scratch, base it on an existing form, or build it from a template. The platform includes templates for Approval, Contact Details, Review and more.
In the Form Designer, the Toolbox contains all the components to build a form. Use the search bar at the top of the Toolbox to locate a form control. Drag it to the workspace to build the form’s layout.
Depending on the control, you can customize its size, appearance, and behavior. The platform offers standard controls, such as buttons and drop-down lists, as well.
A Flow is a diagram of interconnected components that sequentially execute steps to accomplish a task. Almost all steps result in an outcome, such as true or false, and most output some type of data. Outcomes in a flow are represented as arrows that connect components together. These outcome paths determine the direction of a flow which can be built in the Flow Designer.
Every flow begins with a Start Step and ends with at least one End Step. Between these two steps, flows can be built with unlimited size and complexity, and can even be nested within one-another as sub-flows. Many common or complex tasks have dedicated components already designed for use in a flow, and they can be found in the Toolbox panel of the Flow Designer.
Almost all flow components collect some kind of input data and generate output data. As a flow progresses, each subsequent step has access to all of the outputs created in the steps preceding it.
To ensure maximum flexibility, all inputs and outputs can also be recreated, rebuilt and transformed before and after the component is executed through the use of mappings.
Just as with forms, you can create a flow from scratch, from an existing flow, or from a template. Templates include items such as Base Notification, Create Task, and Validation.
The Flow Designer also allows you to map the inputs and outputs for a step using the Mapping Editor.
Again, you can create a page from scratch, from an existing page, or from a template.
The Page Designer shares the same basic layout as the Form Designer, with a Toolbox panel, Properties panel, and Explorer panel. To alter the layout properties of a page, in the Explorer panel, select Surface, and make changes in the Properties panel.
Drag a filter to the Filters list to filter report data.
Drag the components to the Results tab to create and populate the report columns.
To further customize the report, click the arrow next to a column header and select Edit. You can group report data by the column, which allows you to display the report as a chart.
Once saved, a report can be exported in HTML, .pdf or .xls formats.
A Rule evaluates Input Data to determine whether the data matches certain conditions. The Rule returns the outcome, then passes this information to a flow, form, or report. This outcome may direct which path a Flow follows, or which controls display on a form, or how certain values in a report are formatted.
Truth Tables are Rules that compare the possible combinations of multiple inputs, allowing the user to arrive at different outcomes depending on the specific combination. A Truth Table can output a piece of data, or take action by calling a Flow.
Rules are built in the Rule Designer. Navigate to a Designer Folder and click the Create Rule button, and select Create Rule to create a Rule (Create Truth Table to build a Truth Table).
In the resulting window we Name the Rule and click Create to proceed to the Rule Designer.
Start Rule window is presented when Rule Designer opens. In this window we can click Add New Rule Step or Add Either / Or Group to start building Rule Condition.
Also, in the Rule Data section we can Add Rule Input Data. This data can come in from the Flow where this Rule will be used. Next, this Data can be used in the Rule conditions as variables.
In the Output section we can set up Rule Behavior Type (Default Rule Behavior, Form Rule, Rule Engine Extension) and Rule Type (Logical Rule, Data Return Rule (Single), Action Rule, Data Return (Multiple)).
On the right-hand side of the Rule Designer we can find a panel with more Rule Settings.
Here we can set up a Name for our Rule.
Next, in the Enabled section we have following options:
- Enabled checkbox: to manually Enable/Disable Rule.
- Use Enabled Rules: to build Rules that will be evaluated to determine if this Rule should be Enabled or Disabled.
- Set up Dates between this Rule will be Enabled.
In the Service Settings we can Enable/Disable Calling this Rule via REST API Calls or Creating Service.
To start building our Rule we can either click Add New Rule Step (Add Either / Or Group) button on the Start Rule window or click Add link on the work-space and choose to Add Condition or Add ‘And If Either/Or’ Group.
Next, in the Resulting window we pick Data that we are going to evaluate this Rule against. In most cases this would be Rule Input Data. Click Next when Data is picked.
In the following window we pick Verb for our condition. Based on Data type picked in the previous window this List of Verbs is subject to change.
In the final window we define Value that Data picked in the first window is going to be evaluated against. Then, click Done.
In the resulting window we have several options:
- Close window
- Delete Rule Phrase
- Add New Rule Step
- Add Either/Or Group
There are couple Tabs at the top-left corner of the Rule Designer we can switch between: Statement View (Default), and Graph View (Graph representation of our Rule). Also, top panel of the Rule Designer has several Utilities:
- Save Rule
- Close Rule
- Create Checkpoint
- View Integration Details
- Test Rule
- Unit Test
Next, we are going to overview Truth Table Designer as a part of the Rule Designer.
To create Truth Table in the Designer Folder we click Create Rule > Create Truth Table on the Folder Actions Panel.
In the resulting window we Name Truth Table and click Create to proceed to the Rule Designer.
As we can see our Rule Designer is slightly different for Truth Table. On the right-hand panel we can see some additional settings like Output Type and Outcome Data (Default).
Work-space has the only one view – Truth Table View.
Rule is represented as a Table where we can add Conditions at the top (Predicate and Verb), and then define Nouns as Rows of the Truth Table along with expected Results (Outcome Data).
For Example, we click on [no anchor data] link at the top of the Truth Table and pick Predicate for the Condition.
Then, we click [n/a] link to pick the Verb for the Condition.
Underneath the Condition Definition (first row) we define Noun.
In the Result section for this Row we define expected Outcome if this condition evaluates as True.
By Adding Row to the Truth Table we can define another Noun with expected Result.
Our example Truth Table reads: If Initiating User Email contains ‘admin’, then output Truth; If Initiating User Email contains ‘other’, then output False.