- Watch the video.
- Install – Unmanaged 1.5
- Install – Managed
- Source Code:
This new component surfaces the dual listbox in flow screens. It allows for multiple selection and returns the selected values either as a comma-separated list or (more usefully) as a collection of strings that can be looped over.
This is an installable component and is not the same as the built-in Multiselect Picklist, which looks like this:
Dual Listbox expects two key pieces of data:
- The full set of all of the items that could be selected.
- The current set of items that are selected.
Unlike the Multiselect Picklist, the Dual Listbox does not (yet) directly accept picklist or multiselect picklist field types. It accepts data in two forms: 1) a comma-separated string or 2) a flow resource that’s a collection of strings.
Likewise, you can output the set of selected values as either a comma-separated string or a string collection variable, or both.
If you output the set of selected values as a comma-separated string, you can feed that string variable back into the input to support ‘Previous’ and make sure the selections are remembered when Previous is clicked. At the moment, a bug is preventing Previous support for use cases where you store the selected values in a string collection variable.
Update: July 2019
New attributes have been added to this component. You can now:
- make input required
- specify the minimum and/or maximum selections allowed by the user
- set your own help text
- set the vertical size of the component
- disable reordering of the selected items
These attributes can be set in the “input” section when adding the component to a screen within a flow. If you have previously installed this component as an unmanaged package, you will need to reinstall the package. For any existing implementations, you can edit the component in order to supply values for the new attributes. If you’ve never installed the package, you can get it using the links below: