3.04 Drag and Drop Configuration
What are Drag Types and Drop Targets?
Drag and drop actions allow users to click and drag an item from location to another within a screen. This allows users to intuitively interact with content, rearrange items, and trigger further actions by dropping onto a designated area. Some examples of drag and drop actions are:
Dragging a record from a grid onto a delete area to remove it
Dragging a contact from a grid onto a specific company on a company table to move that contact to that company
Dragging items into different sections on a Kanban board to change the state of the record - see Making Kanban Boards
How are Drag Types and Drop Targets Configured?
To set up drag and drop on components, a
grids
cards
Any component which has an
For example, to assign a new company to an employee, a user creates two grids on a screen. The employee and company table have a relationship and are linked by a CompanyIDfield. The employee can be dragged and dropped onto a company to update CompanyID attribute for the employee.
Creating Drag and Drop Actions
Creating a Drag Type
Right-click on the grid and select
on the component from which data will be draggedOn the
, in the Action Settings section, under Drag Type, select or create a drag type, e.g.Move ContactIf creating a Drag Type, click the
buttonName: Enter a name for the drag type
Attributes: create the attributes to be used in the Actionflow, e.g. CompanyID
A Drag Mappings section will become available in the Action Settings
Click the
buttonMap across attributes from the table onto the
attributes set above, to be used within the Actionflow
Components with a drag type can be dragged and dropped onto any component which has a drop target with a matching drag type.
Creating a Drop Target
Click on the component where data will be dropped to open the
On the
, in the Drop Targets section, select or create a drop target, e.g.Add ContactIf creating a Drop Target, click the
buttonName: Enter a name for the drop target
Drag Type: Select the drag type (e.g. Move Contact) that matches the drag type set on the component being dragged
Drop Action: Select
Actionflow: Select or create an Actionflow to run when a component with a matching drag type is dropped onto this component
If creating an
, select theas the anMap in the attribute(s) created on the
Then configure your Actionflow as required, e.g. delete a record, move that contact to a company, change the state of the record, etc.
Worked Examples
Here's a worked example using the Company Data (available from the Learning Centre).
In this example, we are using:
A Company Approval Review screen containing:
a grid backed by the Companies table
with a Background Filter to only companies where their Status does not equal Approved or Rejected
two areas containing Approve and Reject icons - this screen was created using the Multi-Tile template
If you are completing this chapter as part of the Actionflow course and using a training instance, the data and screens have already been pre-loaded into the Actionflow Advanced Application. For this example, we'll be working on the Company Approval Review screen.
Example 1: Approve Company Using Drag and Drop
In this example, we'll configure company records on a grid to be draggable, and set up an area on a screen as a drop target to receive the record(s). When a company is dropped in the area, its Status will be updated to Approved. We'll add some additional processing to our Actionflow to update the audit details on the record, showing who made the change, along with the date and time.
Drag Type Setup
Open the Company Approval Review screen by clicking on the Approvals button in the top menu
Right-click on the Companies Pending Review grid and select
Click the
In the Action Settings section, click the
icon next toto create a new drag type:Name:
CompanyClick
Attributes: select
Name:
CompanyIDType:
Integer
- the Drag Type tab
A Drag Mappings section will become available in the Action Settings on the View
Click the
buttonMap across the CompanyID attribute from the Companies
to theClick Confirm Mappings
- the View