Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Insert excerpt
_Banners
_Banners
nameactionflow
nopaneltrue

This TThis page provides details of the properties for the phase node. These are part of actionflows.

Overview

Actionflows process data one record at a time. However, sometimes you may want to process all records up to one point, before moving on to the next process. For example, you may first want to check all the data before starting to process the first record. One way to do this is to have separate actionflows, so that all the data is processed by one actionflow, saved to a table and then the table is used at the start of the next actionflow. The other way is to use a 

Insert excerpt
_action_phase
_action_phase
nopaneltrue
 node.

Phase nodes act as an internal break in the actionflow. For example, you can have one phase in which records are read into the actionflow and checked one at a time. Once all records have been validated, the actionflow can then move to the next phase, where records are updated. Phase nodes are particularly useful if there the actionflow requires the user to make a choice as part of the actionflow. 

Example

Validation

A user wants to check some company fields before saving them in an actionflow. The simplest way to do this is to add a new phase before the existing processing phase. The new phase will contain all the logic to check the fields, and only pass on validated fields to the next phase.

Image Added

To add validation to the fields checking that a company name has been provided and the phone number only contains numbers

  1. Right click on the save button and click Display Actionflow
  2. In the phase toolbar, click
    Insert excerpt
    _add
    _add
    nopaneltrue
  3. Select Add phase before
  4. Name the phase Validation
  5. Add the form as an input into the actionflow
  6. Map the fields that need to be validated, CompanyName and Number
  7. Drag and drop a Calculate node onto the actionflow canvas
  8. Name this Validate Fields
  9. Connect the
    Insert excerpt
    _driving_interface_connection_point
    _driving_interface_connection_point
    nopaneltrue
     to the calculate node
  10. Map CompanyName and Number into the calculate node
  11. Create a calculate attribute with the following properties
    1. Name: ValidRecord
    2. Type: TrueFalse
    3. Expression:

      Code Block
      do(
      	//set error message variable to use in the validation
      
      	$errorMessage = [],
      
      	//check the company name is populated
      
      	if(in.CompanyName == _NULL, 
      
      		$errorMessage = addElement($errorMessage, "Please provide a name")
      	),
      
      	if(contains(in.Number, [abc]),
      
      		$errorMessage = addElement($errorMessage, "Phone number should not contain any letter")
      	),
      
      	if(countElements($errorMessage) > 0,
      
      		do(
      			error(listToString($errorMessage, ", ")),
      
      			false
      		),
      
      		true
      	)
      )	
      
      


    4. Click 

      Insert excerpt
      _save
      _save
      nopaneltrue

  12. Drag and drop a Start Phase node onto the actionflow canvas
  13. Select Processing Phase (the second phase)
  14. Hover over the calculate node and select the out connection point
  15. Use the arrow and click on the canvas and create a Gateway node
  16. Name this Valid Records Only
  17. Right click on the connection point between the Calculate and the Gateway and click Configure Mappings
  18. Map ValidRecord into the Gateway node
  19. Click Confirm Mappings
  20. Hover over the gateway node and click Add Output
  21. Name this Valid
  22. Connect this to the Start Phase node
  23. Right click on the connection and select Show Properties
  24. Add the expression 

    Code Block
    in.ValidRecord

    This ensures only valid records pass to the next phase.


    Image Added

Confirmation

They can be used in combination with

Insert excerpt
_action_screen
_action_screen
nopaneltrue
 nodes which contain Start Phase buttons. These buttons link directly to the outputs on the Open Screen node and can be connected to different phases. For example If the user chooses option 1, phase 1 can run. If the user chooses option 2, phase 2 can run instead. Especially useful if there is a requirement for user confirmation before processing. To add a confirmation phase

  1. In the phase toolbar, click
    Insert excerpt
    _add
    _add
    nopaneltrue
  2. Select Add phase before
  3. Name the phase Confirmation
  4. Either
    1. Add the form as the input into the actionflow if data is required to be mapped into the confirmation
    2. Add the event as the input into the actionflow if no data is required for the confirmation.
  5. Click Screens to open the list of available screens
  6. Drag and drop the default confirmation screen onto the actionflow
  7. Connect this to the interface input connection point
  8. Drag and drop a Start Phase node and select the right phase.
  9. Hover over the default confirmation screen and select the correct output
  10. Connect this to the Start Phase node.

Sarah todo: add video once working in product

Insert excerpt
_property_tabs
_property_tabs
namebasic-h
nopaneltrue

Insert excerpt
_parent
_parent
nopaneltrue

Basic Settings

FieldDescription
NameEnter the name for the action node.
PhaseSelect a Phase for the actionflow to start
Insert excerpt
_actionflow_properties
_actionflow_properties
nameshow-name
nopaneltrue

Insert excerpt
_actionflow_properties
_actionflow_properties
nameshow-text
nopaneltrue


Insert excerpt
_description
_description
nopaneltrue

Insert excerpt
_property_tabs
_property_tabs
nameaccess-h
nopaneltrue

Insert excerpt
_access
_access
nopaneltrue

Insert excerpt
_audit
_audit
nopaneltrue

Live Search
spaceKey@self
additionalnone
placeholderSearch all help pages
typepage

Panel
borderColor#00374F
titleColorwhite
titleBGColor#00374F
borderStylesolid
titleSections on this page

Table of Contents
maxLevel3
indent12px
stylenone


Learn More

For links to all pages in this topic, see Understanding Actionflows

Insert excerpt
_terms_changing
_terms_changing
nopaneltrue