Flow Help
NovacuraRoadmap
Flow Classic Help
Flow Classic Help
  • What is Novacura Flow?
  • 📓System requirements
  • Release information
    • Main Flow releases
      • Release notes 6.13
      • Release notes 6.14
      • Release notes 6.15
    • Flow service packs
      • 6.10
        • 6.10.35
      • 6.11
      • 6.12
        • 6.12.19
        • 6.12.20
      • 6.13
        • 6.13.7
        • 6.13.8
        • 6.13.9
        • 6.13.10
        • 6.13.11
        • 6.13.12
        • 6.13.13
        • 6.13.14
        • 6.13.15
        • 6.13.16
        • 6.13.17
      • 6.14
        • 6.14.1
        • 6.14.2
        • 6.14.3
        • 6.14.4
        • 6.14.5
        • 6.14.6
        • 6.14.7
        • 6.14.8
        • 6.14.9
        • 6.14.10
        • 6.14.11
        • 6.14.12
        • 6.14.13
        • 6.14.14
      • 6.15
        • Server
          • 6.15.1
          • 6.15.2
          • 6.15.3
          • 6.15.4
          • 6.15.5
          • 6.15.6
          • 6.15.7
          • 6.15.8
          • 6.15.9
          • 6.15.10
          • 6.15.12
          • 6.15.13
          • 6.15.14
          • 6.15.15
          • 6.15.16
          • 6.15.17
        • Studio
          • 6.15.1
          • 6.15.2
          • 6.15.3
          • 6.15.4
          • 6.15.5
          • 6.15.6
          • 6.15.7
          • 6.15.8
          • 6.15.10
          • 6.15.11
          • 6.15.12
        • Installer
          • 6.15.1
          • 6.15.2
          • 6.15.6
    • Connector services
      • IFS OData Connector
        • 2.1.33
        • 2.1.29
        • 2.1.28
        • 2.1.27
        • 2.1.26
        • 2.1.25
        • 2.1.24
        • 2.1.23
        • 2.1.22
        • 2.1.21
        • 2.1.20
        • 2.1.19
        • Earlier releases
          • 2.1.18
          • 2.1.17
          • 2.1.16
          • 2.1.15
          • 2.1.14
          • 2.1.13
          • 2.1.12
      • SFTP Connector
        • 2.1.0
      • M3 Rest Connector
        • 2.1.4
        • 2.1.2
      • File System Connector
        • 2.1.3
        • 2.1.2
        • 2.1.1
        • 2.0.0
      • Microsoft Active Directory
        • 2.1.3
    • Android client
    • iOS client
    • Portal 2
      • 2020.13.2
      • 2020.13.3
      • 2020.13.4
      • 2020.13.5
      • 2020.14
      • 2020.14.1
      • 2020.14.2
      • 2020.14.3
      • 2020.14.4
      • 2023.1
      • 2023.2
      • 2023.3
      • 2023.4
      • 2024.1
      • 2024.2
      • 2024.3
      • 2024.4
      • 2025.1
    • Web client
      • 1.1
      • 1.2
      • 1.3
      • 1.4
      • 1.5
      • 1.6
      • 1.7
      • 1.8
      • 1.9
      • 1.10
      • 1.11
      • 1.12
      • 1.13 and up - Change log
    • Integration Engine
      • 2024-10-08
      • 2024-11-26
      • 2024-11-12
      • 2024-12-10
      • 2025-01-13
      • 2025-03-05
      • 2025-03-27
  • 🎣Getting started
    • Quick start
    • Develop your first app
  • 🔨Installation and upgrade
    • Installation
    • New installation
    • Upgrade installation
    • Apply service pack
    • Add component
    • Windows authentication
    • Event log
    • FAQ
      • Monitoring
      • Troubleshooting
      • Migration tool
      • IIS user permission
      • Moving SQLite portal database
  • 🧱Security
    • Server
      • Security settings
  • 💡Development
    • Performance Guidelines
    • FlowScript
      • Variables
      • Operators
      • Functions
        • Text functions
          • Chr
          • DecodeText
          • Guid
          • InStr
          • IsNull
          • Left
          • Len
          • Lower
          • Mid
          • Split
          • RegexMatch
          • RegexMatches
          • RegexReplace
          • Replace
          • Right
          • Trim
          • URLEncode/URLDecode
          • Upper
        • Number functions
          • Ceil
          • Floor
          • Format
          • IsNaN
          • IsNumber
          • Max
          • Min
          • Pow
          • Round
          • Str
          • Maths
            • Abs
            • Acos
            • Asin
            • Atan
            • Cos
            • Cosh
            • Sin
            • Sinh
            • Tan
            • Tanh
            • ToDegrees
          • Val
          • Random
        • Date functions
          • Date
          • Format
          • Now
        • DateTime module
        • JSON module
        • Other
          • Base64DecodeText
          • Base64Encode
          • Case/When/Then
          • Default
          • Empty
          • Group by
          • In
          • Inner Join
          • Non-Boolean values
      • Table
        • All
        • Any
        • Count
        • CSVFill
        • Eval
        • First
        • FirstOrDefault
        • FirstOrEmpty
        • Last
        • Skip
        • Sum
        • Take
        • XMLFill
        • Table queries
      • Programs
      • Formats
      • Script examples
        • SQL Join equivalent
      • AD sync scripting
    • Studio
      • Installation and log in
        • OpenID Connect
      • Applications
        • Menu
          • Inbox
            • Public variables
        • Workflow
          • Start step
          • User step
            • Header
            • Static text
            • Labeled static text
            • Link
            • External app launcher
            • Image viewer
            • Text input
            • Numeric input
            • Date input
            • Time input
            • Check box input
            • Binary option input
            • List selection input
            • List multi-selection input
            • Menu selection input
            • Data grid
            • Calendar
            • Image selection input
            • List presentation
            • Camera input
            • File gallery
            • GPS location input
            • Signature capture input
            • Item creation sub task
            • Check list sub task
            • Verb sub task
          • Machine step
          • Decision step
          • Assertion step
          • Assignment
          • Table
          • Event
          • Checkpoint
          • Split
          • Join
          • Script item
          • Log point
          • Annotation
          • End step
          • Included workflow - fragments
          • Offline resource
          • Swimlanes
          • Offline workflow
            • Create an offline workflow
            • Create an offline resource
            • Create an offline seed inbox
            • Create offline transactions
          • Source Code Editor
        • Subscribe
        • Server content
          • Workflow scheduler
          • Generate link
        • Elements
        • Problems
        • Find
        • Metadata panel
        • Version panel
        • Navigation
        • Test bench
        • Application package
          • Get started
      • Environment
        • Users
        • Roles
        • Connectors
        • Properties
        • Languages
        • System events
        • Active directory sync
        • License
        • Devices
        • Branding
        • Reports
      • Monitoring
        • Tasks
        • Applications
        • Help requests
      • Connectors
    • Portal 2
      • Getting started
      • General
        • Add pages and portlets
        • Edit pages
        • Navigation
        • Style
        • Settings
          • Global Variables
          • List of values management
          • Time offset
          • Presentation mode
      • Portlets
        • Basic
          • Data tree
          • Document viewer
          • Filter
          • HTML Advanced
          • HTML table
          • Record viewer
          • Table
          • Text
        • Workflow
          • Inbox
          • Workflow
        • KPI
          • KPI card
          • Speedometer
        • Visual planning
          • Gantt
          • Kanban
          • Map
          • Scheduler
        • Chart portlets
          • Bar chart
          • Column chart
          • Line chart
          • Pie chart
        • Common configuration
          • Visual planning input data
      • Portal Push Notifications
    • Portal
      • Get started
      • Options
        • Settings
        • List of values management
        • Global variables management
        • Content access management
        • Translations management
        • Import/export
      • Portlets
        • Table
          • Database source
          • Workflow source
        • Record viewer
        • Process overview
        • Iframe
        • Inbox
        • News viewer
        • Document tree
        • Document list
        • Document viewer
        • Generic document viewer
        • Generic document viewer URL
        • Generic document viewer
        • Filter
        • HTML
        • Text
        • Data visualizer card
        • Data visualizer navigator
        • Visual planning
          • Gantt chart
          • Kanban
          • Resource bucket
          • Scheduler
        • Map
      • Icons
    • Integration Engine
      • Get Started
        • Set up Flow 6 Server connection
        • Create an integration
          • Webhook trigger
            • Try the webhook
          • Schedule trigger
        • Turn on diagnostics
        • Add data processing
        • Inspect history and retry execution
        • Monitor all executions
  • 🔌CONNECTORS
    • Overview
    • Installation
      • System Requirements
      • Install
        • Windows Service
      • First-time Setup
      • Tuning performance
    • Areas
      • Business systems
        • Database
          • Oracle
          • SQL Server
        • IFS Applications
          • IFS OData
            • Authentication in IFS Cloud
            • Obtaining end-point info from IFS Cloud
            • Configuring IFS OData connector
            • Configuring databases
            • Operations
              • Create
              • Read
              • Update
              • Delete
              • Get by key
              • Actions
              • Functions
              • Batch
              • Custom request
          • IFS Applications 9/10
        • Infor M3
          • M3 Infor API
          • Infor M3 REST
            • Obtaining end-point info from Infor ION API
            • Configuring Infor M3 REST connector
            • Technical Details
        • Maximo Generic
        • SAP
          • SAP BAPI
            • Basic API
              • BAPI: ZNCFLOW_APPLICATION_COMPONENT
              • BAPI: BAPI_MONITOR_GETLIST
              • BAPI: BAPI_INTERFACE_GETDOCU
              • BAPI: RFC_GET_FUNCTION_INTERFACE
              • BAPI: ZNCFLOW_DDIF_FIELDINFO_GET
        • Oracle Primavera
        • Microsoft Dynamics AX
        • Microsoft Dynamics CRM
        • Microsoft Active Directory
        • Microsoft SharePoint 2013
          • Generic operations
            • Custom list
              • Attachments
              • Create new item
              • Create new item, with field values
              • Delete item
              • Get items by query
              • List all items
              • List fields of items
              • Update item field
            • Document library
              • Check in/out file
              • File management
              • Create sub folder
              • Upload/download
            • Tasks
              • Attachments
              • Predecessors
              • Task information
              • Update task
              • Create new subtask
              • Create new task
            • User operations
              • Group operations
              • Get user by ID
              • Get user by login name
              • List users
      • Communication
        • Email
        • Web page submit
        • FTP
          • Server Operations
          • Directory operations
          • Download Operations
          • File Operations
          • Upload operations
        • SFTP
          • Directory operations
          • Download operations
          • File operations
          • Upload operations
        • Modbus
          • Read operations
          • Write operations
        • External Oauth 2.0 provider
        • Siox
        • REST service
          • REST Project Tool
            • Getting started
            • Operations
              • Parameters
                • Computed parameters
              • Outputs
            • Models
              • Custom model member
            • Model transform
            • Global output
            • Global parameters
            • Authorization schemes
            • Enumerations
            • Tools
        • Web service
          • Example
            • Webservice example: Connector to Microsoft Dynamics AX
        • OPC UA Connector
      • Printing
        • BarTender 2016
          • Print
          • Manually select
          • Print from BTXML script
          • Print from BTXML script
          • List printers
        • NiceLabel
        • Html to PDF
      • Utility
        • Flow environment
        • Custom .NET
        • Google API
        • Generate Xml Data
        • Generate text
        • File System
          • Connector service
            • Configuration
            • Operations
            • Flow Integration
            • API Access
            • Triggers
          • Embedded connector
            • Configuration
            • Directory operations
            • File operations
            • Zip operations
  • 📱Clients
    • Mobile clients
      • Get started
      • Miscellaneous
      • Mobile Device Management
        • Microsoft Endpoint Manager
      • Offline
      • Scanning
    • Web client
      • Get started
      • Miscellaneous
      • Offline
      • Scanning
      • Self hosting
    • Windows 10 client
    • Android legacy client
    • iOS legacy client
    • Web legacy client
    • Windows CE client
  • ❓FAQ
    • How do i find which version of Flow i am running?
  • 📧Contact
