View Action Configuration
What is a View Action?
The
For the full list of View action
Views vs Lookups
.
For more information on lookups, see Lookup Configuration, or see how-to guide, Lookups with Dynamic Parameters.
Creating View Actions
Click the
icon in the toolbar to display existing tables in the applicationExisting tables can be dragged from the Repository onto the canvas - choose
in the pop-up box to create a View action node
Alternatively, drag the
icon from the toolbar onto the canvas and select a primary table to view from the drop down list
Example Uses
Example: Many Attributes are Needed in the Actionflow
Solution: Rather than map all of these attributes into the Actionflow, the primary key can be mapped in and a
Example: Not all Attributes are Displayed on the Screen
Solution: Where attributes from the table are needed in the Actionflow but are not displayed on the screen,
Troubleshooting
If a
action returns 0 records, any subsequent action nodes will not runFor example, if an Actionflow is run containing a
action connected to anaction, and the view action returns 0 records, the screen will not open
Worked Example
Here's a worked example using the School Data (available from the Learning Centre).
In this example, we are using:
A Teacher Management screen containing a grid of the School Teachers data - the screen was created using the Tile with Buttons template
A Teacher Form screen containing form fields and associated with School Teachers data by a background filter - the screen was created using the Edit Form template
A Course Management screen containing a grid of the School Courses data - the screen was created using the Tile with Buttons 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 Foundation Application. For this example, we'll be added extra functionality to a button on the Teacher Form.
We want the status of a course to be dynamically updated to On Hold if the associated teacher's status is changed to Inactive. To do this, we will add
Dynamic Updates Between Tables
Using a View Action, modify the Save Actionflow for the School Teachers data to dynamically retrieve and update the School Courses data.
Configure a View Action
Create a View Action to access the School Courses data within an Actionflow for the School Teachers data.
Open the
Save Actionflow for the Teacher FormRight-click on the input connection point, under Connections, and select
Drag the TeacherStatus attribute from the left into the Drag and Drop area on the right
Click Save
Drag a
Action from the toolbar onto the canvasName:
Get CoursesPrimary Table: choose School Courses
Select Create Action
Drag and drop the Get Courses
Action onto the in connector between theNode and theActionClick on the in connector between the
node and theAction to open the MappingsDrag both the TeacherID and TeacherStatus attributes (hold Ctrl to multi-select) from the left into the Drag and Drop area on the right
Select Save
Click on the Get Courses
Action to open itsIn the Output Attributes section, select the
iconDrag the CourseID and CourseStatus attributes into the Output Attributes section in the
Select OK
In the Data Retrieval Options section, click the
next to Filter and create a filter:Name:
ByTeacherFilter Details:
Click abc to tell PhixFlow to interpret the field as an expression
Select
Select
on the
Checkpoint
Configure a Calculate Action
Create a Calculate Action to alter the CourseStatus data based on the TeacherStatus data.
Drag a
Action from the toolbar onto the canvasName:
Change Course StatusSelect Create Action
Drag and drop the Change Course Status
action onto the in connector between theaction and theactionClick on the in connector between the
action and theaction to open the MappingsMap across the CourseStatus, TeacherID and TeacherStatus attributes, as these are needed for the
actionSelect Save
Click on the
action to open itsIn the Output Attribute section, click
to create a new attribute:Name:
NewCourseStatusType: Choose
StringExpression:
// If TeacherStatus is Inactive, set CourseStatus to On Hold if( in.TeacherStatus == "Inactive", $pfCourseStatus = "On Hold", // Else, set CourseStatus to Open $pfCourseStatus = "Open" )Select
Checkpoint
Configure an Additional Save Action
As we are modifying the Save Actionflow for the Teachers table, we need an additional
Drag a
Action from the toolbar onto the canvasName:
Save CoursesTable: Choose the School Courses table
Select Create Action
In the
Action's Properties, toggle onAuto Save AttributesSelect
Hover over the
action and select outWhen the red arrow shows, click on the
Courses action nodeOn the Mappings window:
Drag the NewCourseStatus attribute from the left onto the CourseStatus attribute on the right
Drag the CourseID attribute from the left onto the CourseID attribute on the right
Select Save
Checkpoint
Close the Actionflow and return to the Teacher Management screen
- the screen and select a record to Edit
On the Teacher Form, change the teacher's Status to Inactive and press Save
To see that the Actionflow has worked, open the Course Management screen
Any course(s) assigned to the teacher you just updated should have a Status of On Hold