Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Overview
Actionflows control the interactions users have with your application and its data. They are reusable, which means a single actionflow can be used in multiple places with different inputs.
Actionflows are a graphical means of creating the user functionality for your application and are made up of individual nodes wired together, each performing a specific action, such as opening a screen or saving data.
An actionflow is wired onto a screen(s), or scheduled task, using an event handler, such as a button or double-click:
- Button
- Grid View
- Card Container
Actionflows can be:
- Data interactions (save, delete, and add)
- Scheduled to run at a specific time
- Data calls and calculations
- Screen interactions
- Gateways (decision points)
- API integrations
Actionflow Page Layout
The illustration shows the layout of an actionflow:
Expand | ||
---|---|---|
| ||
1. Toolbar
2. Instance Details
4. Phases 5. Inputs 6. Connection Points 7. Nodes |
Actionflow Record Processing
Records are processed a single record at a time within an Actionflow. To return a block of records a lookup must be used.
Connection Points
Connection Points are the interface "in" and "out" of an actionflow. They define what data is mapped into and out of the actionflow. See Wiring Inputs Into an Actionflow.
Inputs, such as grid data, mouse clicks and scheduled tasks are mapped onto Connection Points. The input/data available to be mapped onto the Connection Points of an actionflow depends on where the instance of the actionflow is being called from. For example, if a screen has a grid of data and a card container, an actionflow on a button which exists on this screen will have access to both sources of data.
To select the source of data click the input box under Connections. Click the image below to enlarge it:
Nodes
Nodes are the building blocks of actionflows, they perform specific tasks and are wired together to make up the overall actionflow.
A Node is represented as a circle with an icon and can be:
- Data interactions, such as save, delete, and add
- Data calls and calculations that connect to data to look-up, use or process records
- Screen interactions which guide a user through a series of tasks in an application, by validating input(s) and / or opening the next screen
- Gateways, which are decision points with logic to determine the path that PhixFlow takes next
- API integrations that call an external API and read its content (see HTTP Node) or provide an incoming API into PhixFlow. See PhixFlow Incoming API
Nodes are added to the canvas by dragging them from the toolbar, or by clicking on a node on the toolbar to display existing items in the repository and dragging these onto the canvas.
For details on the different nodes and how they are used, see Using Actionflow Nodes.
Node Connections and Mappings
Connections link nodes together, and facilitate the mapping of data from the Output Attributes of one node to the Input Parameters of another. All previous node output attributes or inputs to the Connection Point are available for mapping and only attributes mapped into the input parameters of a node can be used by it.
In this way, we create the logical steps needed to complete a specific piece of functionality.
When two nodes are connected the mappings open, this mapping dialogue can also be opened by clicking on the line between two nodes.
To learn more, see Using Actionflow Nodes.Reusing Actionflows
Actionflows can be reused throughout your application. This means you only need to create one actionflow for functionality that occurs on different screens, such as processing address data or to open a specific screen. For each instance of an actionflow, you specify the data that the actionflow uses by wiring into its Connection Points.
Note |
---|
When you reuse an actionflow, you do not create a copy of it. You are using the actionflow itself. An instance of an actionflow is the combination of the actionflow and its inputs. You can change an actionflow and the same change occurs in all the instances where it is used. |
Reusability Example
The picture below shows an actionflow that validates the format of data to ensure it is a valid area code.
The actionflow is reused by two applications, shown on the left. Each application has separate data which is mapped onto the Connection Point for its instance of the actionflow:
- Instance 1 of the actionflow:
Postcode
data from the Contact App - Instance 2 of the actionfow:
Zip Code
from the Asset Manager App.
Note |
---|
To make actionflows reusable between different applications they must belong to a package which is shared between the two applications. |
API Integration
Connecting to External APIs
The HTTP Node is used to establish a connection to an external API for the purposes of retrieving or writing to it. When reading data from an API, the HTTP node is combined with a JSON Node which reads incoming data and converts it into a workable format for PhixFlow. See HTTP Node and JSON Node.
Connecting an Incoming PhixFlow API
Actionflows support the creation of APIs into PhixFlow. This is achieved by setting an Actionflow to be an API End-Point in its properties. See PhixFlow Incoming API.Submitting Data
Setting an actionflow as a Submit actionflow, will ensure validation is run on the data before the actionflow is started. This allows validation issues to be returned to the user to resolve before they continue.
Allow to Run with Errors
Available when the actionflow is set to submit.
It is possible to set an actionflow to run even if it contains validation issues. For example, a customer services application records user details, if the user does not have all mandatory information available we might wish to save the data entered so far and progress at a later data when this information becomes available. See Adding Validation.
Nesting Actionflows
Actionflows can be embedded within one another, this essentially creates a bespoke node to perform a specific task. For example, an actionflow which sets nonstandard country information to a two-digit ISO country code, could be nested within an actionflow that standardises address information. See Actionflow Node.
Phases
Actionflows can be separated intoConfirmation Dialogs
Confirmation dialogues can be added to Actionflows, these ask the user for a confirmation before continuing, for example, "Are you sure you wish to archive these records?". Confirmation screens are setup in a specific way detailed in Configure a Confirmation.
Security
Security can be applied to Actionflows so that only those with sufficient permissions can run the actionflow. In addition, if an actionflow is assigned to a button and the user does not have permission to run the actionflow, the button will not be displayed on a screen. See Actionflow Properties.
Actionflow Example
title | Example Actionflow configuration. |
---|
The following example is a simple actionflow.
- The message created above is mapped onto a dynamic text header on the screen, so that for the selected record the title of the page reads "Details for Selected Company Name".
What's Next?
The Insert excerpt 1.01 Actionflow Basics 1.01 Actionflow Basics name WhatIsAnActionflow nopanel true
Anchor | ||||
---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
What's Next?
If you are new to PhixFlow, the PhixFlow Fundamentals course provides a practical guide to using PhixFlow, including setting up actionflows Actionflows in your application.
Already started PhixFlow Fundamentals?Return Return to Actionflow Fundamentals.
If you'd like more in-depth knowledge of Actionflows, take one of our Actionflow Courses.
Further Reading
Child pages (Children Display) | ||
---|---|---|
|