Data Maps

Data maps are a structure that is used in various places around the system to transform data. They're used in places like the API to allow you to process user fields, and in external systems management to customise the handling of incoming jobs.

A data map is a set of lines:

Both the assign value and condition are GDS expressions - see below.

Overrides

GDS Expressions

These are expressions that GDS uses to calculate values. They're used in places like the Analysis Module and data maps.

An expression can evaluate to one of:

4
946
93.7
"hello"
"hello world"

You can perform arithmetic in expressions, on numbers:

4 + 4 -> 8
10 - 7 -> 3

... or on strings:

"hello " + "world" -> "hello world"

If the first subexpression is a string, both will be added as strings:

"the count is " + 7 -> "the count is 7"

If the first subexpression is a number, both will be added as numbers:

5 + "2" -> 7

If a string doesn't represent a number, it'll be treated as zero:

5 + "abc" -> 5

If you specify a word without quotes, this is called an identifier. An identifier refers to some information we've been provided. For example, if we're processing a job data mapping, then a job record will be available. If the job number is 4622 then the following will work:

job_id -> 4622

So given that job we can have an expression like this:

"the job number is " + job_id -> "the job number is 4622"

To make things easier, you can also perform substitutions within strings using braces { }:

"the job number is {job_id}" -> "the job number is 6422"
"Adding some numbers {4+2}" -> "Adding some numbers 6"

Strings also support some control characters:

"This is the first line\nThis is the second line"

... gives us the output:

This is the first line
This is the second line