Powered by GitBook
On this page
  • Example: Append new records to a table
  • Example: Join into a record
  • Example: Convert a complex table into a simple table
  • Example: Sum values in a table

Was this helpful?

  1. 💡Development
  2. FlowScript

Script examples

PreviousFormatsNextSQL Join equivalent

Last updated 1 year ago

Was this helpful?

Example: Append new records to a table

#FlowScript #Join #If statement #For loop #With #Table concatenation #Create table

This script creates a new table and fills it with data from an already existing table, where one column will be updated with new data.

Input table:

DS_periodDates

date

dayStatus

2019-12-01

Confirmed

2019-12-02

Reported

2019-12-03

3 hours left to report

2019-12-04

8 hours left to report

DS_favorites

customerId

customerName

project

accountDate

3245

abc

4565

2019-12-01

2456

adc

5465

2019-12-01

5974

acb

4564

2019-12-01

Script:

let generatedFavorites = table(customerId, customerName, project, accountDate, objversion, objid);

for recDate in DS_periodDates do

    if recDate.date < now() and (recDate.dayStatus like '%hours left to report' or recDate.dayStatus = 'Reported') then

        for recFavorite in DS_favorites do 

            let addedFavs = recFavorite with [accountDate: recDate.date];

            set generatedFavorites = generatedFavorites & addedFavs;

        done

    end

