Workflows.

Workflows are the part that automates your forms. Depending on what trigger you use, a workflow can run when a new record is created, updated, or deleted. A workflow is a set actions to take that are customised to your requirements.

Creating a table

To create a new table:

Enter a name. Please note that the name should not contain any spaces. For example: ListOfStudents, Products, AnnualLeaveRequests et al.

Workflow Designer

  1. Save the Form. This will make it live
  2. Bring up the variable dialog
  3. Close the designer
  4. Workflow Action List (drag from here to 5)
  5. Workflow area

Variables

Variables are used to store data temporarily while the workflow runs. For example: You could do a math equation and save the output to a variable. From there you can refer to the variable using @[variable.name]

  1. Enter the name of the variable. This will later be referred to as @[variable.TheNameYouGive]
  2. The data type of the variable

If Statement

SMTP/Email

  1. The connector to use. If the Builtin connector is used, the 'FROM' addres is ignored and limitations apply. Ideally you should look to use your own mailserver. We will look to change these restrictions when we're out of Beta mode and accounts are better verified.
  2. The FROM address is the full email address the email will come from. For example: noreply@yourdomain.com
  3. The TO address is where to send this too. This could be just an email address, or you could reference one of the columns/variables here (ie. @[column.EmailColumnName])
  4. The subject of the email
  5. The body of the email
  6. Attachements to send. We have some future plans to improve this functionality.

Set Variable

Update Column

Math

  1. The variable to update
  2. The equation to perform. ie. 1+2*7 or round(@[column.Qty])
Functions:
  • sin( double )
  • cos( double )
  • tan( double )
  • asin( double )
  • acos( double )
  • atan( double )
  • cot( double )
  • acot( double )
  • loge( double )
  • log10( double )
  • logn( double, double )
  • sqrt( double )
  • abs( double )
  • ceiling( double )
  • floor( double )
  • truncate( double )
  • round( double )
  • random()

This example could give a random value between 0 and 10:

round(random() * 10)

String Manipulation

  1. The string to change. For example you could have a column in here such as @[column.Firstname]
  2. The action to take on that string. For example: Uppercase
  3. Output the modified string to this variable
  • Uppercase to make all characters uppercase
  • Lowercase to make all characters lowercase
  • Replace will change all occurrences of a string with another
  • Substring will get a portion of a string
  • Trim will remove any spaces before and after the string
Replace
Sub String

Date

Pause

SQL Query

API Call

Convert Type

Approval

Create File

Barcode

Script

Stop Workflow

CSV

Send SMS

Push Notification

  1. The connector to use
  2. To Device. This should look like a random string. You can get this from pushover.net and is the id of the device/group to send the notification to. For example d1bk8te4adxxxxxxxxxx2b1x8vmqz2
  3. The message to send
  4. The priority. See more about priorities at Pushover
Guide: Configuring Notifications with Pushover
Hint: Depending on your use case, it might be a good opportunity to see the power of Sysflows here. You could create another Table with two columns: Email and DeviceID. You could then insert all the users email address with their corresponding DeviceID and then have a Lookup to get the DeviceID for the corresponding Email