Overview of Visual Workflow building blocks

The flow has three major building blocks known as Element, Connector, and Resource. With the help of these three, you can easily develop a flow:

Overview of Visual Workflow building blocks

Element represents an action that the flow can execute, such as update records, delete records, or loop logic. It is basically used to manipulate data. Connector is used to establish the path between the elements so that the flow can take at runtime. Resources are used to hold the data that you can reference in your flow.

Flow elements

Flow elements represent an action that a flow can execute, which are illustrated as Record update, Record lookup, Fast Lookup, Loop, Screen, and Decision. They are used to read, update, or delete Salesforce data. Using element (the Screen element), you can also display data or capture input from users. Using the drag and drop function from the Palette tab, you can add a new element to your canvas, as follows:

Flow element

Description

Step

You can use this as a placeholder while designing your flow. Later, you can convert Step elements into Screen elements.

Screen

This will display a screen to the user who is running the flow. This screen contains Input or Output fields. It is mainly used to take input from users or display guided information.

Decision

This is used to evaluate the conditions that determine which flow path to take.

Assignment

This is used to set or change values in variables, collection variables, sObject variables, and sObject collection variables.

Loop

This iterates through an sObject collection variable and assigns an item's value to an sObject variable.

Wait

If you want your flow to wait for one or more defined events to occur, then use this element.

Record create

This is used to create one record using field values that you specify separately. You can assign these values from flow resources, such as variables, the sObject variable, and screen fields.

Record update

This is used to update records using field values that you specify separately. You can assign these values from flow resources, such as variables, the sObject variable, and screen fields.

Record Lookup

This is used to extract one record that meets the filter criteria you specify and then assign its field values to separate, individual flow variables or individual fields on sObject variables.

Record Delete

This is used to delete records from Salesforce that meet the filter criteria you specify in your flow.

Fast Create

This is used to create records using the field value from an sObject collection variable; alternatively, it is used to create one record using the field value from an sObject variable.

Fast Update

This is used to update records using the field value from an sObject collection variable or to update one record using the field value from an sObject variable.

Fast Lookup

This is used to extract records to assign their field values to an sObject collection variable or to query one record to assign its field values to an sObject variable.

Fast Delete

This is used to delete records using the ID value from an sObject collection variable or to delete one record by using an ID value from an sObject variable.

Apex Plug-in

This is used to call an Apex class that implements the Process.Plugin interface. If you use the tag property in the PluginDescribeResult class, the Apex class will appear under a customized section. Otherwise, it will appear under the Apex plug-in section.

Subflow

This is used to invoke another flow in the organization.

Other action

This is to call an object-specific or global action, such as NewTask, LogACall, and so on.

Email Alerts

This is used to send an e-mail by using a workflow e-mail alert specifying the e-mail template and recipients.

Post to Chatter

Using this element, you can post a message to the feed for a specific record, user, or Chatter group.

Send Email

This is used to sends an e-mail by using the flow to specify the subject, body, and recipients.

Submit for Approval

This is used to auto-submit one record for approval.

Flow resources

Resources are used to hold data that you can reference in your flow. The Explorer tab displays the resources that you had added to the flow. To create a new resource, double-click on it. Global constants and system variables are automatically provided by the system. There are several types of resources available under the Resource tab. They are as follows:

Flow resource

Description

Variable

This is used to store a value that can be updated as the flow is executed. It can be referenced throughout the flow and can be used as the value of a field in a record.

Global Variable

These are system-provided variables that can be referenced as resources, such as to know organization ID ({!$Organization.Id}) or running user Id ({!$User.Id}). Visual Workflow global variables are only available in flow formulae. 

Collection Variable

This is used to store values with a single data type. You can use a collection variable as a container in the flow to store and reference multiple values at once.

SObject Variable

This is used to store a record for a specified object. Use an sObject variable as a container in the flow to store, update, and reference the field values for a record.

SObject Collection Variable

This is used to store multiple records for a specified object. Use an sObject collection variable as a container in the flow to store, update, and reference field values for multiple records.

Constant

This is used to store a fixed value.

Formula

This is used to calculate a value from other resources in the flow.

Text Templates

This is used to store formatted text with merge fields that reference flow resources.

Choice

This represents an individual value that can be used in choice screen fields.

Dynamic record choice

This looks up data from an object's record and dynamically generates a set of choices for screen fields at runtime. When referenced as a resource, a dynamic choice value is determined by the most recent user selection of a choice within the generated set. Let's take an example, display all contacts from an account if a user entered a valid account ID.

Element

Any element that you add to the flow is available as a resource with the visited operator in outcome criteria. An element is considered visited if the element has already been executed in the flow interview.

Global Constant

This is used to store fixed system-provided values, such as EmptyString, True, and False, which can be assigned as the values of flow resources.

Outcome

For the Decision element you have added to the flow, its outcomes are available as Boolean resources. If an outcome path has already been executed in the flow interview, the resource's value is True.

Picklist Values

These are system-provided values that are available as resources only in the Assignment and Decision elements when selecting values for or to comparing against picklist fields in sObject variables.

Picklist Choice

This is used to store picklist or multi-select picklist values, those are generated from standard or custom object picklist or multi-select picklist field. 

Screen Field

This means the field that you add to the flow is available as a resource.

System Variable

These are system-provided values that can be referenced as resources, such as {!$Flow.CurrentDate}, {!$Flow.CurrentDateTime}, and {!$Flow.FaultMessage}.

Wait

Wait element events are always available as Boolean resources. If an event's waiting conditions are met, the resource's value is True. If the event has no waiting conditions set, the resource's value is always True.

Flow connectors

A connector is used to establish the path between the elements so that the flow can happen at runtime. It looks like an arrow that points from one element to another. There are several types of connectors available, as follows:

Label

Sample

Description

Unlabeled

Flow connectors

This is used to identify which element to execute next.

Decision outcome name

Flow connectors

This is used to identify which element to execute when the criteria of a decision outcome is met.

Wait event name

Flow connectors

This is used to identify which element to execute when an event that's defined in a Wait element occurs.

Fault

Flow connectors

This is used to identify which element to execute if the previous element results in an error.

Next element

Flow connectors

This is used to identify the first element to execute for each iterations of a Loop element.

End of loop

Flow connectors

This is used to identify which element to execute after a Loop element finishes iterating through a collection.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.119.157.39