done

return generatedFavorites; 

Description:

  1. A new table is created: generatedFavorites (row 1 in script below)

  2. The script will loop for every row in table DS_periodDates (3) where the date is in the future and the day status is like '%hours left to report' or 'Reported' (5)

    1. The script will loop for every row in table DS_favorites (7) where the account date in DS_favorites will be updated with the date from DS_periodDates (9)

    2. The script adds the result from each loop iteration to generatedFavorites by concatenating the row with table addedFavs (11)

  3. The script returns generatedFavorites (19)

Output table:

generatedFavorites:

customerId

customerName

project

accountDate

3245

abc

4565

2019-12-02

2456

adc

5465

2019-12-02

5974

acb

4564

2019-12-02

3245

abc

4565

2019-12-03

2456

adc

5465

2019-12-03

5974

acb

4564

2019-12-03

3245

abc

4565

2019-12-04

2456

adc

5465

2019-12-04

5974

acb

4564

2019-12-04

Example: Join into a record

#FlowScript #Join #If statement

This script joins values and assigns the values to new variables.

Input variables:

Script:

let criticalBugsNoTeamJoinedKey = '0';
let criticalBugsNoProgressJoinedKey = '0';
let criticalBugsNotStaredJoinedKey = '0'; 

if count(criticalBugsNoTeam) > 0 then
    set criticalBugsNoTeamJoinedKey = Join(criticalBugsNoTeam.key,'%27%2C%27');
end

if count(criticalBugs) > 0 then
    set criticalBugsNoProgressJoinedKey = join(criticalBugs.key,'%27%2C%27');
end 

if count(criticalBugsNotStarted) > 0 then
    set criticalBugsNotStaredJoinedKey = join(criticalBugsNotStarted.key,'%27%2C%27');
end 

let joined= [criticalBugsNoTeamJoinedKey: criticalBugsNoTeamJoinedKey, criticalBugsNoProgressJoinedKey: criticalBugsNoProgressJoinedKey, criticalBugsNotStaredJoinedKey: criticalBugsNotStaredJoinedKey]; 

return joined;

Output variable:

Example: Convert a complex table into a simple table

#FlowScript #Join #Loop #For loop #Create table

This script will create a simple table where for example join is used to join all components together into one string so all values can be put into one column.

Input table:

The input table blockerBugsFiltered is a complex table with different levels of tables, records and simple values in the table.

Script:

let blockerBugs = table (key, summary, description, priority, components, assignee, created);

for rec_ in blockerBugsFiltered do 

    let joinComponents = join(rec_.fields.components.name, ', ');

    set blockerBugs = blockerBugs & [key: rec_.key, summary: rec_.fields.summary, description: rec_.fields.description, priority: rec_.fields.priority.name,
    components: joinComponents, assignee: rec_.fields.assignee.displayName, created: left(rec_.fields.created,10)];

done

return blockerBugs; 

Description:

  1. A new table is created: blockerBugs (row 1 in the script below).

  2. The script will loop for every row in table blockerBugsFiltered (3).

  3. Join the values in the components table (5).

  4. Append new records to table blockerBugs (7).

  5. The script returns the table blockerBugs (12).

Output table:

The output of this script will be a simple table including only simple values.

Example: Sum values in a table

Script:

let stuff = [locno: "A", something: "x", qh: 20, qt: 5] & 
[locno: "A", something: "x", qh: 8, qt: 3] &
[locno: "B", something: "x", qh: 21, qt: 5] & 
[locno: "A", something: "x", qh: 5, qt: 3] &
[locno: "C", something: "x", qh: 2, qt: 5] & 
[locno: "A", something: "x", qh: 5, qt: 3] &  
[locno: "C", something: "x", qh: 10, qt: 1]; 

let t = select locno, 
sum((stuff as s where s.locno = locno).qh) as qh 
sum((stuff as s where s.locno = locno).qt) as qt 
from (select distinct locno from stuff); 


return select locno, qh, qt, (qh - qt) as qty from t;

Description:

  1. Create table variable stuff and add 7 rows of data (1-7).

  2. Create variable t and select and sum values distinct from table stuff (9-12).

  3. Return table t. In this case qt is subtract from qt (15).

Output data: