DataChain functions

Logo GenericsData genericsData & Logo HandleData HandleData

The Datachain formulas are used to process and cross-reference data at different strategic levels in the value chain: Business Entities, DataBlocks and HandleData data sources.
These formulas call on functions, characterized by an input (argument) and output (return) value type.

DataChain offers over 350 unit functions for creating formulas, detailed on this page.

Some functions are marked as deprecated: they will be removed in a future version and we recommend that you stop using them in favour of the formulas specified in their description.

Foreword on data types

The data manipulated in Datachain is typed in order to:

  • Make it easier to select formulas/functions appropriate to the type (you can’t sum two strings of characters),

  • Handle the appropriate data structures (a telephone number will usually be handled as a string of characters, but a price as a number),

  • Improve overall pipeline execution performance.

Datachain currently defines the following data types:

Booléen / Boolean

B

2 values true ou false

Décimal / Decimal

De

Floating-point number with 15 significant digits, value: ~ ± 1,79769313486231570E+308

Entier / Integer

I

Number between -2147483648 et 2147483647.

Grand nombre entier / Big Integer

B.I

Number between -9223372036854775808 et 9223372036854775807

Chaîne de caractère / String

S

Any type of string

Date / Date

Da

Date and time with nanosecond precision. More information here

Géométrie / Geometry

Ge

Specific format for geometry formulas, mainly using the Sedona library

Mots / Words

W

Specific format for semantic analysis formulas

Formulas for Decimal numbers

dec.abs

dec.abs(Value  -  De,I,B.I)

Returns absolute value of a number.

Parameters :

Value  -  De,I,B.I

Input the number whose absolute value we are looking for

Return : De

  • The absolute value of parameter

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.abs-1.2  )  =  1.2

dec.abs-10  )  =  10

dec.absnull  )  =  null

dec.cosinus

dec.cosinus(Value  -  De,I,B.I)

Returns Cosine of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The cosine value of parameter

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.cosinus0  )  =  1

dec.cosinusnull  )  =  null

dec.cosinus_hyperb

dec.cosinus_hyperb(Value  -  De,I,B.I)

Returns Hyperbolic Cosine of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The hyperbolic cosine value of parameter

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.cosinus_hyperb0  )  =  1

dec.cosinus_hyperbnull  )  =  null

dec.cosinus_invers

dec.cosinus_invers(Value  -  De,I,B.I)

Returns inverse of Cosine of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • Inverse of parameter’s cosine

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.cosinus_invers1  )  =  0

dec.cosinus_inversnull  )  =  null

dec.create

dec.create(Value  -  De,I,B.I)

Create a Decimal from a value entered.

Parameters :

Value  -  De,I,B.I

Specify a value

Return : De

  • The entered value in Decimal format

  • null if parameter is null

Examples :

dec.create10  )  =  10.00

dec.create-140.56  )  =  -140.56

dec.cube

dec.cube(Value  -  De,I,B.I)

Returns Cubic Root of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The Cubic Root value of parameter

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.cube-8  )  =  -2

dec.cubenull  )  =  null

dec.cubeNaN  )  =  NaN

dec.degree_to_rad

dec.degree_to_rad(Value  -  De,I,B.I)

Transforms degrees into radians.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The value of the conversion from degree to radian

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.degree_to_rad0  )  =  0

dec.degree_to_rad90  )  =  1.5707963267948966

dec.diff

dec.diff(List  -  ARGS(De,I,B.I))

Returns the difference between all elements of a list of Decimals.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The difference between all the arguments in the list

  • Null if parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

dec.diff(  [ 1 , 1.2 , 1.4 ]  )  =  -1.6

dec.diff(  [ -1.3 , 1.4 , -1.5 ]  )  =  -1.2

dec.div

dec.div(List  -  ARGS(De,I,B.I))

Returns the division of a list of Decimals.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The division of all the arguments in the list

  • Null if parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

dec.div(  [ 4 , 2 , -4 ]  )  =  -0.5

dec.div(  [ 2 , 0.5 ]  )  =  4

dec.exponentiel

dec.exponentiel(Value  -  De,I,B.I)

Returns Exponential of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The exponential value of parameter’s number

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.exponentiel0  )  =  1

dec.exponentielnull  )  =  null

dec.fix

dec.fix(Value  -  De,I,B.I)

Returns the integer part of a Decimal.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : B.I

  • The entire part of parameter

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.fix1.57079632679  )  =  1

dec.fixnull  )  =  null

dec.generate

dec.generate(Increment  -  De,I,B.I, Start Decimal  -  De,I,B.I, End Decimal  -  De,I,B.I)

Generates a list of Decimals from the Start Decimal by adding the Increment to the End Decimal.

Parameters :

Increment  -  De,I,B.I

Input value to add at each step of the generation

Start Decimal  -  De,I,B.I

Specify initial value of the sequence

End Decimal  -  De,I,B.I

Specify the maximum value of the sequence (inclusive)

Return : LIST(De)

  • List of decimals generated by incrementing from start value until reaching end value (inclusive)

  • An empty list if increment ⇐ 0 or is null

Examples :

dec.generate0.312  )  =  [ 1 , 1.3 , 1.6 , 1.9 ]

dec.generate012  )  =  [ ]

dec.hexa

dec.hexa(Value  -  De,I,B.I)

Returns Hexadecimal value of a Decimal.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : S

  • The hexadecimal value of parameter

  • Null if parameter is null

  • Null if parameter is none

Examples :

dec.hexa16  )  =  "10"

dec.hexa15  )  =  "F"

dec.hexa2654  )  =  "A5E"

dec.if

dec.if(Rule  -  B, Value if true  -  De,I,B.I, Value if false  -  De,I,B.I)

Checks if condition is met and returns a Decimal if result of the condition you specified is True, and another Decimal if result is False.

Parameters :

Rule  -  B

Specify condition to process

Value if true  -  De,I,B.I

Return value if test is true

Value if false  -  De,I,B.I

Return value if test is false

Return : De

  • The value of argument 2 if the condition is true, otherwise the value of argument 3

  • Null if the condition is null

dec.list.as_str

dec.list.as_str(List  -  LIST(De,I,B.I))

Transforms a list into a String.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : S

  • The list in string format

Examples :

dec.list.as_str(  [ 1.2 , 1.2 ]  )  =  "[1.2, 1.2]"

dec.list.compact

dec.list.compact(List  -  LIST(De,I,B.I))

Removes Null values from the list.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(De)

  • The list without null value

Examples :

dec.list.compact(  [ 1 , 2 , 3 ]  )  =  [ 1 , 2 , 3 ]

dec.list.compact(  [ null , 5 , null ]  )  =  [ 5 ]

dec.list.contains

dec.list.contains(List  -  LIST(De,I,B.I), Number  -  De,I,B.I)

Returns True if searched Decimal is present in the list.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Number  -  De,I,B.I

Number to search list

Return : B

  • True if the searched number is present in the list, otherwise false

Examples :

dec.list.contains(  [ 1.2 , 2.3 ],  1.2  )  =  true

dec.list.contains(  [ 1.2 , 1.2 , 1.2 ],  -1.2  )  =  false

dec.list.contains(  [ null , 5 ],  null  )  =  true

dec.list.count.distinct

dec.list.count.distinct(List  -  LIST(De,I,B.I))

Returns a list of key-values containing the distinct values and their occurrence in the list.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(S)

  • The list in JSON format containing the value of the list in key and in value the number of occurrences of this value in the list

  • Null if parameter is null

Examples :

dec.list.count.distinct(  [ 1.2 , 2.3 , 1.2 ]  )  =  [{"value":1.2,"count":2},{"value":2.3,"count":1}]

dec.list.create

dec.list.create(Values  -  ARGS(De,I,B.I))

Creation of a list from Decimals.

Parameters :

Values  -  ARGS(De,I,B.I)

Input a value (n by adding arguments)

Return : LIST(De)

  • The list containing values entered in parameter

  • Null if parameter is null

dec.list.diff

dec.list.diff(First list  -  LIST(De,I,B.I), Second list  -  LIST(De,I,B.I))

Returns the list of Decimals that differ between two Decimal lists.

Parameters :

First list  -  LIST(De,I,B.I)

Specify first list of numbers

Second list  -  LIST(De,I,B.I)

Specify second list of numbers

Return : LIST(De)

  • The list of numbers that are in a list and not in the other (null is a value)

Examples :

dec.list.diff(  [ 1.2 , 1.2 ],  [ 1.2 , 1.4 ]  )  =  [ 1.2 , 1.4 ]

dec.list.diff(  [ 1.2 , -1.2 , 1.2 ],  [ ]  )  =  [ 1.2 , 1.2 , -1.2 ]

dec.list.diff(  [ 1.2 , NaN ],  [ NaN ]  )  =  [ 1.2 ]

dec.list.distinct

dec.list.distinct(List  -  LIST(De,I,B.I))

Returns a list containing distinct values (unique values) of the entered list.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(De)

  • The list containing only the distinct values of the entered list

Examples :

dec.list.distinct(  [ 1.2 , 2.3 , 1.2 ]  )  =  [ 1.2 , 2.3 ]

dec.list.distinct(  [ 1.2 , 1.2 , null , null ]  )  =  [ 1.2 , null ]

dec.list.except

dec.list.except(First list  -  LIST(De,I,B.I), Second list  -  LIST(De,I,B.I))

Returns a Decimal list, from a first list that are not in a second list.

Parameters :

First list  -  LIST(De,I,B.I)

Specify first list of numbers

Second list  -  LIST(De,I,B.I)

Specify second list of numbers

Return : LIST(De)

  • The list of all numbers from the first list that are not in the second list

Examples :

dec.list.except(  [ 1 , 4 ],  [ 1 , 2 , 3 ]  )  =  [ 4 ]

dec.list.except(  [ 1 , null , 3 ],  [ 1 , 2 ]  )  =  [ null , 3 ]

dec.list.except(  [ 1 , null , 3 ],  [ 1 , null ]  )  =  [ 3 ]

dec.list.flat

dec.list.flat(List  -  LIST(De,I,B.I))

Transforms an array of arrays into a single array.

Parameters :

List  -  LIST(De,I,B.I)

Specify list of lists to process

Return : LIST(De)

  • The list containing all the number of the lists

dec.list.get

dec.list.get(List  -  LIST(De,I,B.I), Index  -  I)

Extract a number from a list by specifying its index (the first element of the list being at index 0)

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Index  -  I

Specify index to extract from list

Return : De

  • The value of the list at the indicated index

  • First value index : 0

  • Null if the index is outside the list

Examples :

dec.list.get(  [ 1.2 , 2.3 , 3.4 , 4.5 ],  3  )  =  4.5

dec.list.get(  [ 1.2 , null ],  1  )  =  null

dec.list.get(  [ 1.2 , 1.3 ],  5  )  =  null

dec.list.insert

dec.list.insert(List  -  LIST(De,I,B.I), Position  -  I, Value  -  De,I,B.I)

Inserts an element in a list of Decimals at the specified position (numbered from 1 and from right to left if negative). Adds null values if necessary to reach the desired position and returns the new, modified list.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Position  -  I

Specify the insertion position in the list

Value  -  De,I,B.I

Specify the value to insert in the list

Return : LIST(De)

  • Returns a new list with the specified value inserted at the given position

  • When the value to insert is null, it is inserted as a null element in the resulting list

  • For positive indices (starting at 1), inserts the value at that position, shifting existing elements right

  • For negative indices, counts from the end of the list

  • If index exceeds list size, fills gap with null values before inserting

  • Preserves all original elements, only adding the new value and necessary null padding

  • Returns an empty list if the list to be processed is empty

  • Returns an empty list if the position argument is null, 0 or empty

Examples :

dec.list.insert(  [ 1 , 1 ],  15  )  =  [ 5 , 1 , 1 ]

dec.list.insert(  [ 1 ],  34.3  )  =  [ 1 , null , 4.3 ]

dec.list.intersect

dec.list.intersect(First list  -  LIST(De,I,B.I), Second list  -  LIST(De,I,B.I))

Returns the list of numbers in common between two number lists (can contain the same value several times).

Parameters :

First list  -  LIST(De,I,B.I)

Specify first list of numbers

Second list  -  LIST(De,I,B.I)

Specify second list of numbers

Return : LIST(De)

  • The list with the values which are common to the lists, can contain the same value several times in case of occurrence of the value in the 2 lists

Examples :

dec.list.intersect(  [ 1.2 , 1.2 ],  [ 1.2 ]  )  =  [ 1.2 ]

dec.list.intersect(  [ 1.2 ],  [ 1.2 , 1.2 ]  )  =  [ 1.2 ]

dec.list.intersect(  [ 5.2 , 0 , null , 2.3 ],  [ 5.2 , 2.3 , -3.4 , null ]  )  =  [ null , 2.3 , 5.2 ]

dec.list.max

dec.list.max(List  -  LIST(De,I,B.I))

Returns the largest number in a list of numbers.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : De

  • The largest number in the list excluding null values

Examples :

dec.list.max(  [ 1.2 , 2.3 , 1.2 ]  )  =  2.3

dec.list.max(  [ null , 5 ]  )  =  5.0

dec.list.max_occur

dec.list.max_occur(List  -  LIST(De,I,B.I))

Gives the most represented number in the list (or a list in egality case).

Parameters :

List  -  LIST(De,I,B.I)

Specify a list of number

Return : LIST(De)

  • The most frequent number in the list

  • The list of value if several values are most represented in the list

Examples :

dec.list.max_occur(  [ 1.2 , 2.3 , 1.2 ]  )  =  [ 1.2 ]

dec.list.max_occur(  [ 1.2 , 2.3 , 1.2 , 2.3 ]  )  =  [ 1.2 , 2.3 ]

dec.list.max_occur(  [ 1.2 , null , null ]  )  =  [ 1.2 ]

dec.list.mean

dec.list.mean(List  -  LIST(De,I,B.I))

Returns the mean value of a list of numbers.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : De

  • The average value of the list of numbers without taking null and NaN into account

  • Null if list contains only null and NaN

Examples :

dec.list.mean(  [ 1.2 , 1.3 , 1.4 , 1.5 ]  )  =  1.35

dec.list.meanbigint.list.create(  [ 1 , 1 , 4 , 5 ]  )  )  =  2.75

dec.list.meanint.list.create(  [ 1 , 1 , 3 , 4 ]  )  )  =  2.25

dec.list.mean(  [ 1.2 , 1.2 , NaN ]  )  =  1.2

dec.list.median

dec.list.median(List  -  LIST(De,I,B.I))

Returns Median of a list of numbers.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : De

  • The median value of the list of number without null and NaN

  • Null if list contains only null and NaN

Examples :

dec.list.median(  [ 1.2 , 1.3 ]  )  =  1.25

dec.list.median(  [ 1.2 , 1.3 , 1.4 , 1.5 , 7.8 ]  )  =  1.4

dec.list.min

dec.list.min(List  -  LIST(De))

Returns the smallest number in the list.

Parameters :

List  -  LIST(De)

Specify list to process

Return : De

  • The smallest number in the list excluding null and NaN values

Examples :

dec.list.min(  [ 5.2 , 2.3 , -3.4 ]  )  =  -3.4

dec.list.min(  [ null , 5 ]  )  =  5.0

dec.list.min_occur

dec.list.min_occur(List  -  LIST(De,I,B.I))

Gives the least represented number (or a list in egality case).

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(De)

  • The least represented number on the list

  • The list of value if several values are least represented in the list

Examples :

dec.list.min_occur(  [ 1.2 , 2.3 , 1.2 ]  )  =  [ 2.3 ]

dec.list.min_occur(  [ 1.2 , 1.2 , null ]  )  =  [ 1.2 ]

dec.list.percentile

dec.list.percentile(List  -  LIST(De,B.I,I), Percentile  -  De,B.I,I)

Returns the Percentile of a list of number. With a Percentile of value X, the formula must return the element of the list compared to which at least X% of the elements have a lower value.

Parameters :

List  -  LIST(De,B.I,I)

Specify list to process

Percentile  -  De,B.I,I

Specify the Percentile (from 0 to 100)

Return : De

  • The value of the list represented by the percentile without null and NaN value

  • Null if list contains only null and NaN

Examples :

dec.list.percentile(  [ 1.2 , 1.3 , 1.4 , 1.5 ],  25  )  =  1.2

dec.list.percentile(  [ 1.2 , 1.3 , 1.4 , 1.5 ],  80  )  =  1.5

dec.list.percentile(  [ 1 , null ],  0  )  =  1

dec.list.percentile(  [ NaN , null ],  0  )  =  null

dec.list.position

dec.list.position(List  -  LIST(De,I,B.I), Value  -  De,I,B.I)

Returns the position in the list of the value of argument 2. Returns -1 if argument 2 is absent.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Value  -  De,I,B.I

Number to search in the list

Return : I

  • The position in the list of the searched value

  • The first element of the list at Index 0

  • Is -1 if the searched element is not in the list

Examples :

dec.list.position(  [ 1.2 , 1.3 ],  1  )  =  -1

dec.list.position(  [ 1.2 , 2.3 , 3.4 , 4.5 , 5.6 ],  4.5  )  =  3

dec.list.position(  [ 1.2 , null ],  null  )  =  1

dec.list.remove

dec.list.remove(List  -  LIST(De,B.I,I), Value  -  De,B.I,I)

Removes all occurrences of a Decimal in a list of Decimals.

Parameters :

List  -  LIST(De,B.I,I)

Specify list to process

Value  -  De,B.I,I

Value to remove

Return : LIST(De)

  • Returns a copy of the specified list of Decimals from which all occurrences of the Decimal given as parameter have been removed

  • If the Decimal given as parameter is null or empty, returns a copy of the specified list of Decimals from which all occurrences of the value null or empty have been removed

  • If the specified list of Decimals is empty, returns an empty list

  • If the specified list of Decimals is null, returns null

Examples :

dec.list.remove(  [ 1.3 , 2.9 , 2.1 , 3 , 2.1 ],  2.1  )  =  [ 1.3 , 2.9 , 3 ]

dec.list.remove(  [ null , 99.99 , null , 0.5 ],  null  )  =  [ 99.99 , 0.5 ]

dec.list.remove(  [ null , 1 , 1 , 0.001 ],  0.001  )  =  [ null , 1 , 1 ]

dec.list.remove(  [ ],  1  )  =  [ ]

dec.list.remove_extend

dec.list.remove_extend(List  -  LIST(De,B.I,I), List  -  ARGS(De,B.I,I))

Removes all occurrences of multiple Decimals in a list of Decimals.

Parameters :

List  -  LIST(De,B.I,I)

Specify list to process

List  -  ARGS(De,B.I,I)

Specify list of values to remove

Return : LIST(De)

  • Returns a copy of the specified list of Decimals from which all occurrences of the multiple Decimals given as parameters have been removed

  • If one of the Decimals given as parameter is null or empty, returns a copy of the specified list of Decimals from which all occurrences of the value null or empty have been removed

  • If the specified list of Decimal is empty, returns an empty list

  • If the specified list of Decimal is null, returns null

Examples :

dec.list.remove_extend(  [ 1.3 , 2.9 , 2.1 , 3 , 2.1 ],  [ 2.1 , 2.9 , 65.235 ]  )  =  [ 1.3 , 3 ]

dec.list.remove_extend(  [ null , 99.99 , null , 0.5 ],  [ null ]  )  =  [ 99.99 , 0.5 ]

dec.list.remove_extend(  [ null , 1 , 1 , 0.001 ],  [ 0.001 ]  )  =  [ null , 1 , 1 ]

dec.list.remove_extend(  [ ],  [ 1 ]  )  =  [ ]

dec.list.replace

dec.list.replace(List  -  LIST(De,B.I,I), Number  -  De,B.I,I, Number  -  De,B.I,I)

Replaces all occurrences of a Decimal in a list of Decimals.

Parameters :

List  -  LIST(De,B.I,I)

Specify list to process

Number  -  De,B.I,I

Value to replace

Number  -  De,B.I,I

Replacement value

Return : LIST(De)

  • Returns a copy of the specified list of Decimals from which all occurrences of the Decimal given as parameter have been replaced by the requested value

  • If the Decimal to be replaced is null or empty, returns a copy of the specified list of Decimals from which all occurrences of the value null or empty, have been replaced by the requested value

  • If the specified list of Decimals is empty, returns an empty list

  • If the specified list of Decimals is null, returns an empty list

Examples :

dec.list.replace(  [ 1.3 , 2.9 , 2.1 , 3 , 2.1 ],  2.199  )  =  [ 1.3 , 2.9 , 99 , 3 , 99 ]

dec.list.replace(  [ null , 99.99 , null , 0.5 ],  null1.123  )  =  [ 1.123 , 99.99 , 1.123 , 0.5 ]

dec.list.replace(  [ null , 1 , 1 , 0.001 ],  0.001null  )  =  [ null , 1 , 1 , null ]

dec.list.replace(  [ ],  11  )  =  [ ]

dec.list.replace_extend

dec.list.replace_extend(List  -  LIST(De,B.I,I), List  -  ARGS(De,B.I,I), List  -  ARGS(De,B.I,I))

Replaces all occurrences of multiple Decimals in a list of Decimals. All replacements are done simultaneously. The correspondence between the value to be replaced and the replacement value is done according to the index of the values in the parameter list. If the same value appears multiple times among the values to be replaced, it will always be replaced by the replacement value associated with its first occurrence in the list.

Parameters :

List  -  LIST(De,B.I,I)

Specify list to process

List  -  ARGS(De,B.I,I)

Specify list of values to replace

List  -  ARGS(De,B.I,I)

Specify list of replacement values

Return : LIST(De)

  • Returns a copy of the specified list of Decimals from which all occurrences of the multiple Decimals given as parameters have been replaced by the given replacement values

  • If one of the Decimals given as parameter is null or empty, every occurrences of the value null or empty will be replaced by the corresponding replacement values

  • If the list of values to be replaced and the list of replacement values have different sizes, returns the list of values unmodified

  • If the list of values to be replaced or the list of replacement values is null or is an empty list, returns the list of values unmodified

  • If the specified list of Decimals is empty, returns an empty list

  • If the specified list of Decimals is null, returns an empty list

Examples :

dec.list.replace_extend(  [ 1.3 , 2.9 , 2.1 , 3 , 2.1 ],  [ 2.1 , 2.9 , 99 ],  [ 2 , -3.5 , 999.99 ]  )  =  [ 1.3 , -3.5 , 2 , 3 , 2 ]

dec.list.replace_extend(  [ 15.5 , 3 , 2.1 ],  [ 2.1 , 2.9 , 99 ],  [ 2 ]  )  =  [ 15.5 , 3 , 2.1 ]

dec.list.replace_extend(  [ null , 1 , 1 , 0.001 ],  [ ],  [ ]  )  =  [ null , 1 , 1 , 0.001 ]

dec.list.replace_extend(  [ ],  [ 1 ],  [ 1 ]  )  =  [ ]

dec.list.sort

dec.list.sort(List  -  LIST(De,I,B.I))

Sort ascending list of numbers.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to sort

Return : LIST(De)

  • The list sorted by ascending number

  • Null values are placed at the beginning of the list

Examples :

dec.list.sort(  [ 1.2 , -1.3 , 4.5 , 9 , 8.999 , 0 ]  )  =  [ -1.3 , 0 , 1.2 , 4.5 , 8.999 , 9 ]

dec.list.sort(  [ 1.2 , null ]  )  =  [ null , 1.2 ]

dec.list.sum

dec.list.sum(List  -  LIST(De,I,B.I))

Returns sum of a list of number.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to add

Return : De

  • The value of the sum of all numbers in the list without taking into account null values

Examples :

dec.list.sum(  [ 1.2 , 1.3 , 1.4 , 1.5 ]  )  =  5.4

dec.list.sum(  [ 1.2 , 1.3 , 1.4 , 1.5 , NaN ]  )  =  5.4

dec.list.to_bigint

dec.list.to_bigint(List  -  LIST(De,I,B.I))

Transforms a list of Decimal into a list of Big Integer.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(B.I)

  • The list of number in big integer format list

  • Null if parameter is null

Examples :

dec.list.to_bigint(  [ 1.2 , -1.3 ]  )  =  [ 1 , -1 ]

dec.list.to_bigint(  [ 1.2 , null ]  )  =  [ 1 , null ]

dec.list.to_int

dec.list.to_int(List  -  LIST(De,I,B.I))

Transforms a list of Decimal into a list of Integer.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(I)

  • The list of number in integer format list

  • Null if parameter is null

Examples :

dec.list.to_int(  [ 1.2 , -1.3 ]  )  =  [ 1 , -1 ]

dec.list.to_int(  [ 1.2 , null ]  )  =  [ 1 , null ]

dec.list.to_str

dec.list.to_str(List  -  LIST(De,I,B.I))

Transforms a list of Decimal into a list of String.

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Return : LIST(S)

  • The list of number in string format list

  • Null if parameter is null

Examples :

dec.list.to_str(  [ 1.2 , -1.3 ]  )  =  [ "1.2" , "-1.3" ]

dec.list.to_str(  [ 1.2 , null ]  )  =  [ "1.2" , null ]

dec.list.union

dec.list.union(First list  -  LIST(De,I,B.I), Second list  -  LIST(De,I,B.I))

Union of two Decimals lists.

Parameters :

First list  -  LIST(De,I,B.I)

Specify first list of numbers

Second list  -  LIST(De,I,B.I)

Specify second list of numbers

Return : LIST(De)

  • The list containing the numbers of both lists together

Examples :

dec.list.union(  [ 1.2 , 2.3 , 3.4 ],  [ 4.5 , 5.6 ]  )  =  [ 1.2 , 2.3 , 3.4 , 4.5 , 5.6 ]

dec.list.union(  [ 1.2 , -1.2 , 1.2 ],  [ null ]  )  =  [ 1.2 , -1.2 , 1.2 , null ]

dec.log

dec.log(Value  -  De,I,B.I)

Returns Natural Log (ln) of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The natural log of parameter

  • Null if parameter is null

  • NaN if parameter is NaN

Examples :

dec.log10  )  =  2.302585092994046

dec.log0  )  =  null

dec.log_10

dec.log_10(Value  -  De,I,B.I)

Returns base 10 Log of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The log base 10 of parameter

  • Null if parameter is null

  • NaN if parameter is NaN

Examples :

dec.log_1010  )  =  1

dec.log_100  )  =  null

dec.log_10null  )  =  null

dec.log_2

dec.log_2(Value  -  De,I,B.I)

Returns base 2 Log of a value.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The log base 2 of parameter

  • Null if parameter is null

  • NaN if parameter is NaN

Examples :

dec.log_26  )  =  2.584962500721156

dec.log_20  )  =  null

dec.max

dec.max(List  -  ARGS(De,I,B.I))

Returns the maximum value of a list of Decimals.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The maximum value of all arguments in the list without taking nulls into account

  • Null if all parameters are empty or null

Examples :

dec.max(  [ 1 , 33.6 , 1.4 ]  )  =  33.6

dec.mean

dec.mean(List  -  ARGS(De,I,B.I))

Returns the mean of a list of Decimal arguments.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The mean of all given arguments

  • Null if parameter is null

  • Null if the result of the operation is NaN

Examples :

dec.mean(  [ 1 , null , 1.4 ]  )  =  null

dec.mean(  [ 2 , 5 , 3 , 4 ]  )  =  3.5

dec.median

dec.median(List  -  ARGS(De,I,B.I))

Returns the median of a list of Decimal arguments.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The median of all the arguments in the list

  • Null if parameter is null

  • Null if all parameters are empty

  • ,Null if the result of the operation is NaN

Examples :

dec.median(  [ 1 , null , 1.4 ]  )  =  null

dec.median(  [ 2 , 5 , 3 , 4 ]  )  =  3.5

dec.min

dec.min(List  -  ARGS(De,I,B.I))

Returns the minimum value of a list of Decimals.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The maximum value of all arguments in the list without taking nulls into account

  • Null if all parameters are empty or null

Examples :

dec.min(  [ 1 , 33.6 , 1.4 ]  )  =  1

dec.mult

dec.mult(List  -  ARGS(De,I,B.I))

Returns the multiplication of all elements of a list of Decimals.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The multiplication of the list all arguments

  • Null if parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

dec.mult(  [ 1 , null , 1.4 ]  )  =  null

dec.mult(  [ 2 , 0.5 , 3 , 4 ]  )  =  12

dec.nan_to_null

dec.nan_to_null(Value  -  De,I,B.I)

Replace NaN with Null.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The value of parameter if not NaN

  • Null if parameter is null

  • Null if parameter is NaN

Examples :

dec.nan_to_null4  )  =  4

dec.nan_to_nullNaN  )  =  null

dec.nan_to_nullnull  )  =  null

dec.power

dec.power(Value  -  De,I,B.I, Power Value  -  De,I,B.I)

Returns power of a Decimal.

Parameters :

Value  -  De,I,B.I

Specify value to process

Power Value  -  De,I,B.I

Specify Power Value

Return : De

  • The value of parameter at the specified power

  • Null if parameter or the power is null

Examples :

dec.power42  )  =  16

dec.power0.51  )  =  0.5

dec.power0.250  )  =  1

dec.powernullnull  )  =  null

dec.power1null  )  =  null

dec.rad_to_degree

dec.rad_to_degree(Value  -  De,I,B.I)

Transforms radians into degrees.

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : De

  • The value of the conversion from radian to degree

  • Null if parameter is null

Examples :

dec.rad_to_degree0  )  =  0

dec.rad_to_degree1.57079632679  )  =  89.99999999971945

dec.rad_to_degreenull  )  =  null

dec.rate_variation

dec.rate_variation(Initial Value  -  De,I,B.I, Final value  -  De,I,B.I, Precision  -  I, Format of the result  -  CHOICE(B))

Returns a rate of change between two values.

Parameters :

Initial Value  -  De,I,B.I

Specify Initial value

Final value  -  De,I,B.I

Specify Final value

Precision  -  I

Specify Precision of result

Format of the result  -  CHOICE(B)

Format of the result (Ratio or percentage)

Return : De

  • The value of percentage ((initial value)*100)/(final value)

  • The value of ratio (final value - initial value)/(initial value)

  • Null if one of value is null

  • The precision of result is defined by the entered parameter

Examples :

dec.rate_variation1.22.42false  )  =  100

dec.rate_variation1.22.42true  )  =  1

dec.rate_variation1.23.62false  )  =  200

dec.rate_variationnullnull0true  )  =  null

dec.replace_null

dec.replace_null(Value  -  De,I,B.I, Number replacing Null  -  De,I,B.I)

Replaces a Null value by a Decimal.

Parameters :

Value  -  De,I,B.I

Specify value to process

Number replacing Null  -  De,I,B.I

Specify number that replaces Null value

Return : De

  • The specified value if the value is null, otherwise keep the initial value

Examples :

dec.replace_nullnull2.1  )  =  2.1

dec.replace_null72.1  )  =  7

dec.replace_nullNaN2  )  =  NaN

dec.round

dec.round(Value  -  De,I,B.I, Rounding accuracy  -  I)

Performs rounding of Decimal by indicating precision of rounding.

Parameters :

Value  -  De,I,B.I

Value to process

Rounding accuracy  -  I

Specify rounding accuracy

Return : De

  • The value rounded, to the specified precision, of the parameter’s number

  • Null if parameter is null

Examples :

dec.round1.20  )  =  1

dec.round1.60  )  =  2

dec.roundnull2  )  =  null

dec.sign

dec.sign(Value  -  De,I,B.I)

Extract sign of a number

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • 0 if value is 0

  • -1 if value is negative

  • 1 if value is positive

  • Null if parameter is null

Examples :

dec.sign1.2  )  =  1

dec.sign0  )  =  0

dec.sign-2.123  )  =  -1

dec.signnull  )  =  null

dec.sinus

dec.sinus(Value  -  De,I,B.I)

Returns the Sine of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The sine value of parameter

  • Null if parameter is null

Examples :

dec.sinus0  )  =  0

dec.sinusnull  )  =  null

dec.sinus_hyperb

dec.sinus_hyperb(Value  -  De,I,B.I)

Returns Hyperbolic Sine of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The hyperbolic sine value of parameter

  • Null if parameter is null

Examples :

dec.sinus_hyperb0  )  =  0

dec.sinus_hyperbnull  )  =  null

dec.sinus_invers

dec.sinus_invers(Value  -  De,I,B.I)

Returns inverse of Sinus of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The inverse of parameter’s sine

  • Null if parameter is null

Examples :

dec.sinus_invers0  )  =  0

dec.sinus_inversnull  )  =  null

dec.square

dec.square(Value  -  De,I,B.I)

Returns Square Root of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The square root of parameter

  • Null if parameter is null

Examples :

dec.square4  )  =  2

dec.square-4  )  =  NaN

dec.square0.25  )  =  0.5

dec.squarenull  )  =  null

dec.sum

dec.sum(List  -  ARGS(De,I,B.I))

Returns the sum of a list of Decimals.

Parameters :

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • The sum of the list all arguments

  • Null if one of the parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

dec.sum(  [ 1 , 1.2 , 1.4 ]  )  =  3.6

dec.sum(  [ -1.3 , 1.4 , -1.5 ]  )  =  -1.4

dec.tangent

dec.tangent(Value  -  De,I,B.I)

Returns Tangent of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The tangent value of parameter

  • Null if parameter is null

Examples :

dec.tangent0  )  =  0

dec.tangentnull  )  =  null

dec.tangent_hyperb

dec.tangent_hyperb(Value  -  De,I,B.I)

Returns Hyperbolic tangent of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The hyperbolic tangent value of parameter

  • Null if parameter is null

Examples :

dec.tangent_hyperb0  )  =  0

dec.tangent_hyperbnull  )  =  null

dec.tangent_invers

dec.tangent_invers(Value  -  De,I,B.I)

Returns inverse of Tangent of a value.

Parameters :

Value  -  De,I,B.I

Value to process

Return : De

  • The inverse of parameter’s tangent

  • Null if parameter is null

Examples :

dec.tangent_invers0  )  =  0

dec.tangent_inversnull  )  =  null

dec.to_bigint

dec.to_bigint(Value  -  De,I,B.I)

Transforms a Decimal into a Big Integer.

Parameters :

Value  -  De,I,B.I

Specify value to transform

Return : B.I

  • The truncated value in BigInteger format

  • Null if the parameter is null

Examples :

dec.to_bigint1.2  )  =  1

dec.to_bigint-1.8  )  =  -1

dec.to_bigintNaN  )  =  null

dec.to_int

dec.to_int(Value  -  De,I,B.I)

Transforms a Decimal into an Integer (truncated value).

Parameters :

Value  -  De,I,B.I

Specify value to transform

Return : I

  • The truncated value in Integer format

  • Null if the parameter is null

Examples :

dec.to_int1.2  )  =  1

dec.to_int-1.8  )  =  -1

dec.to_intNaN  )  =  null

dec.to_str

dec.to_str(Value  -  De,I,B.I)

Transform a Decimal to a String.

Parameters :

Value  -  De,I,B.I

Specify value to transform

Return : S

  • The value of a number in String format

  • Null if the parameter is null

Examples :

dec.to_str1.2  )  =  "1.2"

dec.to_str-1.8  )  =  "-1.8"

dec.to_strNaN  )  =  null

Formulas for Integer numbers

int.abs

int.abs(Value  -  I)

Returns absolute value of an Integer.

Parameters :

Value  -  I

Input the Integer for which we are looking for absolute value

Return : I

  • The absolute value of parameter

  • Null if parameter is null

Examples :

int.abs2  )  =  2

int.abs-1  )  =  1

int.absnull  )  =  null

int.create

int.create(Value  -  I)

Create an Integer from an entered value.

Parameters :

Value  -  I

Specify the value to transform into an Integer number

Return : I

  • The entered value in big integer format

  • null if parameter is null

  • Null if the value is not an Integer

Examples :

int.create20  )  =  20

int.createnull  )  =  null

int.date_from_xls

int.date_from_xls(Serial number  -  I, Timezone  -  CHOICE(S))

Returns an ISO 8601 DateTime corresponding to the serial number of Excel’s 1900 date system (number of days that have elapsed since 1st January 1900) in the requested TimeZone.

Parameters :

Serial number  -  I

Enter the serial number in Excel’s 1900 date system that corresponds to the desired date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Returns the date corresponding to the serial number entered by the user in the requested TimeZone

  • Returns null if the serial number entered is strictly less than 1

  • Returns null if the serial number entered is null ou vide

Examples :

int.date_from_xls"1""UTC"  )  =  1900-01-01T00:00:00Z

int.date_from_xls"43880""Europe/Paris"  )  =  2020-02-18T23:00:00Z

int.diff

int.diff(List  -  ARGS(I))

Returns the difference between all elements of a list of Integers.

Parameters :

List  -  ARGS(I)

Specify list to process

Return : I

  • The difference between all the arguments in the list

  • Null if one of the parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

int.diff(  [ 1 , 4 , 2 , 3 ]  )  =  -8

int.diff(  [ 1 , null ]  )  =  null

int.generate

int.generate(Increment  -  I, Start  -  I, End  -  I)

Generates a list of Integer from start number by adding increment until value is less or equal than end number.

Parameters :

Increment  -  I

Input the value of the increment

Start  -  I

Specify the increment start integer

End  -  I

Specify the increment end integer

Return : LIST(I)

  • The list of integer starting from the start by adding the increment until the value is less than or equal to the end number

  • An empty list if increment < = 0 or is null

Examples :

int.generate204  )  =  [ 0 , 2 , 4 ]

int.generate3010  )  =  [ 0 , 3 , 6 , 9 ]

int.generatenull12  )  =  [ ]

int.if

int.if(Rule  -  B, Value if true  -  I, Integer if false  -  I)

Checks if condition is met and returns an Integer if result of the condition you specified is True, and an another Integer if result is False.

Parameters :

Rule  -  B

Specify condition to process

Value if true  -  I

Returned integer if test is true

Integer if false  -  I

Returned integer if test is false

Return : I

  • The Integer of argument 2 if the condition is true, otherwise the Integer of argument 3

  • Null if the condition is null

int.is_even

int.is_even(Value  -  I)

Checks if an Integer is even.

Parameters :

Value  -  I

Input a integer

Return : B

  • True if integer is even, otherwise false

  • Null if the condition is null

Examples :

int.is_even-1  )  =  false

int.is_even0  )  =  true

int.is_evennull  )  =  null

int.is_odd

int.is_odd(Value  -  I)

Checks if an Integer is odd.

Parameters :

Value  -  I

Input a integer

Return : B

  • True if integer is odd, otherwise false

  • Null if the condition is null

Examples :

int.is_odd-1  )  =  true

int.is_odd0  )  =  false

int.is_oddnull  )  =  null

int.list.as_str

int.list.as_str(List  -  LIST(I))

Transforms a list of Integer into a String.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : S

  • The list of integer into string

  • Null values in the list will be transformed into a null character string

Examples :

int.list.as_str(  [ 1 , 4 , 2 , 3 ]  )  =  "[1, 4, 2, 3]"

int.list.as_str(  [ ]  )  =  null

int.list.as_str(  [ null , 1 ]  )  =  "[null, 1]"

int.list.compact

int.list.compact(List  -  LIST(I))

Removes Null values from the list of Integer.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : LIST(I)

  • The list of integer without null value

Examples :

int.list.compact(  [ 1 , 2 , 3 ]  )  =  [ 1 , 2 , 3 ]

int.list.compact(  [ null , 5 , null ]  )  =  [ 5 ]

int.list.contains

int.list.contains(List  -  LIST(I), Number  -  I)

Checks if searched Integer is present in the list of Integer.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Number  -  I

Integer to search list of integer

Return : B

  • True if the searched number is present in the list of integers, otherwise false

Examples :

int.list.contains(  [ 1 , 2 ],  1  )  =  true

int.list.contains(  [ null , 5 ],  null  )  =  true

int.list.contains(  [ ],  null  )  =  false

int.list.count.distinct

int.list.count.distinct(List  -  LIST(I))

Returns a list of key values containing the distinct values and their occurrence in the list of Integer.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : LIST(S)

  • The list in JSON form containing in key, an integer from the list and in value, the number of occurrences of this integer in the list

  • Null if parameter is null

Examples :

int.list.count.distinct(  [ 1 , 2 , 1 ]  )  =  [{"value":2,"count":1},{"value":1,"count":2}]

int.list.count.distinct(  [ 1 , 2 , 3 ]  )  =  [{"value":2,"count":1},{"value":3,"count":1},{"value":1,"count":1}]

int.list.create

int.list.create(Values  -  ARGS(I))

Creation of a list of Integer.

Parameters :

Values  -  ARGS(I)

Input a integer to add (the ARGS function allows you to add n arguments)

Return : LIST(I)

  • The list of integers containing values entered in parameter

  • Null if parameter is null

int.list.diff

int.list.diff(First list  -  LIST(I), Second list  -  LIST(I))

Returns the list of Integer thats different between two Integer lists.

Parameters :

First list  -  LIST(I)

Specify first list of integer

Second list  -  LIST(I)

Specify second list of integer

Return : LIST(I)

  • The list of integers that are present in the first list and absent from the second list (null is a value)

Examples :

int.list.diff(  [ 1 , 1 ],  [ 1 , 2 ]  )  =  [ 1 , 2 ]

int.list.diff(  [ 1 , null ],  [ 1 , 1 ]  )  =  [ null , 1 ]

int.list.diff(  [ 1 , null , 1 ],  [ 1 , null ]  )  =  [ 1 ]

int.list.distinct

int.list.distinct(List  -  LIST(I))

Returns distinct values (unique values) from a list of Integer.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : LIST(I)

  • The list containing only the distinct values of the entered list

Examples :

int.list.distinct(  [ 1 , 1 ]  )  =  [ 1 ]

int.list.distinct(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 4 , 2 , 3 ]

int.list.distinct(  [ 1 , null , null ]  )  =  [ 1 , null ]

int.list.except

int.list.except(First list  -  LIST(I), Second list  -  LIST(I))

Returns the Integer list, from the first list that are not in the second list.

Parameters :

First list  -  LIST(I)

Specify first list of integer

Second list  -  LIST(I)

Specify second list of integer

Return : LIST(I)

  • The list of all numbers from the first list that are not in the second list

Examples :

int.list.except(  [ 1 , 2 , 3 , 4 , 5 , 3 ],  [ 1 , 2 , 4 , 5 , 1 , 3 ]  )  =  [ ]

int.list.except(  [ 1 , null , 3 ],  [ 1 , 2 ]  )  =  [ null , 3 ]

int.list.except(  [ 4 ],  [ 1 , 2 , null ]  )  =  [ 4 ]

int.list.flat

int.list.flat(List  -  LIST(I))

Transforms an array of arrays into a single array.

Parameters :

List  -  LIST(I)

Specify list of lists to process

Return : LIST(I)

  • The list containing all the integers contained in all lists

int.list.get

int.list.get(List  -  LIST(I), Index  -  I)

Extract an Integer in a list by specifying index (the first element of the list at index 0)

Parameters :

List  -  LIST(I)

Specify list of integer to process

Index  -  I

Specify index to extract from list

Return : I

  • The integer of the list at the indicated index

  • The first value has index 0

  • Null if index is outside list size

Examples :

int.list.get(  [ 1 , 2 , 3 , 4 ],  3  )  =  4

int.list.get(  [ 1 , 2 ],  5  )  =  null

int.list.get(  [ 1 , null , 1 ],  1  )  =  null

int.list.insert

int.list.insert(List  -  LIST(I), Position  -  I, Value  -  I)

Inserts an Integer into a list of Integer values at the specified position (numbered from 1 and from right to left if negative). Adds null values if necessary to reach the desired position and returns the new, modified list.

Parameters :

List  -  LIST(I)

Specify list of integers to process

Position  -  I

Specify the insertion position in list

Value  -  I

Specify the Integer to insert in the list

Return : LIST(I)

  • Returns a new list with the specified element inserted at the given position. The first position is 1 and numbering is from right to left when the given position is negative.

  • Returns a new list with nulls as padding values when the specified position exceeds the list size

  • Returns a new list with null inserted at the required position if null is the value to be inserted in the list

  • Returns an empty list if the list to be processed is not specified

  • Returns an empty list if position is 0, null or empty

Examples :

int.list.insert(  [ 1 , 1 ],  15  )  =  [ 5 , 1 , 1 ]

int.list.insert(  [ 1 ],  34  )  =  [ 1 , null , 4 ]

int.list.intersect

int.list.intersect(First list  -  LIST(I), Second list  -  LIST(I))

Returns the list of Integer in common between two Integer lists (can contain the same value several times).

Parameters :

First list  -  LIST(I)

Specify first list of integer

Second list  -  LIST(I)

Specify second list of integer

Return : LIST(I)

  • The list with the values which are common to the two lists, can contain the same value several times in case of occurrence of the value in the lists

Examples :

int.list.intersect(  [ 1 ],  [ 1 , 1 ]  )  =  [ 1 ]

int.list.intersect(  [ 5 ],  [ 5 , 2 , -3 ]  )  =  [ 5 ]

int.list.intersect(  [ 5 , 0 , null , 2 ],  [ 5 , 2 , -3 , null ]  )  =  [ null , 2 , 5 ]

int.list.max

int.list.max(List  -  LIST(I))

Returns the largest Integer from a list of Integer. Does not take into account null.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : I

  • The largest integer in the list without taking null values into account

Examples :

int.list.max(  [ 1 , 4 , 2 , 3 ]  )  =  4

int.list.max(  [ 1 , null ]  )  =  1

int.list.max(  [ null , null ]  )  =  null

int.list.max_occur

int.list.max_occur(List  -  LIST(I))

Gives the most represented Integer (or a list in egality case).

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : LIST(I)

  • The most present integer in the processed list.

  • The list of integer if several values are most represented in the list

Examples :

int.list.max_occur(  [ 1 , 1 , 1 , 1 , 2 ]  )  =  [ 1 ]

int.list.max_occur(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 2 , 3 , 4 ]

int.list.max_occur(  [ 1 , null , null ]  )  =  [ 1 ]

int.list.min

int.list.min(List  -  LIST(I))

Returns the smallest integer from a list of Integer. Does not take into account null.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : I

  • Smallest integer in a list of Integers without taking null values into account

Examples :

int.list.min(  [ 1 , 4 , 2 , 3 ]  )  =  1

int.list.min(  [ 1 , null ]  )  =  1

int.list.min(  [ null , null ]  )  =  null

int.list.min_occur

int.list.min_occur(List  -  LIST(I))

Gives the least represented number in a list of Integer (or a list in egality case).

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : LIST(I)

  • The integer of the list least present in the list

  • The list of integer if several values are least represented in the list

Examples :

int.list.min_occur(  [ 1 , 1 , 1 , 1 , 2 ]  )  =  [ 2 ]

int.list.min_occur(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 2 , 3 , 4 ]

int.list.min_occur(  [ 1 , null , null ]  )  =  [ 1 ]

int.list.position

int.list.position(List  -  LIST(I), Value  -  I)

Returns the position in the list of the value of argument 2. Returns -1 if argument 2 is absent. The first element in the list has position 0

Parameters :

List  -  LIST(I)

Specify list of integer to process

Value  -  I

Integer to search in the list

Return : I

  • The position in the list of the searched value

  • The first element of the list at index 0

  • Is -1 if the searched element is not in the list

Examples :

int.list.position(  [ 1 , 1 ],  1  )  =  0

int.list.position(  [ 1 , 2 , 3 , 4 ],  5  )  =  -1

int.list.position(  [ 1 , 2 , 3 , 4 , 5 ],  4  )  =  3

int.list.position(  [ 1 , null ],  null  )  =  1

int.list.remove

int.list.remove(List  -  LIST(I), Value  -  I)

Removes all occurrences of an Integer in a list of Integers.

Parameters :

List  -  LIST(I)

Specify list to process

Value  -  I

Value to remove

Return : LIST(I)

  • Returns a copy of the specified list of Integers from which all occurrences of the Integer given as parameter have been removed

  • If the Integer given as parameter is null or empty, returns a copy of the specified list of Integers from which all occurrences of the value null or empty have been removed

  • If the specified list of Integers is empty, returns an empty list

  • If the specified list of Integers is null, returns null

Examples :

int.list.remove(  [ 1 , 2 , 2 , 3 , 2 ],  2  )  =  [ 1 , 3 ]

int.list.remove(  [ null , 99 , null , 0 ],  null  )  =  [ 99 , 0 ]

int.list.remove(  [ null , 1 , 1 , 0 ],  10  )  =  [ null , 1 , 1 , 0 ]

int.list.remove(  [ ],  1  )  =  [ ]

int.list.remove_extend

int.list.remove_extend(List  -  LIST(I), List  -  ARGS(I))

Removes all occurrences of multiple Integers in a List of Integers.

Parameters :

List  -  LIST(I)

Specify list to process

List  -  ARGS(I)

Specify list of values to remove

Return : LIST(I)

  • Returns a copy of the specified list of Integers from which all occurrences of the multiple Integers given as parameters have been removed

  • If one of the Integers given as parameter is null or empty, returns a copy of the specified list of Integers from which all occurrences of the value null or empty have been removed

  • If the specified list of Integers is empty, returns an empty list

  • If the specified list of Integers is null, returns null

Examples :

int.list.remove_extend(  [ 4 , 1 , 2 , 2 , 3 , 2 ],  [ 2 , 4 , 6 ]  )  =  [ 1 , 3 ]

int.list.remove_extend(  [ null , 99 , null , 0 ],  [ null , -5 ]  )  =  [ 99 , 0 ]

int.list.remove_extend(  [ null , 1 , 1 , 0 ],  [ 0 ]  )  =  [ null , 1 , 1 ]

int.list.remove_extend(  [ ],  [ 1 ]  )  =  [ ]

int.list.replace

int.list.replace(List  -  LIST(I), Number  -  I, Number  -  I)

Replaces all occurrences of an Integer in a list of Integers.

Parameters :

List  -  LIST(I)

Specify list to process

Number  -  I

Value to replace

Number  -  I

Replacement value

Return : LIST(I)

  • Returns a copy of the specified list of Integers from which all occurrences of the Integer given as parameter have been replaced by the requested value

  • If the Integer to be replaced is null or empty, returns a copy of the specified list of Integers from which all occurrences of the value null or empty have been replaced by the requested value

  • If the specified list of Integers is empty, returns an empty list

  • If the specified list of Integers is null, returns an empty list

Examples :

int.list.replace(  [ 1 , 2 , 2 , 3 , -2 ],  2-2  )  =  [ 1 , -2 , -2 , 3 , -2 ]

int.list.replace(  [ null , 1 , null , 2 ],  null0  )  =  [ 0 , 1 , 0 , 2 ]

int.list.replace(  [ null , 1 , 2 , 0 ],  0null  )  =  [ null , 1 , 2 , null ]

int.list.replace(  [ ],  1-1  )  =  [ ]

int.list.replace_extend

int.list.replace_extend(List  -  LIST(I), List  -  ARGS(I), List  -  ARGS(I))

Replaces all occurrences of multiple Integers in a list of Integers. All replacements are done simultaneously. The correspondence between the value to be replaced and the replacement value is done according to the index of the values in the parameter list. If the same value appears multiple times among the values to be replaced, it will always be replaced by the replacement value associated with its first occurrence in the list.

Parameters :

List  -  LIST(I)

Specify list to process

List  -  ARGS(I)

Specify list of values to replace

List  -  ARGS(I)

Specify list of replacement values

Return : LIST(I)

  • Returns a copy of the specified list of Integers from which all occurrences of the multiple Integers given as parameters have been replaced by the given replacement values

  • If one of the Integers given as parameter is null or empty, every occurrences of the value null or empty will be replaced by the corresponding replacement values

  • If the list of values to be replaced and the list of replacement values have different sizes, returns the list of values unmodified

  • If the list of values to be replaced or the list of replacement values is null or is an empty list, returns the list of values unmodified

  • If the specified list of Integers is empty, returns an empty list

  • If the specified list of Integers is null, returns an empty list

Examples :

int.list.replace_extend(  [ 1 , 2 , 3 , 3 , -2 ],  [ 2 , 3 , 99 ],  [ -2 , -3 , -99 ]  )  =  [ 1 , -2 , -3 , -3 , -2 ]

int.list.replace_extend(  [ 1 , 2 , 3 , 3 , -2 ],  [ 2 , 2 , 2 ],  [ -2 , -3 , -99 ]  )  =  [ 1 , -2 , 3 , 3 , -2 ]

int.list.replace_extend(  [ 1 , 2 , 3 ],  [ 2 , 20 , 200 ],  [ -2 ]  )  =  [ 1 , 2 , 3 ]

int.list.replace_extend(  [ null , 1 , 1 , 0 ],  [ ],  [ ]  )  =  [ null , 1 , 1 , 0 ]

int.list.replace_extend(  [ ],  [ 1 ],  [ -1 ]  )  =  [ ]

int.list.sort

int.list.sort(List  -  LIST(I))

Realises ascending sorting of a list of Integer

Parameters :

List  -  LIST(I)

Specify list to sort

Return : LIST(I)

  • The list sorted by ascending element value

  • Null values are placed at the beginning of the list

Examples :

int.list.sort(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 2 , 3 , 4 ]

int.list.sort(  [ 1 , null ]  )  =  [ null , 1 ]

int.list.sum

int.list.sum(List  -  LIST(I))

Returns sum of a list of Integer.

Parameters :

List  -  LIST(I)

Specify list to add

Return : I

  • The value of the sum of the elements in the list without taking into account null values

Examples :

int.list.sum(  [ 1 , 4 , 2 , 3 ]  )  =  10

int.list.sum(  [ 1 , null ]  )  =  1

int.list.to_bigint

int.list.to_bigint(List  -  LIST(I))

Transforms a list of Integer into a list of Big integer.

Parameters :

List  -  LIST(I)

Specify list of integer to process

Return : LIST(B.I)

  • The list of integer into a list of big integer

  • Null if parameter is null

Examples :

int.list.to_bigint(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 4 , 2 , 3 ]

int.list.to_dec

int.list.to_dec(List  -  LIST(I))

Transforms a list of Integer into a list of Decimals.

Parameters :

List  -  LIST(I)

Specify list to process

Return : LIST(De)

  • The list of integer into decimal list

  • Null if parameter is null

Examples :

int.list.to_dec(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 4 , 2 , 3 ]

int.list.to_str

int.list.to_str(List  -  LIST(I))

Transforms a list of Integer into a list of String.

Parameters :

List  -  LIST(I)

Specify list to process

Return : LIST(S)

  • The list of integer in string format list

  • Null if parameter is null

Examples :

int.list.to_str(  [ 1 , 4 , 2 , 3 ]  )  =  [ "1" , "4" , "2" , "3" ]

int.list.union

int.list.union(First list  -  LIST(I), Second list  -  LIST(I))

Union of two lists of Integer.

Parameters :

First list  -  LIST(I)

Specify first list of integer

Second list  -  LIST(I)

Specify second list of integer

Return : LIST(I)

  • The list containing the numbers of both lists together

Examples :

int.list.union(  [ 5 ],  [ 5 , 2 , -3 ]  )  =  [ 5 , 5 , 2 , -3 ]

int.list.union(  [ 1 , null ],  [ null ]  )  =  [ 1 , null , null ]

int.max

int.max(List  -  ARGS(I))

Returns the maximum value of a list of Integers.

Parameters :

List  -  ARGS(I)

Specify list to process

Return : I

  • The maximum value of all arguments in the list without taking nulls into account

  • Null if all parameters are empty or null

Examples :

int.max(  [ 1 , 33 , 1 ]  )  =  33

int.min

int.min(List  -  ARGS(I))

Returns the minimum value of a list of Integers.

Parameters :

List  -  ARGS(I)

Specify list to process

Return : I

  • The minimum value of the list all arguments

  • Null if one of the parameter is null

  • Null if all parameters are empty

Examples :

int.min(  [ 1 , 33 , 1 ]  )  =  1

int.mult

int.mult(List  -  ARGS(I))

Returns the multiplication of all elements of a list of Integers.

Parameters :

List  -  ARGS(I)

Specify list to process

Return : I

  • The product of the list all arguments

  • Null if one of the parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

int.mult(  [ 1 , 4 , 2 , 3 ]  )  =  24

int.mult(  [ 1 , null ]  )  =  null

int.replace_null

int.replace_null(Value  -  I, Number replacing Null  -  I)

Replaces Null values by an Integer.

Parameters :

Value  -  I

Specify value to process

Number replacing Null  -  I

Specify integer that replaces Null value

Return : I

  • Null value is replaced by the specified integer, otherwise keep the initial value

Examples :

int.replace_null-1-1  )  =  -1

int.replace_nullnull1  )  =  1

int.sum

int.sum(List  -  ARGS(I))

Returns the sum of a list of Integers

Parameters :

List  -  ARGS(I)

Specify list to process

Return : I

  • The sum of the list all arguments

  • Null if one of the parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

int.sum(  [ 1 , 4 , 2 , 3 ]  )  =  10

int.sum(  [ 1 , null ]  )  =  null

int.to_bigint

int.to_bigint(Value  -  I)

Transforms an Integer into a Big Integer.

Parameters :

Value  -  I

Specify integer to transform

Return : B.I

  • The value of an Integer in Big integer format

  • Null if the parameter is null

Examples :

int.to_bigint-1  )  =  -1

int.to_bool

int.to_bool(Value  -  I)

Transform an Integer into a Boolean.

Parameters :

Value  -  I

Specify integer to transform

Return : B

  • The value of an integer in boolean format

  • False if the value is 0, true of the value is 1, otherwise null

  • Null if the parameter is null

Examples :

int.to_bool1  )  =  true

int.to_bool-1  )  =  null

int.to_bool0  )  =  false

int.to_date

int.to_date(Value  -  I)

Transform an Integer into a Date.

Parameters :

Value  -  I

Specify value to transform

Return : Da

  • The date in ISO format using timestamp to date conversion in ms

  • The 0 corresponds to the date 1970-01-01T00:00:00.0Z

  • Null if parameter is null

Examples :

int.to_date0  )  =  1970-01-01T00:00:00.0Z

int.to_datenull  )  =  null

int.to_dec

int.to_dec(Value  -  I)

Transforms a Integer into a Decimal.

Parameters :

Value  -  I

Specify value to transform

Return : De

  • The value of an integer in Decimal format

  • Null if the parameter is null

Examples :

int.to_dec-1  )  =  -1

int.to_str

int.to_str(Value  -  I)

Transforms a Integer into a String.

Parameters :

Value  -  I

Specify a Integer to transform

Return : S

  • The value of an integer in string format

  • Null if the parameter is null

Examples :

int.to_str-1  )  =  "-1"

Formulas for Big Integer numbers

bigint.abs

bigint.abs(Value  -  I,B.I)

Returns absolute value of a number.

Parameters :

Value  -  I,B.I

Input the number for which we are looking for absolute value

Return : B.I

  • The absolute value of parameter

  • Null if parameter is null

Examples :

bigint.abs2  )  =  2

bigint.abs-1  )  =  1

bigint.absnull  )  =  null

bigint.create

bigint.create(Value  -  I,B.I)

Create a Big Integer from an entered value.

Parameters :

Value  -  I,B.I

Specify a value

Return : B.I

  • The entered value in big integer format

  • null if parameter is null

Examples :

bigint.create10  )  =  10

bigint.create-2  )  =  -2

bigint.createnull  )  =  null

bigint.diff

bigint.diff(List  -  ARGS(I,B.I))

Returns the difference between all elements of a list of BigIntegers.

Parameters :

List  -  ARGS(I,B.I)

Specify list to process

Return : B.I

  • The difference of all given arguments

  • Null if one of the parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

bigint.diff(  [ 1 , 4 , 2 , 3 ]  )  =  -8

bigint.diff(  [ 1 , null ]  )  =  null

bigint.factorial

bigint.factorial(Value  -  I,B.I)

Returns Factorial of a value.

Parameters :

Value  -  I,B.I

Specify value to process

Return : B.I

  • Factorial of the input value

  • Null if parameter is null

  • Null if parameter is none

Examples :

bigint.factorial4  )  =  24

bigint.factorialnull  )  =  null

bigint.generate

bigint.generate(Increment  -  I,B.I, Start  -  I,B.I, End  -  I,B.I)

Generates a list of Big Integer from start number by adding increment until value is less or equal (or greater or equal) than end number, depending on the increment sign.

Parameters :

Increment  -  I,B.I

Input the value of the increment

Start  -  I,B.I

Specify the increment start number

End  -  I,B.I

Specify the end number of increment

Return : LIST(B.I)

  • The list of big integer starting from the start value, adding the increment until the value is less than or equal to the end value

  • An empty list if increment < = 0 or is null

Examples :

bigint.generate204  )  =  [ 0 , 2 , 4 ]

bigint.generate-12-1  )  =  [ 2 , 1 , 0 , -1 ]

bigint.generate3010  )  =  [ 0 , 3 , 6 , 9 ]

bigint.generate-35-2  )  =  [ 5 , 2 , -1 ]

bigint.generatenull12  )  =  [ ]

bigint.if

bigint.if(Rule  -  B, Value if true  -  I,B.I, Value if false  -  I,B.I)

Checks if condition is met and returns a Big Integer if result of the condition you specified is True, and an another Big Integer if result is False.

Parameters :

Rule  -  B

Specify condition to process

Value if true  -  I,B.I

Returned value if test is true

Value if false  -  I,B.I

Returned value if test is false

Return : B.I

  • The value of argument 2 if the condition is true, otherwise the value of argument 3

  • Null if the condition is null

bigint.list.as_str

bigint.list.as_str(List  -  LIST(I,B.I))

Transforms a list into a String.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : S

  • The list in string format

Examples :

bigint.list.as_str(  [ 1 , 4 , 2 , 3 ]  )  =  "[1, 4, 2, 3]"

bigint.list.as_str(  [ ]  )  =  null

bigint.list.compact

bigint.list.compact(List  -  LIST(I,B.I))

Removes Null values from the list.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(B.I)

  • The list without null value

Examples :

bigint.list.compact(  [ 1 , 2 , 3 ]  )  =  [ 1 , 2 , 3 ]

bigint.list.compact(  [ null , 5 , null ]  )  =  [ 5 ]

bigint.list.contains

bigint.list.contains(List  -  LIST(I,B.I), Number  -  I,B.I)

Checks if searched number is present in the list.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Number  -  I,B.I

Number to search list

Return : B

  • True if the searched number is present in the list, otherwise false

Examples :

bigint.list.contains(  [ 1 , 2 ],  1  )  =  true

bigint.list.contains(  [ 1 , 2 , 3 ],  -3  )  =  false

bigint.list.contains(  [ null , 5 ],  null  )  =  true

bigint.list.count.distinct

bigint.list.count.distinct(List  -  LIST(I,B.I))

Returns a list of key value containing the distinct values and their occurrence in the list without taking into account null value.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(S)

  • The list in JSON format containing the value of the list in key and in value the number of occurrences of this value in the list

  • Null if parameter is null

Examples :

bigint.list.count.distinct(  [ 1 , 2 , 1 ]  )  =  [{"value":2,"count":1},{"value":1,"count":2}]

bigint.list.count.distinct(  [ null , null , 1 ]  )  =  [{"value":1,"count":1}]

bigint.list.create

bigint.list.create(Values  -  ARGS(I,B.I))

Creation of a list of number.

Parameters :

Values  -  ARGS(I,B.I)

Input a number to add (the ARGS function allows you to add n arguments)

Return : LIST(B.I)

  • The list containing values entered in parameter

  • Null if parameter is null

bigint.list.diff

bigint.list.diff(First list  -  LIST(I,B.I), Second list  -  LIST(I,B.I))

Returns the list of number thats different between two Big Integer lists.

Parameters :

First list  -  LIST(I,B.I)

Specify first list of number

Second list  -  LIST(I,B.I)

Specify second list of number

Return : LIST(B.I)

  • The list of numbers that are in a list and not in the other (null is a value)

Examples :

bigint.list.diff(  [ 1 , 2 ],  [ 1 , 5 , 2 ]  )  =  [ 5 ]

bigint.list.diff(  [ 1 , null ],  [ 1 ]  )  =  [ null ]

bigint.list.distinct

bigint.list.distinct(List  -  LIST(I,B.I))

Returns a list containing distinct values (unique values) of the entered list.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(B.I)

  • The list containing only the distinct values of the entered list

Examples :

bigint.list.distinct(  [ 1 , 1 , 1 , 1 ]  )  =  [ 1 ]

bigint.list.distinct(  [ 1 , 1 , null , null ]  )  =  [ 1 , null ]

bigint.list.except

bigint.list.except(First list  -  LIST(I,B.I), Second list  -  LIST(I,B.I))

Returns the list of number, from the first list that are not in the second list.

Parameters :

First list  -  LIST(I,B.I)

Specify first list of number

Second list  -  LIST(I,B.I)

Specify second list of number

Return : LIST(B.I)

  • The list of all numbers from the first list that are not in the second list

Examples :

bigint.list.except(  [ 1 , 4 ],  [ 1 , 2 , 3 ]  )  =  [ 4 ]

bigint.list.except(  [ 1 , null , 3 ],  [ 1 , null ]  )  =  [ 3 ]

bigint.list.flat

bigint.list.flat(List  -  LIST(I,B.I))

Transforms an array of arrays into a single array.

Parameters :

List  -  LIST(I,B.I)

Specify list of lists to process

Return : LIST(B.I)

  • The list containing all the number of the lists contained in the list

bigint.list.get

bigint.list.get(List  -  LIST(I,B.I), Index  -  I)

Extract a number in a list by specifying index (the first element of the list at index 0)

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Index  -  I

Specify index to extract from list

Return : B.I

  • The number of the list at the indicated index

  • The first value has index 0

  • Null if the index is outside the list

Examples :

bigint.list.get(  [ 1 , 2 , 3 , 5 ],  0  )  =  1

bigint.list.get(  [ 1 , 1 ],  5  )  =  null

bigint.list.insert

bigint.list.insert(List  -  LIST(I,B.I), Position  -  I, Value  -  I,B.I)

Inserts an element in a list of Large Integer strings at the specified position (numbered from 1 and from right to left if negative). Adds null values if necessary to reach the desired position, and returns the new modified list.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Position  -  I

Specify the insertion position in the list of numbers

Value  -  I,B.I

Specify the value to insert in the list

Return : LIST(B.I)

  • Returns a new list with the specified element inserted at the given position. The first position is 1 and numbering is from right to left when the given position is negative.

  • Returns a new list with nulls as padding values when the specified position exceeds the list size

  • Returns a new list with null inserted at the required position if null is the value to be inserted in the list

  • Returns an empty list if the list to be processed is not specified

  • Returns an empty list if position is 0, null or empty

Examples :

bigint.list.insert(  [ 1 , 1 ],  15  )  =  [ 5 , 1 , 1 ]

bigint.list.insert(  [ 1 ],  34  )  =  [ 1 , null , 4 ]

bigint.list.intersect

bigint.list.intersect(First list  -  LIST(I,B.I), Second list  -  LIST(I,B.I))

Returns the list of numbers in common between two number lists (can contain the same value several times).

Parameters :

First list  -  LIST(I,B.I)

Specify first list of number

Second list  -  LIST(I,B.I)

Specify second list of number

Return : LIST(B.I)

  • The list with the values which are common to the two lists, can contain the same value several times in case of occurrence of the value in the lists

Examples :

bigint.list.intersect(  [ 5 ],  [ 5 , 2 , -3 ]  )  =  [ 5 ]

bigint.list.intersect(  [ 5 , 0 , null , 2 ],  [ 5 , 2 , -3 , null ]  )  =  [ null , 2 , 5 ]

bigint.list.max

bigint.list.max(List  -  LIST(I,B.I))

Returns the largest number in a list of numbers. Does not take into account null.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : B.I

  • The largest number in the list excluding null values

Examples :

bigint.list.max(  [ 1 , 1 ]  )  =  1

bigint.list.max(  [ 1 , 4 , 2 , 3 ]  )  =  4

bigint.list.max_occur

bigint.list.max_occur(List  -  LIST(I,B.I))

Gives the most represented number in the list (or a list in egality case).

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(B.I)

  • The most frequent number in the list

  • The list of value if several values are most represented in the list

Examples :

bigint.list.max_occur(  [ 1 , 1 , 1 , 1 , 2 ]  )  =  [ 1 ]

bigint.list.max_occur(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 2 , 3 , 4 ]

bigint.list.min

bigint.list.min(List  -  LIST(I,B.I))

Returns the smallest number in the list. Does not take into account null.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : B.I

  • The smallest number in the list excluding null values

Examples :

bigint.list.min(  [ 1 , 1 ]  )  =  1

bigint.list.min(  [ 1 , 4 , 2 , 3 ]  )  =  1

bigint.list.min_occur

bigint.list.min_occur(List  -  LIST(I,B.I))

Gives the least represented number (or a list in egality case).

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(B.I)

  • The least represented number on the list

  • The list of value if several values are least represented in the list

Examples :

bigint.list.min_occur(  [ 1 , 1 , 1 , 1 , 2 ]  )  =  [ 2 ]

bigint.list.min_occur(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 2 , 3 , 4 ]

bigint.list.position

bigint.list.position(List  -  LIST(I,B.I), Value  -  I,B.I)

Returns the position in the list of the value of argument 2. Returns -1 if argument 2 is absent. The first element in the list has position 0

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Value  -  I,B.I

Number to search in the list

Return : I

  • The position in the list of the searched value

  • The first element of the list at index 0

  • Is -1 if the searched element is not in the list

Examples :

bigint.list.position(  [ 1 , 2 , 3 , 4 ],  5  )  =  -1

bigint.list.position(  [ 1 , 2 , 3 , 4 , 5 ],  4  )  =  3

bigint.list.position(  [ 1 , null ],  null  )  =  1

bigint.list.remove

bigint.list.remove(List  -  LIST(B.I,I), Value  -  B.I,I)

Removes all occurrences of a Big Integer in a list of Big Integers.

Parameters :

List  -  LIST(B.I,I)

Specify list to process

Value  -  B.I,I

Value to remove

Return : LIST(B.I)

  • Returns a copy of the specified list of Big Integers from which all occurrences of the Big Integer given as parameter have been removed

  • If the Big Integer given as parameter is null or empty, returns a copy of the specified list of Big Integers from which all occurrences of the value null or empty have been removed

  • If the specified list of Big Integers is empty, returns an empty list

  • If the specified list of Big Integers is null, returns null

Examples :

bigint.list.remove(  [ 1 , 2 , 2 , 3 , 2 ],  2  )  =  [ 1 , 3 ]

bigint.list.remove(  [ null , 99 , null , 0 ],  null  )  =  [ 99 , 0 ]

bigint.list.remove(  [ null , 1 , 1 , 0 ],  0  )  =  [ null , 1 , 1 ]

bigint.list.remove(  [ ],  1  )  =  [ ]

bigint.list.remove_extend

bigint.list.remove_extend(List  -  LIST(B.I,I), List  -  ARGS(B.I,I))

Removes all occurrences of multiple Big Integers in a List of Big Integers.

Parameters :

List  -  LIST(B.I,I)

Specify list to process

List  -  ARGS(B.I,I)

Specify list of values to remove

Return : LIST(B.I)

  • Returns a copy of the specified list of Big Integers from which all occurrences of the multiple Big Integers given as parameters have been removed

  • If one of the Big Integers given as parameter is null or empty, returns a copy of the specified list of Big Integers from which all occurrences of the value null or empty have been removed

  • If the specified list of Big Integers is empty, returns an empty list

  • If the specified list of Big Integers is null, returns null

Examples :

bigint.list.remove_extend(  [ 1 , 2 , 2 , 3 , 2 ],  [ 2 , 99 ]  )  =  [ 1 , 3 ]

bigint.list.remove_extend(  [ null , 99 , null , 0 ],  [ null ]  )  =  [ 99 , 0 ]

bigint.list.remove_extend(  [ null , 1 , 1 , 0 ],  [ 0 ]  )  =  [ null , 1 , 1 ]

bigint.list.remove_extend(  [ ],  [ 1 ]  )  =  [ ]

bigint.list.replace

bigint.list.replace(List  -  LIST(B.I,I), Number  -  B.I,I, Number  -  B.I,I)

Replaces all occurrences of a Big Integer in a list of Big Integers.

Parameters :

List  -  LIST(B.I,I)

Specify list to process

Number  -  B.I,I

Value to replace

Number  -  B.I,I

Replacement value

Return : LIST(B.I)

  • Returns a copy of the specified list of Big Integers from which all occurrences of the Big Integer given as parameter have been replaced by the requested value

  • If the Big Integer to be replaced is null or empty, returns a copy of the specified list of Big Integers from which all occurrences of the value null or empty have been replaced by the requested value

  • If the specified list of Big Integers is empty, returns an empty list

  • If the specified list of Big Integers is null, returns an empty list

Examples :

bigint.list.replace(  [ 13 , 29 , 21 , 3 , 21 ],  2199  )  =  [ 13 , 29 , 99 , 3 , 99 ]

bigint.list.replace(  [ null , 99 , null , 5 ],  null123  )  =  [ 123 , 99 , 123 , 5 ]

bigint.list.replace(  [ null , 1 , 1 , 0 ],  0null  )  =  [ null , 1 , 1 , null ]

bigint.list.replace(  [ ],  11  )  =  [ ]

bigint.list.replace_extend

bigint.list.replace_extend(List  -  LIST(B.I,I), List  -  ARGS(B.I,I), List  -  ARGS(B.I,I))

Replaces all occurrences of multiple Big Integers in a list of Big Integers. All replacements are done simultaneously. The correspondence between the value to be replaced and the replacement value is done according to the index of the values in the parameter list. If the same value appears multiple times among the values to be replaced, it will always be replaced by the replacement value associated with its first occurrence in the list.

Parameters :

List  -  LIST(B.I,I)

Specify list to process

List  -  ARGS(B.I,I)

Specify list of values to replace

List  -  ARGS(B.I,I)

Specify list of replacement values

Return : LIST(B.I)

  • Returns a copy of the specified list of Big Integers from which all occurrences of the multiple Big Integers given as parameters have been replaced by the given replacement values

  • If one of the Big Integers given as parameter is null or empty, every occurrences of the value null or empty will be replaced by the corresponding replacement values

  • If the list of values to be replaced and the list of replacement values have different sizes, returns the list of values unmodified

  • If the list of values to be replaced or the list of replacement values is null or is an empty list, returns the list of values unmodified

  • If the specified list of Big Integers is empty, returns an empty list

  • If the specified list of Big Integers is null, returns an empty list

Examples :

bigint.list.replace_extend(  [ 1 , 2 , 3 , 3 , 20 ],  [ 20 , 3 , 99 ],  [ -20 , -3 , 100 ]  )  =  [ 1 , 2 , -3 , -3 , -20 ]

bigint.list.replace_extend(  [ 1 , 2 , 3 ],  [ 2 , 20 , 200 ],  [ -2 ]  )  =  [ 1 , 2 , 3 ]

bigint.list.replace_extend(  [ null , 1 , 1 , 0 ],  [ ],  [ ]  )  =  [ null , 1 , 1 , 0 ]

bigint.list.replace_extend(  [ ],  [ 1 ],  [ 1 ]  )  =  [ ]

bigint.list.sort

bigint.list.sort(List  -  LIST(I,B.I))

Sort ascending list of numbers.

Parameters :

List  -  LIST(I,B.I)

Specify list to sort

Return : LIST(B.I)

  • The list sorted by ascending number

  • Null values are placed at the beginning of the list

Examples :

bigint.list.sort(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 2 , 3 , 4 ]

bigint.list.sort(  [ -1 , null ]  )  =  [ null , -1 ]

bigint.list.sum

bigint.list.sum(List  -  LIST(I,B.I))

Returns sum of a list of number.

Parameters :

List  -  LIST(I,B.I)

Specify list to add

Return : B.I

  • The value of the sum of all numbers in the list without taking into account null values

Examples :

bigint.list.sum(  [ 1 , 4 , 2 , 3 ]  )  =  10

bigint.list.sum(  [ 1 , null ]  )  =  1

bigint.list.to_dec

bigint.list.to_dec(List  -  LIST(I,B.I))

Transforms a list of number into a list of Decimal.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(De)

  • The list of number in decimal format list

  • Null if parameter is null

Examples :

bigint.list.to_dec(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 4 , 2 , 3 ]

bigint.list.to_int

bigint.list.to_int(List  -  LIST(I,B.I))

Transforms a list of number into a list of Integer.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(I)

  • The list of number in integer format list

  • Null if parameter is null

Examples :

bigint.list.to_int(  [ 1 , 4 , 2 , 3 ]  )  =  [ 1 , 4 , 2 , 3 ]

bigint.list.to_str

bigint.list.to_str(List  -  LIST(I,B.I))

Transforms a list of number into a list of String.

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Return : LIST(S)

  • The list of number in string format list

  • Null if parameter is null

Examples :

bigint.list.to_str(  [ 1 , 4 , 2 , 3 ]  )  =  [ "1" , "4" , "2" , "3" ]

bigint.list.union

bigint.list.union(First list  -  LIST(I,B.I), Second list  -  LIST(I,B.I))

Union of two number lists.

Parameters :

First list  -  LIST(I,B.I)

Specify first list of number

Second list  -  LIST(I,B.I)

Specify second list of number

Return : LIST(B.I)

  • The list containing the numbers of both lists together

Examples :

bigint.list.union(  [ 1 , 2 , 3 ],  [ 4 , 5 ]  )  =  [ 1 , 2 , 3 , 4 , 5 ]

bigint.list.union(  [ 1 , -1 , 1 ],  [ null ]  )  =  [ 1 , -1 , 1 , null ]

bigint.max

bigint.max(List  -  ARGS(I,B.I))

Returns the maximum value of a list of BigIntegers.

Parameters :

List  -  ARGS(I,B.I)

Specify list to process

Return : B.I

  • The maximum value of all arguments in the list without taking nulls into account

  • Null if all parameters are empty or null

Examples :

bigint.max(  [ 1 , 33 , 1 ]  )  =  33

bigint.min

bigint.min(List  -  ARGS(I,B.I))

Returns the minimum value of a list of BigIntegers.

Parameters :

List  -  ARGS(I,B.I)

Specify list to process

Return : B.I

  • The maximum value of all arguments in the list without taking nulls into account

  • Null if all parameters are empty or null

Examples :

bigint.min(  [ 1 , 33 , 1 ]  )  =  1

bigint.mult

bigint.mult(List  -  ARGS(I,B.I))

Returns the multiplication of all elements of a list of BigIntegers.

Parameters :

List  -  ARGS(I,B.I)

Specify list to process

Return : B.I

  • The product of all given arguments

  • Null if parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

bigint.mult(  [ 1 , 4 , 2 , 3 ]  )  =  24

bigint.mult(  [ 1 , null ]  )  =  null

bigint.replace_null

bigint.replace_null(Value  -  I,B.I, Number replacing Null  -  I,B.I)

Replaces Null values by a Big Integer.

Parameters :

Value  -  I,B.I

Specify value to process

Number replacing Null  -  I,B.I

Specify number that replaces Null value

Return : B.I

  • The specified value if the value is null, otherwise keep the initial value

Examples :

bigint.replace_null1-1  )  =  1

bigint.replace_nullnull1  )  =  1

bigint.sum

bigint.sum(List  -  ARGS(I,B.I))

Returns the sum of a list of BigIntegers.

Parameters :

List  -  ARGS(I,B.I)

Specify list to process

Return : B.I

  • The sum of all given arguments

  • Null if one of the parameter is null

  • Null if all parameters are empty

  • Null if the result of the operation is NaN

Examples :

bigint.sum(  [ 1 , 4 , 2 , 3 ]  )  =  10

bigint.sum(  [ 1 , null ]  )  =  null

bigint.to_bool

bigint.to_bool(Value  -  I,B.I)

Transform un nombre into a Boolean.

Parameters :

Value  -  I,B.I

Specify value to transform

Return : B

  • The value of a big integer in boolean format

  • False if the value is 0, true of the value is 1, otherwise null

  • Null if the parameter is null

Examples :

bigint.to_bool1  )  =  true

bigint.to_bool-1  )  =  null

bigint.to_bool0  )  =  false

bigint.to_bool10  )  =  null

bigint.to_date

bigint.to_date(Value  -  I,B.I)

Transform un nombre into a Date.

Parameters :

Value  -  I,B.I

Specify value to transform

Return : Da

  • The date in ISO format using timestamp to date conversion in ms

  • The 0 corresponds to the date 1970-01-01T00:00:00.0Z

  • Null if parameter is null

Examples :

bigint.to_date0  )  =  1970-01-01T00:00:00.0Z

bigint.to_datenull  )  =  null

bigint.to_dec

bigint.to_dec(Value  -  I,B.I)

Transforms a number into a Decimal.

Parameters :

Value  -  I,B.I

Specify value to transform

Return : De

  • The value of a big integer in decimal format

  • Null if the parameter is null

Examples :

bigint.to_dec1  )  =  1

bigint.to_dec-1  )  =  -1

bigint.to_decnull  )  =  null

bigint.to_int

bigint.to_int(Value  -  I,B.I)

Transforms a number into an Integer.

Parameters :

Value  -  I,B.I

Specify value to transform

Return : I

  • The value of a big integer in integer format

  • Null if the parameter is null

Examples :

bigint.to_int1  )  =  1

bigint.to_int-1  )  =  -1

bigint.to_intnull  )  =  null

bigint.to_str

bigint.to_str(Value  -  I,B.I)

Transforme a number into a String.

Parameters :

Value  -  I,B.I

Specify value to transform

Return : S

  • The value of a big integer in string format

  • Null if the parameter is null

Examples :

bigint.to_str1  )  =  "1"

bigint.to_str-1  )  =  "-1"

bigint.to_strnull  )  =  null

Formulas for the Character String type

str.abrev

str.abrev(Value  -  S, Offset  -  I,B.I, Length  -  I,B.I)

Abbreviates a string by adding ellipses (“…​”) to indicate that it has been truncated. It takes three parameters: the string to be abbreviated, an offset and a target length for the result (including any ellipses).

Parameters :

Value  -  S

Specify the string to abbreviate

Offset  -  I,B.I

Specify the left edge offset index. The corresponding character will not necessarily be the leftmost character in the result or the first character following the ellipses, but it will always appear in the result. The starting index is 0

Length  -  I,B.I

Specify the length of the returned String (including any added ellipses). Minimum value is 4, and for an offset greater than 5 the minimum value is 7

Return : S

  • Returns the substring according to the specified offset and length and, if necessary, padded at the beginning and/or at the end with ellipses in the form of '…​'. Spaces are taken into account.

  • If the length of the specified String is strictly less than 5, returns the String unmodified

  • If the specified length is greater than or equal to the String length, returns the String unmodified

  • If the specified length is equal to the length of the specified String minus 1, returns the substring starting from the first character of the specified String, truncated according to the specified length and with an ellipse at the end

  • If the offset is strictly less than 5, returns the substring starting from the first character of the specified String, truncated according to the specified length and with an ellipse at the end if necessary

  • If the offset is greater than or equal to the String length, returns the substring ending with the last character of the specified String, truncated according to the specified length and with an ellipse at the beginning if necessary

  • If the offset is greater than or equal to 5 and strictly less then the String length, returns the substring starting from the character of the specified String with index corresponding to the offset, truncated according to the specified length and with ellipses at the beginning and at the end if necessary

  • If the given length is strictly less than 4, or if the offset is greater than or equal to 5 and the given length is strictly less than 7, return null

  • Returns null if the offset is negative

  • Returns null if the specified length is a negative value

  • Returns null if one of the formula parameters is null or empty

Examples :

str.abrev"DataChain brings data back at the core of your business"250  )  =  "DataChain brings data back at the core of your …​"

str.abrev"DataChain brings data back at the core of your business"850  )  =  "…​n brings data back at the core of your business"

str.abrev"DataChain brings data back at the core of your business"412  )  =  "DataChain…​"

str.abrev"DataChain brings data back at the core of your business"1017  )  =  "…​brings data…​"

str.capitalize

str.capitalize(Value  -  S)

Uppercases first character of a String and lowercases others characters.

Parameters :

Value  -  S

Specify string to process

Return : S

  • Returns the String chosen by the user with its first character capitalized

  • Returns null if the only parameter of the formula is null

Examples :

str.capitalize"datachain"  )  =  "Datachain"

str.capitalize"*data"  )  =  "*data"

str.capitalizenull  )  =  null

str.complete

str.complete(Value  -  S, Characters to add  -  S, Final length  -  I,B.I, Type of complement  -  CHOICE(S))

Completes String with characters provided as input.

Parameters :

Value  -  S

Argument storing the string whose extension is desired

Characters to add  -  S

Characters used for complement

Final length  -  I,B.I

Final length of value once complement is added

Type of complement  -  CHOICE(S)

Specify whether complement is to left or to right of value

Return : S

  • Returns the String chosen by the user with a prefix or suffix based on the type of complement and the final String size specified by the user

  • Returns the String chosen by the user without addition if the desired final size is smaller than the initial size of the string

  • Returns null if one of the formula parameters is null

Examples :

str.complete"data"""9"RIGHT"  )  =  "data"

str.complete"data""."9"RIGHT"  )  =  "data.."

str.complete"data""*"3"RIGHT"  )  =  "data"

str.concat

str.concat(Value  -  ARGS(S))

Concatenates list of String into a single String.

Parameters :

Value  -  ARGS(S)

Specify list of Strings to be concatenated (n possible by clicking on the ARGS argument)

Return : S

  • Returns the concatenation of the String elements in the list

  • Returns an empty value if the list contains only null or empty Strings

  • Returns the concatenation of the non-empty and non-null values in the list if it contains any

Examples :

str.concat(  [ "Data" , "chain" , "Rocks" ]  )  =  "DatachainRocks"

str.concat(  [ null , null ]  )  =  ""

str.contains_only

str.contains_only(Value  -  S, Group of characters to search  -  S)

Checks if all the characters in the first String are present in the second String, regardless of the order or frequency of the characters. Returns true if all the characters are present.

Parameters :

Value  -  S

Specify string to process

Group of characters to search  -  S

Specify group of characters to search into input string

Return : B

  • Returns true if all the characters in the first string are present in the second (regardless of order or frequency), otherwise returns false

  • Returns null if one or more of the formula parameters is null

  • Returns true if both parameters are empty

Examples :

str.contains_only"12azer1""rzea321"  )  =  true

str.contains_only"aze45""4ze"  )  =  false

str.create

str.create(Value  -  S)

Create a String from an entered value.

Parameters :

Value  -  S

Specify a value

Return : S

  • Returns the value entered as an argument

  • Returns empty if no value is assigned to the argument

  • Returns null when the value of the argument is null

Examples :

str.create"Dupont"  )  =  "Dupont"

str.createnull  )  =  null

str.diff

str.diff(Value  -  S, Value  -  S)

Compares two strings by returning the substring of the second string starting with the first character that differs from the first string.

Parameters :

Value  -  S

Specify first string to process

Value  -  S

Specify second string to process

Return : S

  • Returns a substring of the second string starting from the first character that differs from the first string

  • Returns empty if the two arguments are identical

  • Returns empty if the second string is a prefix of the first string

  • Returns empty if the second string is empty

  • Returns empty if the second string is null

  • Returns the entire second string if the first string is null

  • Returns the entire second string if the first string is empty

Examples :

str.diff"aze45""ze4"  )  =  "ze4"

str.diff"aze45""aze"  )  =  ""

str.diff"test""test"  )  =  ""

str.diff"education""eductesteducationtestation"  )  =  "testeducationtestation"

str.diff"""test"  )  =  "test"

str.diff"test"""  )  =  ""

str.diff"aze123""aze124"  )  =  "4"

str.diff_position

str.diff_position(Value  -  S, Value  -  S)

Returns position of first difference between two String.

Parameters :

Value  -  S

Specify first string to process

Value  -  S

specify second string to process

Return : I

  • Returns the index of the first character where the two Strings differ

  • Returns -1 if the two Strings are identical

  • Returns 0 if one String is empty and the other is not

  • Returns null if one or both arguments are null

Examples :

str.diff_position"azer""azert"  )  =  4

str.diff_position"data""data"  )  =  -1

str.diff_position"data""daTa"  )  =  2

str.diff_position"data"null  )  =  null

str.encrypt

str.encrypt(Value  -  S)

Encrypts a String.

Parameters :

Value  -  S

Specify String to encrypt

Return : S

  • Returns a 64-character hexadecimal string representing the SHA-256 hash of the input String

  • Returns null if the input is null

  • Returns an empty String if the input is an empty String

Examples :

str.encrypt"data"  )  =  "ba238696232b95860d96638d7fe13d6f0e4937c1a1acd47ba3742e3c4c5e0765"

str.encryptnull  )  =  null

str.extract

str.extract(Value  -  S, Extraction sense  -  CHOICE(S), Value  -  I,B.I)

Extracts a certain number of characters from a String based on the specified parameters.

Parameters :

Value  -  S

Specify the string to process

Extraction sense  -  CHOICE(S)

Specify the starting point of extraction

Value  -  I,B.I

Number of characters to extract

Return : S

  • Returns the extracted substring from the input string based on the specified starting point and number of characters

  • Returns the entire input string if the number of characters to extract is greater than the string length

  • Returns an empty string if the number of characters to extract is 0 or if the starting point is invalid

  • Returns an empty string if the input is an empty string

  • Returns null if the input is null

Examples :

str.extract"DupontouDupond""RIGHT"7  )  =  "uDupond"

str.extract"Dupont""LEFT"2  )  =  "Du"

str.extractnull"LEFT"8  )  =  null

str.extract_by_index

str.extract_by_index(Value  -  S, Start position  -  I, End position  -  I)

Extract characters group from a String by defining start and end position.

Parameters :

Value  -  S

Specify string to process

Start position  -  I

Specify extraction start position

End position  -  I

Specify extraction end position

Return : S

  • Returns the substring extracted from the input string based on the specified start and end positions

  • Returns an empty string if the start position is negative

  • Returns the substring interpreting negative end positions as counting from the end of the string, with -1 representing the last character

  • Returns an empty string if the start position is greater than or equal to the string length

  • Returns null if the input string is null

Examples :

str.extract_by_index"azerty"34  )  =  "r"

str.extract_by_index"aze45"210  )  =  "e45"

str.extract_by_indexnull23  )  =  null

str.extract_by_regex

str.extract_by_regex(Value  -  S,De,Da,I,B.I, REGEX  -  S)

Extract one or several character(s) from a String using a regular expression (Regex). Is case-sensitive.

Parameters :

Value  -  S,De,Da,I,B.I

Specify string to process

REGEX  -  S

Specify regular expression (Regex)

Return : LIST(S)

  • Returns a list of strings extracted from the input String using the specified regular expression

  • Returns an empty list if the input String or the regular expression is null

  • Returns an empty list if no match is found

  • Returns 'null' as the only element in the list for regex optional groups that didn’t match

  • Returns an empty string for groups that matched but without content

Examples :

str.extract_by_regex"bob:arthur:tof""(.):(.):(.*)"  )  =  [ "bob" , "arthur" , "tof" ]

str.extract_by_regex"GODIN""(OD+)"  )  =  [ "OD" ]

str.extract_by_regex"1/3/23""[0-9]{1,2}/([0-9]{1,2})/[0-9]"  )  =  [ "3" ]

str.extract_by_str

str.extract_by_str(Value  -  S, Characters  -  S, Sense  -  CHOICE(S))

Extract a String from character(s). Is case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Specify characters to search

Sense  -  CHOICE(S)

Specify direction of extraction (Left or Right)

Return : S

  • Returns a substring extracted from the input String based on the specified characters and direction (LEFT or RIGHT)

  • Returns null if the specified characters are at the beginning (for LEFT) or end (for RIGHT) of the string

  • Returns the entire input String if the specified characters are not found

  • Returns null if the input String or the characters to search are null

Examples :

str.extract_by_str"Datachain""Data""RIGHT"  )  =  "chain"

str.extract_by_str"Datachain""chain""LEFT"  )  =  "Data"

str.extract_by_str"Datachain""not""LEFT"  )  =  "Datachain"

str.extract_by_strnull"data""RIGHT"  )  =  null

str.extract_key_value

str.extract_key_value(Value  -  S, Separator  -  S, Separator key value  -  S, Key  -  S, Operation type  -  CHOICE(S))

Extract a value from a key-value String containing n key-values. Is case-sensitive.

Parameters :

Value  -  S

Specify string to process

Separator  -  S

Specify key/value couples separator

Separator key value  -  S

Specify Separator between key and value

Key  -  S

Specify value to extract

Operation type  -  CHOICE(S)

Specify Operation type

Return : S

  • Returns a string representation of a dictionary containing all key-value pairs when operation type is NONE

  • Returns a list of keys as a string for a given value when operation type is KEY

  • Returns a value or list of values as a string for a given key when operation type is VALUE

  • Returns null if the input string is null

  • Returns the input string if it doesn’t contain the specified separators

  • Returns an empty list as a string if no matching keys or values are found

Examples :

str.extract_key_value"cle1=valeur1|cle2=valeur2|cle3=valeur3""|""="null"NONE"  )  =  "{cle2:valeur2, cle3:valeur3, cle1:valeur1}"

str.extract_key_value"cle1=valeur1|cle2=valeur2|cle24=valeur2|cle3=valeur3""|""=""valeur2""KEY"  )  =  "[cle2, cle24]"

str.extract_key_value"cle1:valeur1/cle2:valeur2/cle3:valeur3""/"":""cle3""VALUE"  )  =  "valeur3"

str.extract_middle

str.extract_middle(Value  -  S, Start position  -  I,B.I, Number  -  I,B.I)

Performs group of characters extraction from the middle of a String by defining start and length of extraction. Start begins at 1.

Parameters :

Value  -  S

Specify value to process

Start position  -  I,B.I

Specify an integer defining start of extraction

Number  -  I,B.I

Specify a number defining length of extraction

Return : S

  • Returns a substring extracted from the middle of the input String based on the specified start position and length

  • Returns null if the input String is null

  • Returns an empty String if the start position is less than 1 or greater than the String length

  • Returns an empty String if the specified length is negative

  • Extracts characters up to the end of the String if the number of characters to extract exceeds the String’s length

Examples :

str.extract_middle"DupontouDupond"37  )  =  "pontouD"

str.extract_middle"Dupont"320  )  =  "pont"

str.extract_middle"Dupont"03  )  =  "Dup"

str.extract_num

str.extract_num(Value  -  S)

Extracts numeric characters from a String.

Parameters :

Value  -  S

Specify string to process

Return : S

  • Returns a string containing only the numeric characters extracted from the input string

  • Returns an empty string if no numeric characters are found in the input

  • Returns null if the input string is null

Examples :

str.extract_num"D1upo2nt3"  )  =  "123"

str.extract_numnull  )  =  null

str.find

str.find(Value  -  S, Character(s)  -  ARGS(S))

Returns a Boolean confirming the presence of at least one of the characters to be searched for in a String. Is case-sensitive.

Parameters :

Value  -  S

Specify string to process

Character(s)  -  ARGS(S)

Specify character(s) to search

Return : B

  • Returns true if any of the specified characters or substrings are found in the input String

  • Returns false if none of the specified characters or substrings are found

  • Returns false if the input String or the list of characters to search is null

  • Return false when searching for an empty String

Examples :

str.find"Dupont",  [ "d" , "z" ]  )  =  false

str.find"Dupont",  [ "D" , "u" , "z" ]  )  =  true

str.find"Dupont",  [ "Dn" ]  )  =  false

str.find_all

str.find_all(Value  -  S, Substrings  -  ARGS(S))

Returns a Boolean indicating whether all specified substrings are found exactly as given in the input string. The search is case-sensitive.

Parameters :

Value  -  S

Specify the string in which to search

Substrings  -  ARGS(S)

Specify the substrings to search for within the input string

Return : B

  • Returns true if all specified substrings are present in the input string exactly as given

  • Returns false if at least one of the specified substrings is not found

  • Returns false as soon as one of the formula arguments is null or empty

Examples :

str.find_all"Dupont",  [ "d" , "z" ]  )  =  false

str.find_all"Dupont",  [ "D" , "u" , "z" ]  )  =  false

str.find_all"Dupont",  [ "Du" , "p" ]  )  =  true

str.find_case

str.find_case(Value  -  S, Casse  -  CHOICE(S), Type  -  CHOICE(S))

Checks depending on presence of upper or lower case letters.

Parameters :

Value  -  S

Specify string to process

Casse  -  CHOICE(S)

Specify processing mode (Lower case - Upper case)

Type  -  CHOICE(S)

Specify type of treatment (Partial - All)

Return : B

  • Returns true if the specified case condition is met in the input string

  • Returns true with "ALL" mode if all alphabetic characters are in the chosen case state

  • Returns true with "PARTIAL" mode if at least one character is in the chosen case state

  • Returns false if the input string is null or empty

Examples :

str.find_case"Dupont""UPPER""ALL"  )  =  false

str.find_case"DUPONT""UPPER""ALL"  )  =  true

str.find_case"Dupont""UPPER""PARTIAL"  )  =  true

str.find_casenull"UPPER""ALL"  )  =  false

str.framing

str.framing(Value  -  S, Characters  -  S)

Adds a string at beginning and at end of a String.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Specify character(s) to be added

Return : S

  • Returns a new String with the specified character group added at the beginning and end of the input String

  • Returns an empty String if the input String is empty

  • Returns null if either the input String or the character group is null

Examples :

str.framing"Dupont""D"  )  =  "DDupontD"

str.framing"DD""DD"  )  =  "DDDDDD"

str.framing_if_absent

str.framing_if_absent(Value  -  S, Characters  -  S)

Adds a string at beginning and end of a String, only if this string is not present at the beginning or at the end.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Specify character(s) to be added

Return : S

  • Returns a new string with the specified character group added at the beginning and/or end of the input string, only if not already present

  • Returns an empty string if the input string is empty

  • Returns null if either the input string or the character group is null

Examples :

str.framing_if_absent"Dupont""D"  )  =  "DupontD"

str.framing_if_absent"Dupont""t"  )  =  "tDupont"

str.framing_if_absent"DD""DD"  )  =  "DD"

str.frequency

str.frequency(Value  -  S, Characters  -  S)

Returns number of occurrences of character(s), including spaces and special characters, in a String. Search is case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Specify character(s) to count

Return : I

  • Returns the number of occurrences of the specified character(s) in the input string

  • Returns 0 if the specified character(s) are not found in the input string

  • Returns null if either the input string or the character(s) to search are null

  • Returns 0 for an empty input string

Examples :

str.frequency"Dupont""D"  )  =  1

str.frequency"Dunpont""n"  )  =  2

str.frequencynullnull  )  =  null

str.if

str.if(Rule  -  B, Value if true  -  S, Value if false  -  S)

Checks if condition is met and returns a String if result of the condition you specified is True, and an another String if result is False.

Parameters :

Rule  -  B

Specify condition to process

Value if true  -  S

Returned string if test is true

Value if false  -  S

Returned string if test is false

Return : S

  • Returns the value of the second argument of the formula if the condition specified by the user is met. Returns the value entered in the third argument otherwise

  • Returns empty if the value to be returned (second or third argument) has not been entered by the user

  • Returns null if the value to be returned (second or third argument) is null

  • Returns null if the condition is null

  • Returns null if the condition is empty

str.if_absent

str.if_absent(Value  -  S, Suffix  -  S, List of suffixes  -  ARGS(S))

Adds at beginning and at end of String, a group of characters (including spaces and special characters), only if these characters are not present at beginning or at end of this String. Is Case-sensitive.

Parameters :

Value  -  S

Specify string to process

Suffix  -  S

Specify string that will be added as a suffix

List of suffixes  -  ARGS(S)

Specify list of suffixes to search

Return : S

  • Returns a new string with the specified suffix added at the beginning and end, only if none of the listed suffixes are present at the start or end of the input string

  • Returns the original string if any of the listed suffixes are found at the start or end

  • Returns null if the input string, the suffix to add, or the list of suffixes is null

Examples :

str.if_absent"Dupont""d",  [ "u" , "n" ]  )  =  "Dupontd"

str.if_absent"Dupont""d",  [ "u" , "t" ]  )  =  "Dupont"

str.invers

str.invers(Value  -  S)

Returns revert input String. Supports special characters, numbers and spaces.

Parameters :

Value  -  S

Specify String to invert

Return : S

  • Returns a new string with all characters of the input string in reverse order

  • Returns null if the input string is null

Examples :

str.invers"Dupont"  )  =  "tnopuD"

str.inversnull  )  =  null

str.is_numeric

str.is_numeric(Value  -  S)

Checks if a String can be converted to Decimal.

Parameters :

Value  -  S

Specify value to process

Return : B

  • Returns true if the parameter is convertible to Decimal (included if the parameter is 'Infinity' or 'NaN')

  • Returns false if the parameter is not convertible to a Decimal

  • Returns null if the parameter is null or empty

Examples :

str.is_numeric"1.2"  )  =  true

str.is_numeric"-123.6e+02"  )  =  true

str.is_numeric"123*6"  )  =  false

str.is_numeric"NaN"  )  =  true

str.join

str.join(List  -  ARGS(S), Linking Characters  -  S)

Concatenates elements of a list into a single String, linked by one or more characters (all characters supported).

Parameters :

List  -  ARGS(S)

List to process

Linking Characters  -  S

Specify linking characters to use, could be _, -, @, ;, or any characters

Return : S

  • Returns a single String that is the concatenation of all elements in the input list, separated by the specified join characters

  • Returns the single element if the input list contains only one element

  • Returns an empty String if the input list is null

  • Concatenates elements without a separator if the join character is null

Examples :

str.join(  [ "Datachain" , "remet" , "la" , "data" , "au" , "centre" , "du" , "métier" ],  " "  )  =  "Datachain remet la data au centre du métier"

str.join(  [ "Data" , "chain" ],  null  )  =  "Datachain"

str.levenshtein

str.levenshtein(Value  -  S, Value  -  S)

Returns Levenshtein score between two Strings (Similarity). The Levenshtein distance is the minimum number of editing operations on a single character (insertions, deletions or substitutions) required to transform one string into the other.Is case-sensitive.

Parameters :

Value  -  S

Specify first String to process

Value  -  S

Specify second String to process

Return : I

  • Returns an integer representing the Levenshtein distance between two input strings

  • Returns 0 if both strings are identical

  • Returns 0 if both strings are empty

  • Returns the length of the non-empty string if one of the strings is empty

  • Treats null inputs as empty strings

Examples :

str.levenshtein"Datachain""Data"  )  =  5

str.levenshtein"Datachain""Datachian"  )  =  2

str.levenshtein"data""data"  )  =  0

str.levenshtein"Datachain"null  )  =  9

str.list.as_str

str.list.as_str(List  -  LIST(S))

Transforms a list of String into a String.

Parameters :

List  -  LIST(S)

Specify list of string to process

Return : S

  • Returns a string representation of the list of string added as input

  • Returns null if the argument to receive the list of string is empty or null

  • Returns null if the input list is empty

Examples :

str.list.as_str(  [ "a" , "z" , "e" ]  )  =  "["a", "z", "e"]"

str.list.as_str(  [ ]  )  =  null

str.list.compact

str.list.compact(List  -  LIST(S))

Removes Null values from the list of String.

Parameters :

List  -  LIST(S)

Specify list of string to process

Return : LIST(S)

  • Returns a new list with all non-null elements from the input list

  • Returns an empty list if all elements in the input list are null

  • Returns a list with a single empty element if the input list is empty

str.list.contains

str.list.contains(List  -  LIST(S), String  -  S)

Checks if searched String is present in the list of strings.

Parameters :

List  -  LIST(S)

Specify list of string to process

String  -  S

String to search in list of string

Return : B

  • Returns true if the specified string is found in the input list

  • Returns false if the string is not found or if the list is empty

  • Returns false if the input list is null

  • Returns false if searching for a non-null value in a list containing only null

Examples :

str.list.contains(  [ "Datachain" , "Maestro" ],  "Maestro"  )  =  true

str.list.contains(  [ "Datachain" , "Maestro" , "Dccode" ],  "Data"  )  =  false

str.list.contains(  [ null , "Data" ],  null  )  =  true

str.list.count.distinct

str.list.count.distinct(List  -  LIST(S))

Returns a list of key values containing the distinct values and their occurrence in the list of String.

Parameters :

List  -  LIST(S)

Specify list of strings to process

Return : LIST(S)

  • Returns a list of key values, each containing a distinct value and its count in the input list

  • Returns an empty list if the input list contains only null values

  • Returns null if the input list is null or empty

Examples :

str.list.count.distinct(  [ "Data" , "Data" , "Data" , "Datachain" ]  )  =  [{"value":"Data", "count":3}, {"value":"Datachain", "count":1}]

str.list.count.distinctnull  )  =  null

str.list.create

str.list.create(Values  -  ARGS(S))

Creation of a list of String.

Parameters :

Values  -  ARGS(S)

Input a string (the ARGS function allows you to add n arguments)

Return : LIST(S)

  • Returns a list of character Strings created from the input arguments. Empty input Strings remain in the list. Input nulls become the String ‘null’ in the list.

str.list.diff

str.list.diff(First list  -  LIST(S), Second list  -  LIST(S))

Returns the list of Strings that are different between two String lists.

Parameters :

First list  -  LIST(S)

Specify first list of strings

Second list  -  LIST(S)

Specify second list of strings

Return : LIST(S)

  • Returns a list of strings containing elements that are different between the two input lists

  • Returns elements from the non-empty list if one list is empty

  • Returns an empty list if both input lists are identical

Examples :

str.list.diff(  [ "Datachain" , "Data" ],  [ "Datachain" ]  )  =  [ "Data" ]

str.list.diff(  [ "un" , "deux" ],  [ "trois" , "quatre" ]  )  =  [ "trois" , "quatre" , "un" , "deux" ]

str.list.distinct

str.list.distinct(List  -  LIST(S))

Returns distinct values (unique values) from a list of String

Parameters :

List  -  LIST(S)

Specify list of strings to process

Return : LIST(S)

  • Returns a list containing distinct (unique) values from the input list. Empty input Strings remain in the list. Input nulls become the String ‘null’ in the list.

Examples :

str.list.distinct(  [ "Datachain" , "Maestro" , "Maestro" ]  )  =  [ "Datachain" , "Maestro" ]

str.list.distinct(  [ null , null ]  )  =  [ null ]

str.list.except

str.list.except(First list  -  LIST(S), Second list  -  LIST(S))

Returns the Sting list, from the first list that are not in the second list.

Parameters :

First list  -  LIST(S)

Specify first list of strings

Second list  -  LIST(S)

Specify second list of strings

Return : LIST(S)

  • Returns a list of Strings containing elements that are different between the two input lists

  • Returns elements from the non-empty list if one list is empty

  • Returns an empty list if both input lists are identical

str.list.exist_str

str.list.exist_str(Values  -  S,De,Da,I,B.I, List  -  LIST(S), Operator  -  CHOICE(S))

Search in a String for the existence or non-existence of a list of characters (including spaces and special characters). Is case-sensitive.

Parameters :

Values  -  S,De,Da,I,B.I

Specify string to process

List  -  LIST(S)

Specify list of strings

Operator  -  CHOICE(S)

Precise operator

Return : B

  • Returns a boolean indicating the existence or non-existence of characters from the input list in the given string

  • Returns true if any character from the list is found in the string when using the 'EXISTS' operator

  • Returns true if no character from the list is found in the string when using the 'NOT_EXIST' operator

  • Returns false if the conditions are not met based on the specified operator

Examples :

str.list.exist_str"DataChain brings data back at the core of your business",  [ "business" , "lowcode" , "nocode" ],  "EXISTS"  )  =  true

str.list.exist_str"DataChain brings data back at the core of your business",  [ "datachain" , "lowcode" , "nocode" ],  "EXISTS"  )  =  false

str.list.exist_str"Dupont",  [ "t" , "o" ],  "NOT_EXIST"  )  =  false

str.list.exist_str"DataChain brings data back at the core of your busine$$",  [ "$" ],  "NOT_EXIST"  )  =  false

str.list.flat

str.list.flat(List  -  LIST(S))

Transforms an array of arrays into a single array.

Parameters :

List  -  LIST(S)

Specify list of lists to process

Return : LIST(S)

  • Returns a single flattened list from an input list of lists

  • Returns an empty list if all input sub-lists are empty

Examples :

str.list.flatdc.free_list"array(array("Datas", "are", "important"), array("for", "your", "business", "!!"))"  )  )  =  [ "Datas" , "are" , "important" , "for" , "your" , "business" , "!!" ]

str.list.get

str.list.get(List  -  LIST(S), Index  -  I,B.I)

Extract a value in a list of string by specifying index. Uses zero-based indexing (first element is at index 0).

Parameters :

List  -  LIST(S)

Specify list of strings to process

Index  -  I,B.I

Specify index to extract from list

Return : S

  • Returns the string value at the specified index in the input list

  • Returns null if the index is out of bounds (negative or exceeds list length)

  • Returns null if the list is empty

  • Returns null if the value at the specified index is null

Examples :

str.list.get(  [ "data" , "lowcode" , "nocode" ],  0  )  =  "data"

str.list.get(  [ "data" , "lowcode" , "nocode" ],  5  )  =  null

str.list.get(  [ "data" , null ],  1  )  =  null

str.list.insert

str.list.insert(List  -  LIST(S), Position  -  I, Value  -  S)

Inserts an element into a string list at the specified position (numbered from 1 and from right to left if negative). Adds null values if necessary to reach the desired position, and returns the new, modified list.

Parameters :

List  -  LIST(S)

Specify list of string to process

Position  -  I

Specify the insertion position in the list

Value  -  S

Specify the string to insert in the list

Return : LIST(S)

  • Returns a new list with the specified element inserted at the given position. The first position is 1 and numbering is from right to left when the given position is negative.

  • Returns a new list with nulls as padding values when the specified position exceeds the list size

  • Returns a new list with null inserted at the required position if null is the value to be inserted in the list

  • Returns an empty list if the list to be processed is not specified

  • Returns an empty list if position is 0, null or empty

Examples :

str.list.insert(  [ "is" , "nocode" , "and" , "lowcode" ],  1"Datachain"  )  =  [ "Datachain" , "is" , "nocode" , "and" , "lowcode" ]

str.list.insert(  [ "NAN" , "is" , "not" ],  5"value"  )  =  [ "NAN" , "is" , "not" , null , "value" ]

str.list.intersect

str.list.intersect(First list  -  LIST(S), Second list  -  LIST(S))

Returns the list of String in common between two String lists (can contain the same value several times).

Parameters :

First list  -  LIST(S)

Specify first list of strings

Second list  -  LIST(S)

Specify second list of strings

Return : LIST(S)

  • Returns a list of elements common to both input lists

  • Returns an empty list if no common elements are found

Examples :

str.list.intersect(  [ "datachain" , "datachain" ],  [ "datachain" ]  )  =  [ "datachain" ]

str.list.intersect(  [ "adobis" ],  [ "adobis" , "adobis" ]  )  =  [ "adobis" ]

str.list.intersect(  [ "datachain" , null ],  [ null ]  )  =  [ null ]

str.list.join

str.list.join(List  -  LIST(S), Separator  -  S)

Unions all elements of a list into a String, using a given separator (all characters supported).

Parameters :

List  -  LIST(S)

List of strings to process

Separator  -  S

Separator to use

Return : S

  • Returns a single String that is the concatenation of all elements in the input list, separated by the specified join characters

  • Returns the single element if the input list contains only one element

  • Returns an empty String if the input list is null

  • Concatenates elements without a separator if the join character is null

Examples :

str.list.join(  [ "Datachain" , "Maestro" ],  " and "  )  =  "Datachain and Maestro"

str.list.join(  [ "DataChain" , null ],  "!"  )  =  "DataChain!"

str.list.join(  [ "Data" , "Chain" ],  null  )  =  null

str.list.max

str.list.max(List  -  LIST(S))

Returns Maximum string from a list of String. Does not take into account null.

Parameters :

List  -  LIST(S)

Specify list to process

Return : S

  • Returns the maximum String from the input list based on alphabetical order

  • Returns null if the input list is null or contains only null values

  • Returns an empty String if it’s the only non-null value in the list

  • Returns null for an empty list

Examples :

str.list.max(  [ "chain" , "data" , "data" ]  )  =  "data"

str.list.maxnull  )  =  null

str.list.max(  [ "data" , null ]  )  =  "data"

str.list.max_occur

str.list.max_occur(List  -  LIST(S))

Gives the most represented String (or a list in egality case).

Parameters :

List  -  LIST(S)

Specify list to process

Return : LIST(S)

  • Returns a list containing the most frequently occurring string(s) in the input list. Nulls from the entry list are not counted

  • Returns an empty list if the input list is empty or null

Examples :

str.list.max_occur(  [ "data" , "data" , "datachain" ]  )  =  [ "data" ]

str.list.max_occur(  [ "data" , "business" , "core" ]  )  =  [ "core" , "business" , "data" ]

str.list.merge_by_index

str.list.merge_by_index(Lists  -  LIST(S))

Returns a List containing Lists of String for which the Nth list corresponds to the Nth elements of the given lists. If one of the given lists is shorter than the others, replace the missing values with null values. If one of the given lists is null or an empty list, replaces it with a list of length corresponding to the maximum length of the given lists, and whose values are all null.

Parameters :

Lists  -  LIST(S)

Input a List of String (the ARGS function allows you to add n arguments)

Return : LIST(S)

  • Returns a List of Lists of Strings for which the Nth list corresponds to the Nth elements of the lists given as parameters

  • If every parameters are null or are empty lists, returns an empty list

Examples :

str.list.merge_by_index(  [ str.list.create(  [ "01/01/2021" , "10/09/2023" , "10/09/2023" ]  ) , str.list.create(  [ "Alex" , "Luc" ]  ) , str.list.create(  [ "Renaut" , "Dubois" , "Annet" ]  ) ]  )  =  [ "["01/01/2021", "Alex", "Renaut"]" , "["10/09/2023", "Luc", "Dubois"]" , "["10/09/2023", null, "Annet"]" ]

str.list.merge_by_index(  [ null , str.list.create(  [ "Data" , "Chaine" , "Adobis" ]  ) ]  )  =  [ "[null, "Data"]" , "[null, "Chaine"]" , "[null, "Adobis"]" ]

str.list.merge_by_index(  [ null , [ ] , [ ] , null ]  )  =  [ ]

str.list.min

str.list.min(List  -  LIST(S))

Returns the first String in alphabetical order. Does not take into account null.

Parameters :

List  -  LIST(S)

Specify list to process

Return : S

  • Returns the minimum String from the input list based on alphabetical order

  • Returns null if the input list is null, empty, or contains only null values

  • Returns the first occurrence of the minimum String if there are duplicates

Examples :

str.list.min(  [ "data" , "data" , "chain" ]  )  =  "chain"

str.list.minnull  )  =  null

str.list.min(  [ "data" , null ]  )  =  "data"

str.list.min_occur

str.list.min_occur(List  -  LIST(S))

Gives the least represented String in a list of Strings (or a list in egality case).

Parameters :

List  -  LIST(S)

Specify list to process

Return : LIST(S)

  • Returns a list containing the least frequently occurring String(s) in the input list. An empty character String can be the least frequent

  • Returns an empty list if the input list is empty or null

Examples :

str.list.min_occur(  [ "data" , "data" , "datachain" ]  )  =  [ "datachain" ]

str.list.min_occur(  [ "data" , "business" , "core" ]  )  =  [ "core" , "business" , "data" ]

str.list.min_occur(  [ "data" , null , null ]  )  =  [ "data" ]

str.list.position

str.list.position(List  -  LIST(S), Value  -  S)

Returns the position in the list of the value of argument 2. Returns -1 if argument 2 is absent. Uses 0-based indexing (the first element is at position 0). Does not perform a partial search (the value searched for must be present in its entirety in the list). Case-sensitive.

Parameters :

List  -  LIST(S)

Specify list to process

Value  -  S

String to search in the list

Return : I

  • Returns an integer representing the position of the specified value in the input list

  • Returns -1 if the specified value is not found in the list

  • Returns the position of the first occurrence if the value appears multiple times

Examples :

str.list.position(  [ "data" , "chain" ],  "data"  )  =  0

str.list.position(  [ "data" , "chain" ],  "core"  )  =  -1

str.list.position(  [ "data" , null ],  null  )  =  1

str.list.remove

str.list.remove(List  -  LIST(S), Value  -  S)

Removes all occurrences of a String in a list of Strings. Case-sensitive.

Parameters :

List  -  LIST(S)

Specify list to process

Value  -  S

Value to remove

Return : LIST(S)

  • Returns a copy of the specified list of Strings from which all occurrences of the String given as parameter have been removed

  • If the String given as parameter is null, returns a copy of the specified list of Strings from which all occurrences of the value null have been removed

  • If the String given as a parameter is empty, returns a copy of the specified list of Strings from which all empty values have been removed

  • If the specified list of Strings is empty, returns an empty list

  • If the specified list of Strings is null, returns null

Examples :

str.list.remove(  [ "Datachain" , "Maestro" , "Maestro" , "Marketplace" ],  "Maestro"  )  =  [ "Datachain" , "Marketplace" ]

str.list.remove(  [ "Datachain" , "datachain" , "Maestro" ],  "datachain"  )  =  [ "Datachain" , "Maestro" ]

str.list.remove(  [ null , "Datachain" , null , "Datablock" ],  null  )  =  [ "Datachain" , "Datablock" ]

str.list.remove(  [ ],  "Datachain"  )  =  [ ]

str.list.remove_extend

str.list.remove_extend(List  -  LIST(S), List  -  ARGS(S))

Removes all occurrences of multiple Strings in a list of Strings. Case-sensitive.

Parameters :

List  -  LIST(S)

Specify list to process

List  -  ARGS(S)

Specify list of values to remove

Return : LIST(S)

  • Returns a copy of the specified list of Strings from which all occurrences of the multiple Strings given as parameters have been removed

  • If one of the Strings given as parameter is null, returns a copy of the specified list of Strings from which all occurrences of the value null have been removed

  • If one of the Strings given in parameter is empty, returns a copy of the specified list of Strings from which all empty values have been removed

  • If the specified list of Strings is empty, returns an empty list

  • If the specified list of Strings is null, returns null

Examples :

str.list.remove_extend(  [ "Datachain" , "Maestro" , "Maestro" , "Marketplace" ],  [ "Datachain" , "Maestro" ]  )  =  [ "Marketplace" ]

str.list.remove_extend(  [ "Datachain" , "datachain" , "Maestro" ],  [ "datachain" , "maEsTrO" ]  )  =  [ "Datachain" , "Maestro" ]

str.list.remove_extend(  [ null , "Datachain" , "Maestro" , null , "Datablock" ],  [ null , "Datablock" ]  )  =  [ "Datachain" , "Maestro" ]

str.list.remove_extend(  [ ],  [ "Datachain" ]  )  =  [ ]

str.list.replace

str.list.replace(List  -  LIST(S), Characters  -  S, Characters  -  S)

Replaces all occurrences of a String in a list of Strings. Case-sensitive.

Parameters :

List  -  LIST(S)

Specify list to process

Characters  -  S

Value to replace

Characters  -  S

Replacement value

Return : LIST(S)

  • Returns a copy of the specified list of Strings from which all occurrences of the String given as parameter have been replaced by the requested value

  • If the String to be replaced is null, returns a copy of the specified list of Strings from which all occurrences of the value null have been replaced by the requested value

  • If the String to be replaced is empty, returns a copy of the specified String list in which all empty values have been replaced with the requested value

  • If the specified list of Strings is empty, returns an empty list

  • If the specified list of Strings is null, returns an empty list

Examples :

str.list.replace(  [ "Datachain" , "Maestro" , "Maestro" , "Marketplace" ],  "Maestro""Datachain"  )  =  [ "Datachain" , "Datachain" , "Datachain" , "Marketplace" ]

str.list.replace(  [ null , "Datachain" , null , "Datablock" ],  null"Projet"  )  =  [ "Projet" , "Datachain" , "Projet" , "Datablock" ]

str.list.replace(  [ null , "Datachain" , null , "Datablock" ],  "Datachain"null  )  =  [ null , null , null , "Datablock" ]

str.list.replace(  [ ],  "Datachain""Datablock"  )  =  [ ]

str.list.replace_extend

str.list.replace_extend(List  -  LIST(S), List  -  ARGS(S), List  -  ARGS(S))

Replaces all occurrences of multiple Strings in a list of Strings. All replacements are done simultaneously. The correspondence between the value to be replaced and the replacement value is done according to the index of the values in the parameter list. If the same value appears multiple times among the values to be replaced, it will always be replaced by the replacement value associated with its first occurrence in the list. Case-sensitive.

Parameters :

List  -  LIST(S)

Specify list to process

List  -  ARGS(S)

Specify list of values to replace

List  -  ARGS(S)

Specify list of replacement values

Return : LIST(S)

  • Returns a copy of the specified list of Strings from which all occurrences of the multiple Strings given as parameters have been replaced by the given replacement values

  • If one of the Strings given as parameter is null, every occurrences of the value null will be replaced by the corresponding replacement values

  • If one of the Strings to replace given in parameter is empty, all occurrences of the empty value will be replaced by the corresponding replacement value

  • If the list of values to be replaced and the list of replacement values have different sizes, returns the list of values unmodified

  • If the list of values to be replaced or the list of replacement values is null or is an empty list, returns the list of values unmodified

  • If the specified list of Strings is empty, returns an empty list

  • If the specified list of Strings is null, returns an empty list

Examples :

str.list.replace_extend(  [ "Datachain" , "Maestro" , "Maestro" , "Marketplace" ],  [ "Maestro" , "Marketplace" ],  [ "Automatisation" , "Mise à disposition" ]  )  =  [ "Datachain" , "Automatisation" , "Automatisation" , "Mise à disposition" ]

str.list.replace_extend(  [ "Datachain" , "Maestro" ],  [ "Maestro" , "Maestro" ],  [ "Automatisation" , "Module complémentaire" ]  )  =  [ "Datachain" , "Automatisation" ]

str.list.replace_extend(  [ "Datachain" , "Marketplace" , "Maestro" ],  [ "Datachain" , "Maestro" ],  [ "Logiciel" ]  )  =  [ "Datachain" , "Marketplace" , "Maestro" ]

str.list.replace_extend(  [ ],  [ "Datachain" ],  [ "Datablock" ]  )  =  [ ]

str.list.sort

str.list.sort(List  -  LIST(S))

Sort a list of String in alphabetic order. Preserves duplicate elements in the sorted list.

Parameters :

List  -  LIST(S)

Specify list of strings to sort

Return : LIST(S)

  • Returns a new list with all strings from the input list sorted in ascending alphabetical order. Positions empty strings at the beginning of the sorted list

  • Treats null values as empty strings and places them at the beginning of the list

  • Returns an empty list if the input list is empty

  • Performs case-sensitive sorting, with uppercase letters preceding lowercase letters

Examples :

str.list.sort(  [ "data" , "chain" , "core" ]  )  =  [ "chain" , "core" , "data" ]

str.list.sort(  [ "chain" , null ]  )  =  [ null , "chain" ]

str.list.to_bigint

str.list.to_bigint(List  -  LIST(S))

Transforms a list of String into a list of Big integers.

Parameters :

List  -  LIST(S)

Specify list of strings to process

Return : LIST(B.I)

  • Returns a list of big integers converted from the input list of Strings

  • Converts only Strings representing positive integers (without decimals) to big integers

  • Returns null for Strings that cannot be converted to big integers

  • Preserves null values from the input list in the output list

  • Treats empty strings as non-convertible values and returns null for them

  • Returns an empty list if the input list is empty

  • Handles decimal numbers as non-convertible values, returning null for them

Examples :

str.list.to_bigint(  [ "123" , "456" , "789" , "10112" ]  )  =  [ 123 , 456 , 789 , 10112 ]

str.list.to_bigint(  [ "data" , "3.2" , "" , "1234" ]  )  =  [ null , null , null , 1234 ]

str.list.to_bigint(  [ "data" , null ]  )  =  [ null , null ]

str.list.to_dec

str.list.to_dec(List  -  LIST(S))

Transforms a list of String into a list of Decimals.

Parameters :

List  -  LIST(S)

Specify list of strings to process

Return : LIST(De)

  • Returns a list of Decimals converted from the input list of strings

  • Returns null for Strings that cannot be converted to Decimal numbers

  • Preserves null values from the input list in the output list

  • Treats empty Strings as non-convertible values and returns null for them

  • Returns an empty list if the input list is empty

Examples :

str.list.to_dec(  [ "1.2" , "3.2" , "-0.1" , "1234" , "+5678" ]  )  =  [ 1.2 , 3.2 , -0.1 , 1234 , 5678 ]

str.list.to_dec(  [ "data" , "" , null ]  )  =  [ null , null , null ]

str.list.to_int

str.list.to_int(List  -  LIST(S))

Transforms a list of String into a list of Integers

Parameters :

List  -  LIST(S)

Specify list of strings to process

Return : LIST(I)

  • Returns a list of Integers converted from the input list of Strings

  • Converts only Strings representing valid Integers to Integer objects

  • Returns null for Strings that cannot be converted to Integers

  • Preserves null values from the input list in the output list

  • Treats empty Strings and Decimals as non-convertible values and returns null for them

  • Returns an empty list if the input list is empty

Examples :

str.list.to_int(  [ "-1" , "0" , "1" , "2" ]  )  =  [ -1 , 0 , 1 , 2 ]

str.list.to_int(  [ "data" , "" , null ]  )  =  [ null , null , null ]

str.list.union

str.list.union(List  -  LIST(S), List  -  LIST(S))

Union of two String lists. The new list first contains the elements of the list assigned to the first argument, then those of the list corresponding to the second argument.

Parameters :

List  -  LIST(S)

Specify first list of strings

List  -  LIST(S)

Specify second list of strings

Return : LIST(S)

  • Returns a new list containing all elements from both input lists

  • Maintains duplicates from both input lists

  • Keep null values

  • Returns the non-empty list if one list is empty

  • Returns an empty list if both input lists are empty

  • Treats a null input list as an empty list

  • Returns null only if both input lists are null

Examples :

str.list.union(  [ "data" , "chain" , "brings" ],  [ "data" , "to" ]  )  =  [ "data" , "chain" , "brings" , "data" , "to" ]

str.list.union(  [ "data" , null ],  [ "chain" ]  )  =  [ "data" , null , "chain" ]

str.not_contains

str.not_contains(Value  -  S, Characters  -  S)

Verifies that a group of characters (all types of characters) are not in the String. Performs an exact character match, not substring search. Case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Precise the character(s) to search

Return : B

  • Returns true if none of the specified characters are found in the input String

  • Returns false if any of the specified characters are found in the input String

  • Returns true if the search string is null

  • Returns null if the input string is null

Examples :

str.not_contains"Datachain""chain"  )  =  false

str.not_contains"Datachain""eroc"  )  =  false

str.not_contains"Datachain""CR"  )  =  true

str.position

str.position(Value  -  S, Characters  -  S, Start  -  I,B.I)

Returns start position of characters group in a String. Case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Specify character(s) to search (can be a unique character)

Start  -  I,B.I

Search start position in string

Return : I

  • Returns the start position (indexed from 0) of the substring to search in the input String. Starts the search from the user specified start position

  • Returns -1 if the substring is not found from the start position onwards

  • Returns null if any of the input arguments is null

Examples :

str.position"datachain""chain"0  )  =  4

str.position"datachain""data"1  )  =  -1

str.remove

str.remove(Value  -  S, Characters  -  S)

Deletes all occurrences of characters groups in a String. Case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Characters to remove

Return : S

  • Returns a new String with all occurrences of the specified characters removed from the input string

  • Returns the original String unchanged if the specified characters are not found

  • Returns an empty string if either the input String or the characters to remove are null

  • Removes all occurrences of the specified characters, not just the first one

Examples :

str.remove"data""a"  )  =  "dt"

str.remove"d.a.t.a""."  )  =  "data"

str.remove_accent

str.remove_accent(Value  -  S)

Replaces accented characters in a String with non-accented characters. Characters case is preserved. Is case-sensitive

Parameters :

Value  -  S

Specify string to process

Return : S

  • Returns a new String with all accented characters replaced by their non-accented equivalents

  • Returns the original String if no accented characters are present

  • Returns null if the input String is null

Examples :

str.remove_accent"Dàtàçhàîñ"  )  =  "Datachain"

str.remove_accentnull  )  =  null

str.remove_extend

str.remove_extend(Value  -  S, Characters  -  ARGS(S))

Removes all occurrences of a list of characters in a String. Case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  ARGS(S)

Specify the list of characters to remove

Return : S

  • Returns a new string with all occurrences of the list of characters to remove, removed from the input String

  • Returns null if the input string is null

Examples :

str.remove_extend"datachain",  [ "c" , "h" , "n" , "i" ]  )  =  "dataa"

str.remove_extend"$busi&ness$",  [ "$" , "&" ]  )  =  "business"

str.remove_linebreak

str.remove_linebreak(Value  -  S)

Removes linebreak characters from a String.

Parameters :

Value  -  S

Specify String to process

Return : S

  • Returns a new String with all linebreak characters ('\n' and '\r') removed from the input String

  • Returns the original String unchanged if no linebreak characters are present

  • Returns empty if the input String is empty. Returns null if the input String is null

str.remove_space

str.remove_space(Value  -  S, Treatment  -  CHOICE(S))

Deletes space character in a String.

Parameters :

Value  -  S

Specify string to process

Treatment  -  CHOICE(S)

Specify processing mode to apply to string

Return : S

  • Returns a new String with spaces removed according to the specified mode:

  • ALL: Removes all spaces from the entire String

  • LEFT: Removes leading spaces from the String

  • RIGHT: Removes trailing spaces from the String

  • ONLY_ONE: Reduces multiple spaces to a single space between words

  • Returns the original String unchanged if no spaces match the specified mode

  • Returns null if the input String is null

Examples :

str.remove_space" datachain and maestro""LEFT"  )  =  "datachain and maestro"

str.remove_space"datachain and maestro ""RIGHT"  )  =  "datachain and maestro"

str.remove_space"1 2 3 4 5 6 ""ALL"  )  =  "123456"

str.remove_start

str.remove_start(Value  -  S, Characters  -  S)

Deletes characters group only if at beginning of given String, otherwise returns input String.

Parameters :

Value  -  S

Specify string to process

Characters  -  S

Specify character(s) to delete

Return : S

  • Returns a new String with the specified character group removed if it appears at the beginning of the input String

  • Returns the original String unchanged if the specified group of characters to be deleted is null or is not found at the beginning.

  • Returns an empty string if the input String is null

Examples :

str.remove_start"dataplatform""data"  )  =  "platform"

str.remove_start"dataplatform""Data"  )  =  "dataplatform"

str.replace

str.replace(Value  -  S,De,Da,I,B.I, Character(s)  -  S,De,Da,I,B.I, Character(s)  -  S,De,Da,I,B.I)

Replaces one or several character(s) in a String. Is case-sensitive.

Parameters :

Value  -  S,De,Da,I,B.I

Specify string to process

Character(s)  -  S,De,Da,I,B.I

Specify character(s) to search

Character(s)  -  S,De,Da,I,B.I

Specify wildcard string

Return : S

  • Returns a new String with all occurrences of the character(s) to search replaced by the given wildcard(s)

  • Returns the original String unchanged if the character(s) to replace are not found

  • Returns null if any of the input arguments is null

  • Effectively removes the searched character(s) if the replacement is an empty String

  • Can replace a single character with a longer string and vice versa

Examples :

str.replace"Dupont""t""d"  )  =  "Dupond"

str.replace"Dupont & Dupont""&""et"  )  =  "Dupont et Dupont"

str.replace_extend

str.replace_extend(Value  -  S, Characters  -  ARGS(S), Characters  -  ARGS(S))

Replaces all occurrences of a list of characters in a String. Case-sensitive.

Parameters :

Value  -  S

Specify string to process

Characters  -  ARGS(S)

Characters to search

Characters  -  ARGS(S)

Replacement characters

Return : S

  • Returns a new String with all occurrences of characters in the search list replaced by their corresponding characters in the replacement list

  • Effectively removes characters if their replacement is an empty string

  • Returns null if the input String or any of the lists is null

  • Returns the character String unchanged if the lists in arguments 2 and 3 are of unequal size

Examples :

str.replace_extend"diti",  [ "i" ],  [ "a" ]  )  =  "data"

str.replace_extend"178456",  [ "7" , "8" ],  [ "2" , "3" ]  )  =  "123456"

str.replace_null

str.replace_null(Value  -  S, String replacing Null  -  S)

Replaces a Null value by String value

Parameters :

Value  -  S

Specify value to process

String replacing Null  -  S

Specify string that replaces Null value

Return : S

  • Returns the specified replacement String if the input value is null

  • Returns the original input value unchanged if it is not null

  • Treats empty Strings and spaces as non-null values

Examples :

str.replace_null"Datachain""t"  )  =  "Datachain"

str.replace_nullnull"Data"  )  =  "Data"

str.replace_regex

str.replace_regex(Value  -  S,De,Da,I,B.I, REGEX  -  S, Character(s)  -  S,De,Da,I,B.I)

Replaces one or several character(s) with another using REGEX expression.

Parameters :

Value  -  S,De,Da,I,B.I

Specify Value to process

REGEX  -  S

Specify regular expression (Regex)

Character(s)  -  S,De,Da,I,B.I

Specify wildcard(s)

Return : S

  • Returns a new String with all occurrences matching the regular expression replaced by the specified wildcard(s)

  • Can replace patterns with longer or shorter strings, including empty Strings for removal

  • Returns null if the input String is null

Examples :

str.replace_regex"la1puis2ensuite3""\d""et"  )  =  "laetpuisetensuiteet"

str.size

str.size(Value  -  S)

Returns the size of a String (number of the String characters). Counts all types of characters including letters, digits, spaces, and special characters.

Parameters :

Value  -  S

Specify string to process

Return : I

  • Returns an integer representing the number of characters in the input string

  • Counts all types of characters including letters, digits, spaces, and special characters

  • Returns 0 for an empty string

  • Returns null if the input is null

Examples :

str.size"Dupont"  )  =  6

str.sizenull  )  =  null

str.soundex

str.soundex(Value  -  S)

Returns SOUNDEX of a String.

Parameters :

Value  -  S

Specify string to process

Return : S

  • Returns a string representing the soundex code (four characters starting with a letter followed by three digits) of the input String

  • Produces the same soundex code for words with similar pronunciation (case-insensitive)

  • Returns null if the input string is null

Examples :

str.soundex"Dupont"  )  =  "D153"

str.soundex"Dupond"  )  =  "D153"

str.soundexnull  )  =  null

str.split

str.split(Value  -  S, Separator  -  S)

Executes a split of a String by defining a separator.

Parameters :

Value  -  S

Specify String to split

Separator  -  S

Specify separator used to split string

Return : LIST(S)

  • Returns a list of strings resulting from splitting the input string by the specified separator

  • Is case-sensitive in matching the separator

  • Ignores consecutive separators, not creating empty elements in the result

  • Returns the entire string as a single element if the separator is not found

  • Returns the entire string as a single element if the separator is an empty string

  • Returns an empty list if the input string is null

  • Returns an empty list if the separator is null

  • Preserves the order of substrings as they appear in the original string

  • Use str.to_list_by_step to generate a list of characters with the whole string

Examples :

str.split"Datachain__maestro_and_dccode""_"  )  =  [ "Datachain" , "maestro" , "and" , "dccode" ]

str.split"Datachain &Maestro"" &"  )  =  [ "Datachain" , "Maestro" ]

str.split"Datachain & Maestro"""  )  =  [ "Datachain & Maestro" ]

str.split"Datachain & Maestro"null  )  =  [ ]

str.splitnull"data"  )  =  [ ]

str.split_and_concat

str.split_and_concat(Value  -  S, Separator  -  S, Value  -  S, Position  -  CHOICE(S))

Deletes one or more characters (separator) from a String, then concatenates another String with it.

Parameters :

Value  -  S

Specify the String to split

Separator  -  S

Specify separator to remove

Value  -  S

Specify string to be concatenate to final string

Position  -  CHOICE(S)

Specify concatenation position

Return : S

  • Returns a string resulting from the deletion of one or more characters (separator) from the input string and the concatenation of another String

  • Concatenates the specified string either at the start or end of the split result

  • Is case-sensitive in matching the separator and in concatenation

  • Returns null if the input string is null

Examples :

str.split_and_concat"Dupont&Dupon""&""d""END"  )  =  "DupontDupond"

str.split_and_concat"D*u*p*o*n*t*""*""d""END"  )  =  "Dupontd"

str.split_and_concatnull"o""j""START"  )  =  null

str.split_from_regex

str.split_from_regex(Value  -  S,De,Da,I,B.I, REGEX  -  S)

Split a String using regular expression.

Parameters :

Value  -  S,De,Da,I,B.I

Specify string to process

REGEX  -  S

Specify regular expression (Regex)

Return : LIST(S)

  • Returns a list of strings resulting from splitting the input string using the specified regex pattern

  • Returns an empty list if the input string is null

  • Returns the input string as the only element in the output list if the regex pattern has no match

Examples :

str.split_from_regex"1234.23""\."  )  =  [ "1234" , "23" ]

str.split_from_regex"Dupont_et_Dupond""\_"  )  =  [ "Dupont" , "et" , "Dupond" ]

str.split_from_regex"tTtOoTtOo""\p{Upper}"  )  =  [ "t" , "t" , "o" , "t" , "o" ]

str.split_from_regex_preserve_all

str.split_from_regex_preserve_all(Value  -  S,De,Da,I,B.I, REGEX  -  S)

Splits a string using the specified regular expression and preserves all segments, including empty strings generated by consecutive separators or matches at the boundaries.

Parameters :

Value  -  S,De,Da,I,B.I

Specify string to process

REGEX  -  S

Specify regular expression (Regex)

Return : LIST(S)

  • Returns a list of strings resulting from splitting the input string using the specified regex pattern, preserving empty segments generated by consecutive separators or boundary matches.

  • Returns an empty list if the input string is null.

  • Returns the input string as the sole element of the list if the regex pattern does not match any part of the input.

Examples :

str.split_from_regex_preserve_all"1234.23""\."  )  =  [ "1234" , "23" ]

str.split_from_regex_preserve_all"Dupont_et_Dupond""\_"  )  =  [ "Dupont" , "et" , "Dupond" ]

str.split_from_regex_preserve_all"la1puis2ensuite3""[0-9]"  )  =  [ "la" , "puis" , "ensuite" , "" ]

str.split_from_regex_preserve_all"tTtOoTtOo""\p{Upper}"  )  =  [ "t" , "t" , "o" , "t" , "o" ]

str.split_preserve_all

str.split_preserve_all(Value  -  S, Separator  -  S)

Executes a split of a String preserving all characters, including empty characters created by consecutive separators.

Parameters :

Value  -  S

Specify string to split

Separator  -  S

Specify separator used to split string

Return : LIST(S)

  • Returns a list of strings resulting from splitting the input string by the specified separator

  • Preserves all characters, including empty strings created by consecutive separators

  • Is case-sensitive in matching the separator

  • Returns the entire string as a single element if the separator is not found

  • Returns the entire string as a single element if the separator is an empty string

  • Returns an empty list if the input string is null

  • Returns an empty list if the separator is null

Examples :

str.split_preserve_all"Dupont_et_Dupond""\_"  )  =  [ "Dupont" , "et" , "Dupond" ]

str.split_preserve_all"la1puis222ensuite3""2"  )  =  [ "la1puis" , "" , "" , "ensuite3" ]

str.to_bigint

str.to_bigint(Value  -  S)

Transforms a String into a Big integer. Supports conversion of negative Big integer.

Parameters :

Value  -  S

Specify string to transform

Return : B.I

  • Returns a BigInteger value if the input string represents a valid integer

  • Returns null if the input string cannot be parsed as an integer

  • Returns null if the input is null

Examples :

str.to_bigint"1234"  )  =  1234

str.to_bigint"data"  )  =  null

str.to_bool

str.to_bool(Value  -  S)

Convert String to Boolean. Is case-insensitive.

Parameters :

Value  -  S

Specify string to transform

Return : B

  • Returns a Boolean value (true or false) if the input String is 'true' or 'false' respectively

  • Returns null if the input String is neither 'true' nor 'false'

  • Returns null if the input is null

  • Is case-insensitive in recognizing 'true' and 'false' Strings

Examples :

str.to_bool"false"  )  =  false

str.to_bool"data"  )  =  null

str.to_datez

str.to_datez(Value  -  S, Mask  -  CHOICE(S), Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Parse Date from string with timeZone and language.

Parameters :

Value  -  S

Specify string to transform

Mask  -  CHOICE(S)

Specify reading mask

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : Da

  • Returns a Date object in UTC format parsed from the input String using the specified pattern, timezone, and optional language

  • Supports a wide range of date and time formats, including ISO 8601

  • Parses dates with or without time components, defaulting missing time elements to 00:00:00

  • Supports fractional seconds up to nanosecond precision

  • Can parse dates in different languages when a locale is specified

  • Returns null if any input parameter is null or if the date String cannot be parsed

  • Converts all parsed dates to UTC, regardless of the input timezone

Examples :

str.to_datez"11/01/2020 13:34:59""MM/dd/yyyy HH:mm:ss""Europe/Paris""fr_FR"  )  =  2020-11-01T12:34:59Z

str.to_datez"2023-01-01T01:00:00.123+0100""yyyy-MM-dd’T’HH:mm:ss[.SSS]XXXX""UTC"null  )  =  2023-01-01T00:00:00.123Z

str.to_datez"2000-12-31 06:00:00""yyyy-MM-dd HH:mm:ss""GMT+07:10"null  )  =  2000-12-30T22:50:00Z

str.to_dec

str.to_dec(Value  -  S, Reading mask  -  CHOICE(S))

Transforms a String into a Decimal.

Parameters :

Value  -  S

Specify string to transform

Reading mask  -  CHOICE(S)

Specify reading mask used to read String to process

Return : De

  • Returns a Decimal value if the input String represents a valid Decimal number according to the specified mask

  • Returns null if the input String cannot be parsed as a number

  • Returns null if the input is null

  • Returns 'NaN' as a Decimal

Examples :

str.to_dec"4.23""##.##"  )  =  4.23

str.to_dec"true""##.##"  )  =  null

str.to_dec"NaN""##.##"  )  =  NaN

str.to_integer

str.to_integer(Value  -  S)

Transforms a String into an Integer

Parameters :

Value  -  S

Specify string to transform

Return : I

  • Returns an Integer value if the input String represents a valid whole number

  • Returns null if the input String cannot be parsed as an integer

  • Returns null if the input is null

Examples :

str.to_integer"4.23"  )  =  null

str.to_integer"1234"  )  =  1234

str.to_list

str.to_list(Value  -  S)

Transforms a String into a String list.

Parameters :

Value  -  S

Specify string to process such as ['test']

Return : LIST(S)

  • Returns a list of Strings parsed from the input String representation of a list

  • Converts null elements within the list to String nulls

  • Returns an empty list if the input represents an empty array

  • Returns null if the input String is null

Examples :

str.to_list"["data","chain"]"  )  =  [ "data" , "chain" ]

str.to_list"["data", null]"  )  =  [ "data" , null ]

str.to_list_by_step

str.to_list_by_step(Value  -  S, Number  -  I,B.I)

Generates a list of Strings from a string by giving a step length.

Parameters :

Value  -  S

Specify string to process

Number  -  I,B.I

Specify step integer (Nb of characters)

Return : LIST(S)

  • Returns a list of Strings created by dividing the input String into substrings of the specified length (step)

  • Returns the entire String as a single element if the step size exceeds the String length

  • Preserves spaces and treats them as regular characters in the substrings

  • Returns the entire String as a single element if a negative step size is provided

  • Returns an empty list if the input String is null or the step size is null

Examples :

str.to_list_by_step"abcdefghijklmnopqrstuvwxyz"13  )  =  [ "abcdefghijklm" , "nopqrstuvwxyz" ]

str.to_list_by_step"abcdefghijkl"5  )  =  [ "abcde" , "fghij" , "kl" ]

str.to_object

str.to_object(Key  -  ARGS(S), Value  -  ARGS(S,De,Da,I,B.I,B))

Transforms a String into an object.

Parameters :

Key  -  ARGS(S)

Specify keys

Value  -  ARGS(S,De,Da,I,B.I,B)

Specify values

Return : S

  • Returns a DataChain Object (of type String) created from the input lists of keys and values

  • May not preserve the original order of key-value pairs in the output

  • Pairs each key from the first list with its corresponding value from the second list

  • Correctly processes empty strings as valid keys or values

  • Returns only the key-value pairs corresponding to the size of the smallest of the input lists if they are of unequal length

  • Returns an empty object '{}' if both input lists are null

Examples :

str.to_object(  [ "cle1" , "cle2" ],  [ "valeur1" , "valeur2" ]  )  =  "{"cle2":"valeur2", "cle1":"valeur1"}"

str.to_words

str.to_words(Value  -  S)

Transforms a String value into a Word value. Useful for detailed text analysis, including Word positioning and context.

Parameters :

Value  -  S

Value to transform

Return : W

  • Returns a structured 'Words' type representation of the input String, including if this String is null or none

  • Transforms each word into an object containing detailed metadata about its position and context

  • Provides information including word length, position in text, sentence, and paragraph

  • Treats spaces as word separators

Examples :

str.to_words"Dupont et Dupond"  )  =  [{"term":"Dupont","term_length":6,"term_number_in_text":1,"term_number_in_paragraph":1,"term_number_in_sentence":1,"sentence_number_in_text":1,"sentence_number_in_paragraph":1,"paragraph_number_in_text":1},{"term":"et","term_length":2,"term_number_in_text":2,"term_number_in_paragraph":2,"term_number_in_sentence":2,"sentence_number_in_text":1,"sentence_number_in_paragraph":1,"paragraph_number_in_text":1},{"term":"Dupond","term_length":6,"term_number_in_text":3,"term_number_in_paragraph":3,"term_number_in_sentence":3,"sentence_number_in_text":1,"sentence_number_in_paragraph":1,"paragraph_number_in_text":1}]

str.to_wordsnull  )  =  [{"term":null,"term_length":null,"term_number_in_text":null,"term_number_in_paragraph":null,"term_number_in_sentence":null,"sentence_number_in_text":null,"sentence_number_in_paragraph":null,"paragraph_number_in_text":null}]

str.transform_case

str.transform_case(Value  -  S, Case to apply  -  CHOICE(S))

Sets String to upper or lower case.

Parameters :

Value  -  S

Specify string to process

Case to apply  -  CHOICE(S)

Specify type of transformation to be performed - Lower or Upper Case

Return : S

  • Returns a new String with all alphabetic characters converted to the specified case (upper or lower). Maintains the original content and length of the input String

  • Converts all letters to uppercase when 'UPPER' mode is specified

  • Converts all letters to lowercase when 'LOWER' mode is specified

  • Returns null if the input String is null

Examples :

str.transform_case"DaTa""UPPER"  )  =  "DATA"

str.transform_case"daTA""LOWER"  )  =  "data"

str.transform_case"Datachain ROCKS !""UPPER"  )  =  "DATACHAIN ROCKS !"

str.transform_to_num

str.transform_to_num(Value  -  S, Decimal separator  -  CHOICE(S))

Transforms a String into a valid decimal number. Removes non-numeric characters and positions correct decimal separator character.

Parameters :

Value  -  S

Specify string to process

Decimal separator  -  CHOICE(S)

Specify decimal separator

Return : De

  • Returns a Decimal value if the input string represents a valid number with the specified decimal separator

  • Returns null if the input string uses a different decimal separator than specified

  • Returns null if the input string is null

Examples :

str.transform_to_num"123,4""."  )  =  null

str.transform_to_num"123.4"","  )  =  null

str.transform_to_num"123.4""."  )  =  123.4

str.transform_to_numnull"."  )  =  null

Formulas for Date type

date.add

date.add(Increment  -  I,B.I, Type of addition to date  -  CHOICE(S), Date  -  Da)

Adds an Increment to a Date by specifying an Increment unit.

Parameters :

Increment  -  I,B.I

Specify value of Increment

Type of addition to date  -  CHOICE(S)

Choice of Increment time unit

Date  -  Da

Specify Date to increment

Return : Da

  • The date calculated following the addition of a increment for a unit of time

  • Null if the parameter is null

Examples :

date.add1"MS"null  )  =  null

date.add1"MINUTE"1970-01-01T00:00:00Z  )  =  1970-01-01T00:01:00Z

date.add1"WEEK"1970-01-01T00:00:00Z  )  =  1970-01-08T00:00:00Z

date.add-1"MONTH"1970-01-01T00:00:00Z  )  =  1969-12-01T00:00:00Z

date.create

date.create(Value to process  -  S, Reading mask  -  CHOICE(S), Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Create a Date from an entered value.

Parameters :

Value to process  -  S

Specify a value

Reading mask  -  CHOICE(S)

Specify reading mask

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : Da

  • The entered value in date format with defined parameters

  • null if parameter is null

Examples :

date.create"01/11/2020""MM-dd-yyyy""Europe/Paris""fr_FR"  )  =  null

date.create"2001/01/12 12:59:17""yyyy/MM/dd HH:mm:ss""Europe/London"null  )  =  2001-01-12T12:59:17.0Z

date.create"20230101T01:00:00Z""[yyyyMMdd][yyyy-MM-dd][yyyy-DDD]['T'[HHmmss][HHmm][HH:mm:ss][HH:mm][.SSSSSSSSS][.SSSSSS][.SSS][.SS][.S]][OOOO][O][XXXXX][XXXX][XXX][XX][X]['['VV']']""UTC"null  )  =  2023-01-01T01:00:00Z

date.diff

date.diff(Time unit  -  CHOICE(S), First date  -  Da, Second date  -  Da)

Returns the difference between two Date in the requested time unit (truncated value).

Parameters :

Time unit  -  CHOICE(S)

Specify time unit for calculation

First date  -  Da

Specify first date to process

Second date  -  Da

Specify second date to process

Return : B.I

  • The truncate value of time between the two dates in the specified unit time

  • Null if one of the parameters is null

Examples :

date.diff"QUARTER"1970-01-01T00:00:00Z1971-01-01T00:00:00Z  )  =  -4

date.diff"DAY"1970-01-01T00:00:00Z1970-01-02T00:00:00Z  )  =  -1

date.diff"MS"1970-01-01T00:00:01Z1970-01-01T00:00:00Z  )  =  1000

date.from_timestamp

date.from_timestamp(Timestamp  -  B.I)

Transforms a date in ISO format from a date in UNIX_TIMESTAMP format.

Parameters :

Timestamp  -  B.I

Specify timestamp to transform

Return : Da

  • The date from the specified timestamp in milliseconds

  • Null if one of the parameters is null

Examples :

date.from_timestamp0  )  =  1970-01-01T00:00:00Z

date.from_timestamp31536000000  )  =  1971-01-01T00:00:00Z

date.from_timestampnull  )  =  null

date.generate

date.generate(Start  -  Da, End  -  Da, Unit time  -  CHOICE(S), Increment  -  I)

Generates a list of Date from start date by adding increment until vadatelue is less or equal than end date.

Parameters :

Start  -  Da

Specify the increment start date

End  -  Da

Specify the increment end date

Unit time  -  CHOICE(S)

Specify the unit of time to use on which the unit of time will be applied

Increment  -  I

Input the value of the increment

Return : LIST(Da)

  • The list of dates starting from the start date, adding the increment in a uite of time until the date is less than or equal to the end date

  • An empty list if increment < = 0 or is null

Examples :

date.generate1999-12-31T00:00:00Z2000-01-02T00:00:00Z"DAY"1  )  =  [ 1999-12-31T00:00:00Z , 2000-01-01T00:00:00Z , 2000-01-02T00:00:00Z ]

date.generate2000-01-02T00:00:00Z1999-12-31T00:00:00Z"DAY"-1  )  =  [ 2000-01-02T00:00:00Z , 2000-01-01T00:00:00Z , 1999-12-31T00:00:00Z ]

date.if

date.if(Rule  -  B, Value if true  -  Da, Value if false  -  Da)

Checks if condition is met and returns a Date if result of the condition you specified is True, and another Date if result is False.

Parameters :

Rule  -  B

Specify condition to process

Value if true  -  Da

Returned value if test is true

Value if false  -  Da

Returned value if test is false

Return : Da

  • The value of argument 2 if the condition is true, otherwise the value of argument 3

  • Null if the condition is null

date.is_date

date.is_date(Value  -  S, Reading mask  -  CHOICE(S))

Checks if a value is a Date.

Parameters :

Value  -  S

Specify string to process

Reading mask  -  CHOICE(S)

Specify reading mask

Return : B

  • Is true if the entered value is a Date in the specified reading mask, otherwise false

  • Null if the parameter is null

Examples :

date.is_date"1970-01-01T00:00:00.000100Z""yyyy-MM-dd’T’HH:mm:ss.SSSSSSXXX"  )  =  true

date.is_date"-1""dd-MM-yyyy"  )  =  false

date.is_date"10/11/1987""dd/MM/yyyy"  )  =  true

date.is_datenull"yyyyMMdd"  )  =  null

date.list.as_str

date.list.as_str(List  -  LIST(Da,S))

Transforms a list of dates into a String.

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : S

  • The list of dates in string format

Examples :

date.list.as_str(  [ 1970-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]  )  =  "[1970-01-01 00:00:00.000, 1973-01-01 00:00:00.000, 1971-01-01 00:00:00.000, 1972-01-01 00:00:00.000]"

date.list.as_str(  [ ]  )  =  null

date.list.compact

date.list.compact(List  -  LIST(Da))

Removes Null values from the list of dates.

Parameters :

List  -  LIST(Da)

Specify list to process

Return : LIST(Da)

  • The list of dates without null value

Examples :

date.list.compact(  [ 1970-01-01T00:00:00Z , 2000-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 2000-01-01T00:00:00Z ]

date.list.compact(  [ null , 1970-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.contains

date.list.contains(List  -  LIST(Da), Date  -  Da)

Checks if searched Date is present in list.

Parameters :

List  -  LIST(Da)

Specify list to process

Date  -  Da

Date to search in the list of dates

Return : B

  • True if the searched number is present in the list of dates, otherwise false

Examples :

date.list.contains(  [ 2024-01-02T01:01:01Z , 2023-02-02T02:02:02Z ],  2024-01-02T01:01:01Z  )  =  true

date.list.contains(  [ null , 2024-01-02T01:01:01Z ],  2024-01-02T01:01:01Z  )  =  true

date.list.count.distinct

date.list.count.distinct(List  -  LIST(Da,S))

Returns a list of key values containing the distinct values and their occurrence in the list of dates.

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : LIST(S)

  • The list in JSON format containing the value of the list in key and in value the number of occurrences of this value in the list

  • Null if parameter is null

Examples :

date.list.count.distinct(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1970-01-01T00:00:00Z ]  )  =  [{"value":"1970-01-01 00:00:00.000","count":2},{"value":"1971-01-01 00:00:00.000","count":1}]

date.list.count.distinct(  [ ]  )  =  null

date.list.create

date.list.create(Value  -  ARGS(Da))

Creating a list from 1 to n Dates.

Parameters :

Value  -  ARGS(Da)

Input a date to add (the ARGS function allows you to add n arguments)

Return : LIST(Da)

  • The list containing dates entered in parameter

  • Null if parameter is null

date.list.diff

date.list.diff(First list  -  LIST(Da), Second list  -  LIST(Da))

Returns the list of Date thats different between two Date lists.

Parameters :

First list  -  LIST(Da)

Specify first list of date

Second list  -  LIST(Da)

Specify second list of date

Return : LIST(Da)

  • The list of dates that are in one list and are not present in the other (null is a value)

Examples :

date.list.diff(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ],  [ 1970-01-01T00:00:00Z , 2000-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 2000-01-01T00:00:00Z ]

date.list.diff(  [ 1970-01-01T00:00:00Z , 1974-01-01T00:00:00Z , 1970-01-01T00:00:00Z ],  [ ]  )  =  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z , 1974-01-01T00:00:00Z ]

date.list.distinct

date.list.distinct(List  -  LIST(Da,S))

Returns a list containing distinct dates (unique values) of the entered list.

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : LIST(Da)

  • The list containing only the distinct dates of the entered list

Examples :

date.list.distinct(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.distinct(  [ 1970-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]

date.list.except

date.list.except(First list  -  LIST(Da), Second list  -  LIST(Da))

Returns a list of Date, from the first list which are not present in the second list.

Parameters :

First list  -  LIST(Da)

Specify first list of date

Second list  -  LIST(Da)

Specify second list of date

Return : LIST(Da)

  • The list of all dates from the first list that are not in the second list

Examples :

date.list.except(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1974-01-01T00:00:00Z , 1972-01-01T00:00:00Z ],  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1974-01-01T00:00:00Z , 1970-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]  )  =  [ ]

date.list.except(  [ 1970-01-01T00:00:00Z , null , 1972-01-01T00:00:00Z ],  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z ]  )  =  [ null , 1972-01-01T00:00:00Z ]

date.list.flat

date.list.flat(List  -  LIST(Da))

Transforms an array of arrays into a single array.

Parameters :

List  -  LIST(Da)

Specify list of lists to process

Return : LIST(Da)

  • The list of dates represents all the dates in the lists

date.list.get

date.list.get(List  -  LIST(Da), Index  -  I,B.I)

Extract a Date in a list by specifying index. The first element of the list at index 0.

Parameters :

List  -  LIST(Da)

Specify list to process

Index  -  I,B.I

Specify the position of the date to extract in the list. The first element of the list at index 0

Return : Da

  • The date in the list at the position indicated by the Index parameter

  • The first value has index 0

  • Null if the index is outside the list

Examples :

date.list.get(  [ 1970-01-01T00:00:00Z , 2000-01-01T00:00:00Z ],  1  )  =  2000-01-01T00:00:00Z

date.list.get(  [ 1970-01-01T00:00:00Z , 2000-01-01T00:00:00Z ],  5  )  =  null

date.list.insert

date.list.insert(List  -  LIST(Da), Position  -  I, Value  -  Da)

Inserts an element in a list of dates at the specified position (numbered from 1 and from right to left if negative). Adds null values if necessary to reach the desired position and returns the new, modified list.

Parameters :

List  -  LIST(Da)

Specify list to process

Position  -  I

Specify the insertion position in the list of date

Value  -  Da

Specify the date to insert in the list

Return : LIST(Da)

  • Returns a new list with the specified element inserted at the given position. The first position is 1 and numbering is from right to left when the given position is negative.

  • Returns a new list with nulls as padding values when the specified position exceeds the list size

  • Returns a new list with null inserted at the required position if null is the value to be inserted in the list

  • Returns an empty list if the list to be processed is not specified

  • Returns an empty list if position is 0, null or empty

Examples :

date.list.insert(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ],  11974-01-01T00:00:00Z  )  =  [ 1974-01-01T00:00:00Z , 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ]

date.list.insert(  [ 1970-01-01T00:00:00Z ],  -11973-01-01T00:00:00Z  )  =  [ 1970-01-01T00:00:00Z , 1973-01-01T00:00:00Z ]

date.list.intersect

date.list.intersect(First list  -  LIST(Da), Second list  -  LIST(Da))

Returns the list of Date in common between two Date lists (can contain the same value several times).

Parameters :

First list  -  LIST(Da)

Specify first list of Date

Second list  -  LIST(Da)

Specify second list of Date

Return : LIST(Da)

  • The list with the values which are common to the two lists, can contain the same value several times in case of occurrence of the value in the lists

Examples :

date.list.intersect(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ],  [ 1970-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.intersect(  [ null , null ],  [ null , null ]  )  =  [ null , null ]

date.list.max

date.list.max(List  -  LIST(Da,S))

Returns most recent Date from a list of Date. Default reading mask : yyyy-MM-dd HH:mm:ss. Does not take into account null.

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : Da

  • The most recent date in the list excluding null values

Examples :

date.list.max(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1972-01-02T00:00:00Z ]  )  =  1972-01-02T00:00:00Z

date.list.max(  [ 1970-01-01T00:00:00Z , null ]  )  =  1970-01-01T00:00:00Z

date.list.max_occur

date.list.max_occur(List  -  LIST(Da,S))

Gives the most represented Date (or a list in egality case).

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : LIST(Da)

  • The most frequent date in the list

  • The list of dates if several date are most represented in the list

Examples :

date.list.max_occur(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.max_occur(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z ]

date.list.max_occur(  [ 1970-01-01T00:00:00Z , null ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.min

date.list.min(List  -  LIST(Da,S))

Returns oldest Date in a list of Date. Default Reading mask : yyyy-MM-dd HH:mm:ss. Does not take into account null.

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : Da

  • The least recent date in the list excluding null values

Examples :

date.list.min(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1972-01-02T00:00:00Z ]  )  =  1970-01-01T00:00:00Z

date.list.min(  [ 1970-01-01T00:00:00Z , null ]  )  =  1970-01-01T00:00:00Z

date.list.min_occur

date.list.min_occur(List  -  LIST(Da,S))

Gives the least represented Date (or a list in egality case).

Parameters :

List  -  LIST(Da,S)

Specify list to process

Return : LIST(Da)

  • The least frequent date in the list

  • The list of dates if several date are least represented in the list

Examples :

date.list.min_occur(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.min_occur(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z ]

date.list.min_occur(  [ 1970-01-01T00:00:00Z , null ]  )  =  [ 1970-01-01T00:00:00Z ]

date.list.position

date.list.position(List  -  LIST(Da), Value  -  Da)

Returns the position in the list of the value of argument 2. Returns -1 if argument 2 is absent.

Parameters :

List  -  LIST(Da)

Specify list to process

Value  -  Da

Date to search in list

Return : I

  • The position in the list of the searched date

  • The first element of the list at index 0

  • Is -1 if the searched element is not in the list

Examples :

date.list.position(  [ 1970-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1974-01-01T00:00:00Z ],  1975-01-01T00:00:00Z  )  =  -1

date.list.position(  [ 1970-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1974-01-01T00:00:00Z , 1975-01-01T00:00:00Z ],  1974-01-01T00:00:00Z  )  =  3

date.list.remove

date.list.remove(List  -  LIST(Da), Value  -  Da)

Removes all occurrences of a Date in a list of Dates.

Parameters :

List  -  LIST(Da)

Specify list to process

Value  -  Da

Value to remove

Return : LIST(Da)

  • Returns a copy of the specified list of Dates from which all occurrences of the Date given as parameter have been removed

  • If the Date given as parameter is null or empty, returns a copy of the specified list of Dates from which all occurrences of the value null or empty have been removed

  • If the specified list of Dates is empty, returns an empty list

  • If the specified list of Dates is null, returns null

Examples :

date.list.remove(  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2023-01-01T00:00:00Z , 2025-01-01T12:00:34Z ],  2023-01-01T00:00:00Z  )  =  [ 2024-01-01T00:00:00Z , 2025-01-01T12:00:34Z ]

date.list.remove(  [ null , 2023-01-01T23:59:59Z , null , 2002-09-09T00:00:00Z ],  null  )  =  [ 2023-01-01T23:59:59Z , 2002-09-09T00:00:00Z ]

date.list.remove(  [ null , 1985-07-12T00:00:00Z , 2023-01-01T00:00:00Z , 2023-01-01T00:00:00Z ],  2023-01-01T00:00:00Z  )  =  [ null , 1985-07-12T00:00:00Z ]

date.list.remove(  [ ],  2023-01-01T00:00:00Z  )  =  [ ]

date.list.remove_extend

date.list.remove_extend(List  -  LIST(Da), List  -  ARGS(Da))

Removes all occurrences of multiple Dates in a List of Dates.

Parameters :

List  -  LIST(Da)

Specify list to process

List  -  ARGS(Da)

Specify list of values to remove

Return : LIST(Da)

  • Returns a copy of the specified list of Dates from which all occurrences of the multiple Dates given as parameters have been removed

  • If one of the Dates given as parameter is null or empty, returns a copy of the specified list of Dates from which all occurrences of the value null or empty have been removed

  • If the specified list of Dates is empty, returns an empty list

  • If the specified list of Dates is null, returns null

Examples :

date.list.remove_extend(  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2023-01-01T00:00:00Z , 2025-01-01T12:00:34Z ],  [ 2023-01-01T00:00:00Z , 2025-01-01T12:00:34Z , 2030-01-01T00:00:00Z ]  )  =  [ 2024-01-01T00:00:00Z ]

date.list.remove_extend(  [ null , 2023-01-01T23:59:59Z , null , 2002-09-09T00:00:00Z , 2010-11-25T00:30:00 ],  [ null , 2015-11-25T00:00:00 ]  )  =  [ 2023-01-01T23:59:59Z , 2002-09-09T00:00:00Z , 2010-11-25T00:30:00 ]

date.list.remove_extend(  [ null , 1985-07-12T00:00:00Z , 2023-01-01T00:00:00Z , 2023-01-01T00:00:00Z ],  [ 2023-01-01T00:00:00Z ]  )  =  [ null , 1985-07-12T00:00:00Z ]

date.list.remove_extend(  [ ],  [ 2023-01-01T00:00:00Z ]  )  =  [ ]

date.list.replace

date.list.replace(List  -  LIST(Da), Date  -  Da, Date  -  Da)

Replaces all occurrences of a Date in a list of Dates.

Parameters :

List  -  LIST(Da)

Specify list to process

Date  -  Da

Value to replace

Date  -  Da

Replacement value

Return : LIST(Da)

  • Returns a copy of the specified list of Dates from which all occurrences of the Date given as parameter have been replaced by the requested value

  • If the Date to be replaced is null or empty, returns a copy of the specified list of Dates from which all occurrences of the value null or empty have been replaced by the requested value

  • If the specified list of Dates is empty, returns an empty list

  • If the specified list of Dates is null, returns an empty list

Examples :

date.list.replace(  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2023-01-01T00:00:00Z , 2025-01-01T12:00:34Z ],  2023-01-01T00:00:00Z1923-01-01T00:00:00Z  )  =  [ 1923-01-01T00:00:00Z , 2024-01-01T00:00:00 , 1923-01-01T00:00:00Z , 2025-01-01T12:00:34Z ]

date.list.replace(  [ null , 2023-01-01T00:00:00Z , null , 2024-01-01T00:00:00Z ],  null2023-01-01T00:00:00Z  )  =  [ 2023-01-01T00:00:00Z , 2023-01-01T00:00:00Z , 2023-01-01T00:00:00Z , 2024-01-01T00:00:00Z ]

date.list.replace(  [ null , 2023-01-01T00:00:00Z , null , 2024-01-01T00:00:00Z ],  2023-01-01T00:00:00Znull  )  =  [ null , null , null , 2024-01-01T00:00:00Z ]

date.list.replace(  [ ],  2023-01-01T00:00:00Z1923-01-01T00:00:00Z  )  =  [ ]

date.list.replace_extend

date.list.replace_extend(List  -  LIST(Da), List  -  ARGS(Da), List  -  ARGS(Da))

Replaces all occurrences of multiple Dates in a list of Dates. All replacements are done simultaneously. The correspondence between the value to be replaced and the replacement value is done according to the index of the values in the parameter list. If the same value appears multiple times among the values to be replaced, it will always be replaced by the replacement value associated with its first occurrence in the list.

Parameters :

List  -  LIST(Da)

Specify list to process

List  -  ARGS(Da)

Specify list of values to replace

List  -  ARGS(Da)

Specify list of replacement values

Return : LIST(Da)

  • Returns a copy of the specified list of Dates from which all occurrences of the multiple Dates given as parameters have been replaced by the given replacement values

  • If one of the Dates given as parameter is null or empty, every occurrences of the value null or empty will be replaced by the corresponding replacement values

  • If the list of values to be replaced and the list of replacement values have different sizes, returns the list of values unmodified

  • If the list of values to be replaced or the list of replacement values is null or is an empty list, returns the list of values unmodified

  • If the specified list of Dates is empty, returns an empty list

  • If the specified list of Dates is null, returns an empty list

Examples :

date.list.replace_extend(  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2023-01-01T00:00:00Z , 2025-01-01T12:00:34Z ],  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00Z , 2030-05-06T00:00:00Z ],  [ 1923-01-01T00:00:00Z , 1924-01-01T00:00:00Z , 1930-05-06T00:00:00Z ]  )  =  [ 1923-01-01T00:00:00Z , 1924-01-01T00:00:00 , 1923-01-01T00:00:00Z , 2025-01-01T12:00:34Z ]

date.list.replace_extend(  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2023-01-01T00:00:00Z , 2025-01-01T12:00:34Z ],  [ 2023-01-01T00:00:00Z , 2023-01-01T00:00:00Z , 2023-01-01T00:00:00Z ],  [ 1923-01-01T00:00:00Z , 1923-12-31T00:00:00Z , 1900-01-01T00:00:00Z ]  )  =  [ 1923-01-01T00:00:00Z , 2024-01-01T00:00:00 , 1923-01-01T00:00:00Z , 2025-01-01T12:00:34Z ]

date.list.replace_extend(  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2025-01-01T12:00:34Z ],  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00Z ],  [ 1923-01-01T00:00:00Z ]  )  =  [ 2023-01-01T00:00:00Z , 2024-01-01T00:00:00 , 2025-01-01T12:00:34Z ]

date.list.replace_extend(  [ null , 2023-01-01T00:00:00Z , 2024-01-01T00:00:00Z , 2025-01-01T12:00:34Z ],  [ ],  [ ]  )  =  [ null , 2023-01-01T00:00:00Z , 2024-01-01T00:00:00Z , 2025-01-01T12:00:34Z ]

date.list.replace_extend(  [ ],  [ 2023-01-01T00:00:00Z ],  [ 1923-01-01T00:00:00Z ]  )  =  [ ]

date.list.sort

date.list.sort(List  -  LIST(Da))

Sorting a list of Dates by ascending date.

Parameters :

List  -  LIST(Da)

Date list to sort

Return : LIST(Da)

  • The list sorted by ascending date

  • Null values are placed at the beginning of the list

Examples :

date.list.sort(  [ 1970-01-01T00:00:00Z , 1973-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z , 1973-01-01T00:00:00Z ]

date.list.union

date.list.union(First list  -  LIST(Da), Second list  -  LIST(Da))

Union of two Date lists.

Parameters :

First list  -  LIST(Da)

Specify first list of Date

Second list  -  LIST(Da)

Specify second list of Date

Return : LIST(Da)

  • The list containing the dates of both lists together

Examples :

date.list.union(  [ 1974-01-01T00:00:00Z ],  [ 1974-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1970-02-01T00:00:00Z ]  )  =  [ 1974-01-01T00:00:00Z , 1974-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1970-02-01T00:00:00Z ]

date.list.union(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1970-01-01T00:00:00Z ],  [ ]  )  =  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1970-01-01T00:00:00Z ]

date.to_bigint

date.to_bigint(Date  -  Da)

Transform a Date into a Big Integer (timestamp in ms).

Parameters :

Date  -  Da

Specify date to transform

Return : B.I

  • The conversion of date in timestamp (in milliseconds)

  • Null if the parameter is null

Examples :

date.to_bigint1970-01-01T00:00:00Z  )  =  0

date.to_bigint1971-01-01T00:00:00Z  )  =  31536000000

date.to_bigintnull  )  =  null

date_time.day_of_month

date_time.day_of_month(Date  -  Da, Timezone  -  CHOICE(S))

Returns the day number of the month for a given Date in the specified Timezone, ranging from 1 to 31.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the day number of the month for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.day_of_month2024-03-20T00:00:00Z"UTC"  )  =  20

date_time.day_of_month2024-03-20T20:00:00Z"Asia/Tokyo"  )  =  21

date_time.day_of_monthnull"UTC"  )  =  null

date_time.day_of_week

date_time.day_of_week(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the day number of the week for a given Date in the specified Timezone and Language, ranging from 1 to 7.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : I

  • The Integer corresponding to the day number of the week for the given Date, in the specified Timezone and Language

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • If the Language is null or not specified, we use the user’s system parameters Language

  • Null if the Date parameter is null

Examples :

date_time.day_of_week2024-03-20T00:00:00Z"UTC""fr_FR"  )  =  3

date_time.day_of_weeknull"UTC""fr_FR"  )  =  null

date_time.day_of_year

date_time.day_of_year(Date  -  Da, Timezone  -  CHOICE(S))

Returns the day number of the year for a given Date in the specified Timezone, ranging from 1 to 365 (or 366 in a leap year).

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the day number of the year for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.day_of_year2024-08-08T00:00:00Z"UTC"  )  =  221

date_time.day_of_year2024-08-08T20:00:00Z"Asia/Tokyo"  )  =  222

date_time.day_of_yearnull"UTC"  )  =  null

date_time.deducted

date_time.deducted(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S), Type  -  CHOICE(S))

Returns the Date based on the defined parameter, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Type  -  CHOICE(S)

Specify deduction type

Return : Da

  • Deduces the corresponding date with the defined parameters from a given date

  • Null if the parameter is null

Examples :

date_time.deductednullnullnullnull  )  =  null

date_time.deducted2023-10-18T06:39:12Znullnull"WEEK_START"  )  =  2023-10-16T00:00:00Z

date_time.deducted2023-10-18T06:39:12Z"Europe/Paris""fr_FR""SEMESTRE_START"  )  =  2023-06-30T22:00:00Z

date_time.deducted2023-10-18T06:39:12Z"UTC""en_US""WEEK_START"  )  =  2023-10-15T00:00:00Z

date_time.hour_of

date_time.hour_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the hour number for a given Date in the specified Timezone, ranging from 0 to 23.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the hour number for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.hour_of2027-01-01T00:00:00Z"UTC"  )  =  0

date_time.hour_of2023-12-31T20:00:00Z"Asia/Tokyo"  )  =  5

date_time.hour_ofnull"UTC"  )  =  null

date_time.minute_of

date_time.minute_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the year number for a given Date in the specified Timezone, ranging from 0 to 59.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the minute number for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.minute_of2027-01-01T00:00:00Z"UTC"  )  =  0

date_time.minute_of2023-12-31T20:11:00Z"Asia/Tokyo"  )  =  11

date_time.minute_ofnull"UTC"  )  =  null

date_time.month_end

date_time.month_end(Timezone  -  CHOICE(S))

Returns the Date of the end of month for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of month for current date with defined parameter

  • Null if the parameter is null

date_time.month_end_of

date_time.month_end_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the end of month for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of month for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.month_end_ofnull"Europe/Paris"  )  =  null

date_time.month_end_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2023-10-30T23:00:00Z

date_time.month_of

date_time.month_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the month number for a given Date in the specified Timezone, ranging from 1 to 12.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the month number for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.month_of2027-01-01T00:00:00Z"UTC"  )  =  1

date_time.month_of2023-12-31T20:00:00Z"Asia/Tokyo"  )  =  1

date_time.month_ofnull"UTC"  )  =  null

date_time.month_of_year

date_time.month_of_year(Date  -  Da, Timezone  -  CHOICE(S))

Returns the month number of the year for a given Date in the specified Timezone, ranging from 1 to 12.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the month number of the year for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.month_of_year2025-03-31T00:00:00Z"UTC"  )  =  3

date_time.month_of_year2025-06-03T12:00:00Z"America/Los_Angeles"  )  =  6

date_time.month_of_yearnull"UTC"  )  =  null

date_time.month_start

date_time.month_start(Timezone  -  CHOICE(S))

Returns the Date of the start of month for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of month for current date with defined parameter

  • Null if the parameter is null

date_time.month_start_of

date_time.month_start_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the start of month for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the start of the end of month for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.month_start_ofnull"Europe/Paris"  )  =  null

date_time.month_start_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2023-09-30T22:00:00Z

date_time.quarter_end

date_time.quarter_end(Timezone  -  CHOICE(S))

Returns the Date of the end of quarter for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of quarter for current date with defined parameter

  • Null if the parameter is null

date_time.quarter_end_of

date_time.quarter_end_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the end of quarter for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of quarter for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.quarter_end_ofnull"Europe/Paris"  )  =  null

date_time.quarter_end_of2023-07-18T06:39:12Z"Europe/Paris"  )  =  2023-09-29T22:00:00Z

date_time.quarter_start

date_time.quarter_start(Timezone  -  CHOICE(S))

Returns the Date of the start of quarter for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of quarter for current date with defined parameter

  • Null if the parameter is null

date_time.quarter_start_of

date_time.quarter_start_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the start of quarter for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of quarter for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.quarter_start_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2023-09-30T22:00:00Z

date_time.second_of

date_time.second_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the second number for a given Date in the specified Timezone, ranging from 0 to 59.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the second number for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.second_of2027-01-01T00:00:00Z"UTC"  )  =  0

date_time.second_of2023-12-31T20:00:00Z"Asia/Tokyo"  )  =  0

date_time.second_ofnull"UTC"  )  =  null

date_time.semester_end

date_time.semester_end(Timezone  -  CHOICE(S))

Returns the Date of the end of semester for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of semester for current date with defined parameter

  • Null if the parameter is null

date_time.semester_end_of

date_time.semester_end_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the end of semester for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of semester for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.semester_end_ofnull"Europe/Paris"  )  =  null

date_time.semester_end_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2023-12-30T23:00:00Z

date_time.semester_start

date_time.semester_start(Timezone  -  CHOICE(S))

Returns the Date of the start of semester for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of semester for current date with defined parameter

  • Null if the parameter is null

date_time.semester_start_of

date_time.semester_start_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the start of semester for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of semester for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.semester_start_ofnull"Europe/Paris"  )  =  null

date_time.semester_start_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2023-06-30T22:00:00Z

date_time.to_str

date_time.to_str(Date  -  Da, Output date mask  -  CHOICE(S), Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Transform a Date into a String using the specified timezone and language.

Parameters :

Date  -  Da

Specify date to transform

Output date mask  -  CHOICE(S)

Specify output mask

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : S

  • The date in string format with defined parameter

  • Null if the parameter is null

Examples :

date_time.to_strnull"yyyy-MM-dd’T’HH:mm:ss.SSSSSSXXX""Europe/Paris""fr_FR"  )  =  null

date_time.to_str2023-01-01T00:00:00.000100Z"yyyy-MM-dd’T’HH:mm:ss.SSSSSSXXX""Europe/Paris""fr_FR"  )  =  "2023-01-01T01:00:00.000100+01:00"

date_time.to_str2023-01-01T01:00:00Z"yyyy-MM-dd’T’HH:mm:ssXXX""UTC"null  )  =  "2023-01-01T01:00:00Z"

date_time.today

date_time.today(Timezone  -  CHOICE(S))

Returns the Date of current day, at midnight in the specified timezone.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • The date in string format with defined parameter

  • Null if the parameter is null

date_time.tomorrow

date_time.tomorrow(Timezone  -  CHOICE(S))

Returns the Date of day after current day, at midnight in the specified timezone.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • The date of tomorrow in the specified timezone

  • Null if the parameter is null

date_time.tomorrow_of

date_time.tomorrow_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the day after the given date, at midnight in the specified timezone.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • The date of the following day of a given date in the specified timezone

  • Null if the parameter is null

Examples :

date_time.tomorrow_of2023-10-18T06:39:12Z"UTC"  )  =  2023-10-19T00:00:00Z

date_time.week_end

date_time.week_end(Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the Date of the end of week for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : Da

  • Deduces the date of the end of week for the current date with defined parameter

  • Null if the parameter is null

date_time.week_end_of

date_time.week_end_of(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the Date of the end of month for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : Da

  • Deduces the date of the end of week for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.week_end_ofnull"Europe/Paris""fr_FR"  )  =  null

date_time.week_end_of2023-10-18T06:39:12Z"UTC""en_US"  )  =  2023-10-21T00:00:00Z

date_time.week_of_month

date_time.week_of_month(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the week number of the month for a given Date in the specified Timezone and Language, ranging from 0 to 5. Week one is the week starting on the first day of a week in the selected country, where there are at least the minimal days in a week for the selected country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : I

  • Returns the Integer corresponding to the week number of the month for the given Date, in the specified Timezone and Language. Week one is the week starting on the first day of a week in the selected country, where there are at least the minimal days in a week for the selected country. If week one starts after the beginning of the month, the period in between is week zero

  • In France, if the 1st day of the month is a Monday, week one starts on the 1st and there is no week zero

  • In France, if the 2nd day of the month is a Monday, week one starts on the 2nd and the 1st is in week zero

  • In France, if the 4th day of the month is a Monday, week one starts on the 4th and the 1st to 3rd is in week zero

  • In France, if the 5th day of the month is a Monday, week two starts on the 5th and the 1st to 4th is in week one

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • If the Language is null or not specified, we use the user’s system parameters Language

  • Null if the Date parameter is null

Examples :

date_time.week_of_month2025-08-01T00:00:00Z"UTC""fr_FR"  )  =  0

date_time.week_of_month2025-08-04T00:00:00Z"UTC""fr_FR"  )  =  1

date_time.week_of_month2025-06-23T12:00:00Z"America/Los_Angeles""en_US"  )  =  4

date_time.week_of_monthnull"UTC""fr_FR"  )  =  null

date_time.week_of_week_based_year

date_time.week_of_week_based_year(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the week number of the year for a given Date in the specified Timezone and Language, considering the ISO-8601 norm, ranging from 1 to 53.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : I

  • The Integer corresponding to the week number of the week-based-year for the given Date, in the specified Timezone and Language

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • If the Language is null or not specified, we use the user’s system parameters Language

  • Null if the Date parameter is null

Examples :

date_time.week_of_week_based_year2026-01-01T00:00:00Z"UTC""fr_FR"  )  =  1

date_time.week_of_week_based_year2025-12-29T00:00:00Z"Europe/Paris""fr_FR"  )  =  1

date_time.week_of_week_based_year2025-06-03T12:00:00Z"America/Los_Angeles""en_US"  )  =  23

date_time.week_of_week_based_yearnull"UTC""fr_FR"  )  =  null

date_time.week_of_year

date_time.week_of_year(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the week number of the year for a given Date in the specified Timezone and Language, ranging from 0 to 53. Week one is the week starting on the first day of a week in the selected country, where there are at least the minimal days in a week for the selected country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : I

  • Returns the Integer corresponding to the week number of the calendar year for the given Date, in the specified Timezone and Language. Week one is the week starting on the first day of a week in the selected country, where there are at least the minimal days in a week for the selected country. If week one starts after the beginning of the year, the period in between is week zero

  • In France, if the 1st day of the year is a Monday, week one starts on the 1st and there is no week zero

  • In France, if the 2nd day of the year is a Monday, week one starts on the 2nd and the 1st is in week zero

  • In France, if the 4th day of the year is a Monday, week one starts on the 4th and the 1st to 3rd is in week zero

  • In France, if the 5th day of the year is a Monday, week two starts on the 5th and the 1st to 4th is in week one

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • If the Language is null or not specified, we use the user’s system parameters Language

  • Null if the Date parameter is null

Examples :

date_time.week_of_year2027-01-01T00:00:00Z"UTC""fr_FR"  )  =  0

date_time.week_of_year2027-01-04T00:00:00Z"UTC""fr_FR"  )  =  1

date_time.week_of_year2025-06-03T12:00:00Z"America/Los_Angeles""en_US"  )  =  23

date_time.week_of_yearnull"UTC""fr_FR"  )  =  null

date_time.week_start

date_time.week_start(Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the Date of the end of month for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : Da

  • Deduces the date of the start of week for the current date with defined parameter

  • Null if the parameter is null

date_time.week_start_of

date_time.week_start_of(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the Date of the start of week for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : Da

  • Deduces the date of the start of week for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.week_start_ofnull"Europe/Paris""fr_FR"  )  =  null

date_time.week_start_of2023-10-18T06:39:12Z"Europe/Paris""fr_FR"  )  =  2023-10-15T22:00:00Z

date_time.year_end

date_time.year_end(Timezone  -  CHOICE(S))

Returns the Date of the end of year for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of year for the current date with defined parameter

  • Null if the parameter is null

date_time.year_end_of

date_time.year_end_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the end of year for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the end of year for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.year_end_ofnull"Europe/Paris"  )  =  null

date_time.year_end_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2023-12-30T23:00:00Z

date_time.year_of

date_time.year_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the year number for a given Date in the specified Timezone.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : I

  • The Integer corresponding to the year number for the given Date, in the specified Timezone

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • Null if the Date parameter is null

Examples :

date_time.year_of2027-01-01T00:00:00Z"UTC"  )  =  2027

date_time.year_of2023-12-31T20:00:00Z"Asia/Tokyo"  )  =  2024

date_time.year_ofnull"UTC"  )  =  null

date_time.year_of_week_based_year

date_time.year_of_week_based_year(Date  -  Da, Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Returns the year number for a given Date in the specified Timezone and Language, considering the ISO-8601 norm.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : I

  • The Integer corresponding to the year number of the given Date considering a week-based-year system, in the specified Timezone and Language

  • If the Timezone is null or not specified, the result will be in the UTC Timezone

  • If the Language is null or not specified, we use the user’s system parameters Language

  • Null if the Date parameter is null

Examples :

date_time.year_of_week_based_year2027-01-02T00:00:00Z"UTC""fr_FR"  )  =  2026

date_time.year_of_week_based_year2027-01-04T00:00:00Z"UTC""fr_FR"  )  =  2027

date_time.year_of_week_based_yearnull"UTC""fr_FR"  )  =  null

date_time.year_start

date_time.year_start(Timezone  -  CHOICE(S))

Returns the Date of the start of year for the current date with defined parameter, at midnight in the specified timezone and country.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of year for the current date with defined parameter

  • Null if the parameter is null

date_time.year_start_of

date_time.year_start_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of the start of year for the given day, at midnight in the specified timezone and country.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • Deduces the date of the start of year for a given date with defined parameter

  • Null if the parameter is null

Examples :

date_time.year_start_ofnull"Europe/Paris"  )  =  null

date_time.year_start_of2023-10-18T06:39:12Z"Europe/Paris"  )  =  2022-12-31T23:00:00Z

date_time.yesterday

date_time.yesterday(Timezone  -  CHOICE(S))

Returns the Date of day before current day, at midnight in the specified timezone.

Parameters :

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • The date of the day before the current date in the specified timezone

  • Null if the parameter is null

date_time.yesterday_of

date_time.yesterday_of(Date  -  Da, Timezone  -  CHOICE(S))

Returns the Date of day before the given day, at midnight in the specified timezone.

Parameters :

Date  -  Da

Specify a date

Timezone  -  CHOICE(S)

Specify timezone

Return : Da

  • The date of the day before a given date in the specified timezone

  • Null if the parameter is null

Examples :

date_time.yesterday_ofnull"Europe/Paris"  )  =  null

date_time.yesterday_of2023-10-18T06:39:12Z"UTC"  )  =  2023-10-17T00:00:00Z

Formulas for Boolean type

bool.is_false

bool.is_false(Boolean  -  B)

Checks if a Boolean is False.

Parameters :

Boolean  -  B

Specify Boolean to process

Return : B

  • True if the boolean specified is false

  • False if the boolean specified is true

  • Null if parameter is null

Examples :

bool.is_falsenull  )  =  null

bool.is_falsetrue  )  =  false

bool.is_falsefalse  )  =  true

bool.is_true

bool.is_true(Boolean  -  B)

Checks if a Boolean is True.

Parameters :

Boolean  -  B

Specify Boolean to process

Return : B

  • True if the boolean specified is true

  • False if the boolean specified is false

  • Null if parameter is null

Examples :

bool.is_truenull  )  =  null

bool.is_truetrue  )  =  true

bool.is_truefalse  )  =  false

bool.not

bool.not(Boolean  -  B)

Reverse a Boolean value.

Parameters :

Boolean  -  B

Specify Boolean to process

Return : B

  • True if the boolean specified is false

  • False if the boolean specified is true

  • Null if parameter is null

Examples :

bool.notnull  )  =  null

bool.nottrue  )  =  false

bool.notfalse  )  =  true

bool.replace_bool_null

bool.replace_bool_null(Value  -  B, Boolean replacing Null value  -  B)

Replaces a Null value by an Boolean.

Parameters :

Value  -  B

Specify value to process

Boolean replacing Null value  -  B

Specify Boolean that replaces Null value

Return : B

  • The specified boolean if the value is null, otherwise keep the initial boolean

Examples :

bool.replace_bool_nullnullnull  )  =  null

bool.replace_bool_nullnulltrue  )  =  true

bool.replace_bool_null"false"true  )  =  false

bool.to_int

bool.to_int(Value  -  B)

Transform a Boolean into an Integer (0 if False, 1 if True).

Parameters :

Value  -  B

Specify value to transform

Return : I

  • Is 0 if the bolean is false

  • Is 1 if the bolean is true

  • Null if parameter is null

Examples :

bool.to_intnull  )  =  null

bool.to_inttrue  )  =  1

bool.to_intfalse  )  =  0

bool.to_str

bool.to_str(Boolean to transform  -  B)

Transform a Boolean to String.

Parameters :

Boolean to transform  -  B

Specify value to transform

Return : S

  • The value of a boolean in string format

  • Null if the parameter is null

Examples :

bool.to_strnull  )  =  null

bool.to_strtrue  )  =  "true"

Formulas for lists

list.size

list.size(List  -  LIST(S,B,Da,De,I,B.I))

Returns length of a list (Number of items in a list).

Parameters :

List  -  LIST(S,B,Da,De,I,B.I)

Specify list to process

Return : I

  • The length of the list

Examples :

list.size(  [ "A" , "B" , "C" ]  )  =  3

list.size(  [ ]  )  =  0

Formulas for geometry functions

geo.contains

geo.contains(Shape  -  S, Shape  -  S)

Checks if zone A defined in JSON format (shape) contains zone B defined in JSON format (shape).

Parameters :

Shape  -  S

Specify shape (GeoJson)

Shape  -  S

Specify shape (GeoJson)

Return : B

  • Is true only if shape B is totaly contained in shape A, otherwise false

Examples :

geo.contains"{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}""{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[3.0,3.0],[2.0,0.0],[0.0,0.0]]]}"  )  =  true

geo.contains"{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}""{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[1.0,1.0],[2.0,0.0],[0.0,0.0]]]}"  )  =  false

geo.contains_point

geo.contains_point(Shape  -  S, Latitude  -  S, Longitude  -  S)

Checks if a location defined in Latitude-Longitude is contained in a GeoJson shape format.

Parameters :

Shape  -  S

Specify shape (GeoJson)

Latitude  -  S

Specify point latitude

Longitude  -  S

Specify point longitude

Return : B

  • Is true if the point defined by latitude-longitude is contained in shape, otherwise false

Examples :

geo.contains_point"POLYGON 0 0, 0 2, 2 2, 2 0, 0 0""1""1"  )  =  true

geo.contains_point"POLYGON 0 0, 0 2, 2 2, 2 0, 0 0""3""3"  )  =  false

geo.google.geocode

geo.google.geocode(Address  -  S)

Geolocation of an address. Returns a Latitude and Longitude (consumes Google API).

Parameters :

Address  -  S

Specify Address

Return : S

  • The coordonates of adress in JSON format

geo.google.traject_distance_object

geo.google.traject_distance_object(Start address  -  S, Arrival address  -  S, Transport Mode  -  CHOICE(S))

Returns distance of a trip between two points defined byir addresses by indicating a mode of transport (Uses Google API).

Parameters :

Start address  -  S

Specify Start address

Arrival address  -  S

Specify arrival address

Transport Mode  -  CHOICE(S)

Give Transport mode

Return : B.I

  • The value of Google api of the distance between the two addresses with defined parameters

geo.google.traject_distance_value

geo.google.traject_distance_value(Start Latitude  -  De, Start Longitude  -  De, Arrival Latitude  -  De, Arrival longitude  -  De, Transport Mode  -  CHOICE(S))

Returns distance of a trip between two points defined in Latitude-Longitude by indicating a mode of transport (Uses Google API).

Parameters :

Start Latitude  -  De

Specify Start Latitude

Start Longitude  -  De

Specify Start Longitude

Arrival Latitude  -  De

Specify Arrival Latitude

Arrival longitude  -  De

pecify Arrival Longitude

Transport Mode  -  CHOICE(S)

Give Transport mode

Return : B.I

  • The value of Google api of the distance between the two points with defined parameters

geo.google.traject_duration_object

geo.google.traject_duration_object(Start Address  -  S, Arrival address  -  S, Transport Mode  -  CHOICE(S))

Returns travel time between two addresses by indicating a type of transport (using Google API).

Parameters :

Start Address  -  S

Specify Start Address

Arrival address  -  S

Specify arrival Address

Transport Mode  -  CHOICE(S)

Give Transport mode

Return : B.I

  • The value of Google api of the time between the two addresses with defined parameters

geo.google.traject_duration_value

geo.google.traject_duration_value(Start Latitude  -  De, Start Longitude  -  De, Arrival Latitude  -  De, Arrival Latitude  -  De, Transport Mode  -  CHOICE(S))

Returns details of time and journey between two points by indicating a type of transport (using Google API).

Parameters :

Start Latitude  -  De

Specify Start Latitude

Start Longitude  -  De

Specify Start Longitude

Arrival Latitude  -  De

Specify Arrival Latitude

Arrival Latitude  -  De

Specify Arrival Longitude

Transport Mode  -  CHOICE(S)

Give Transport mode

Return : B.I

  • The value of Google api of the time between the two points with defined parameters

geo.google.way_object

geo.google.way_object(Start Address  -  S, Arrival address  -  S, Transport Mode  -  CHOICE(S))

Returns time of a trip between two points defined by addresses with a transport type (Uses Google API).

Parameters :

Start Address  -  S

Specify Start Address

Arrival address  -  S

Specify Arrival Address

Transport Mode  -  CHOICE(S)

Give Transport mode

Return : S

  • The value of Google api of the time between the two points with defined parameters

geo.google.way_value

geo.google.way_value(Start Latitude  -  De, Start Longitude  -  De, Arrival latitude  -  De, Arrival longitude  -  De, Transport Mode  -  CHOICE(S))

Returns route between two points defined in Latitude and Longitude and a mode of transport (Uses Google API).

Parameters :

Start Latitude  -  De

Specify Start Latitude

Start Longitude  -  De

Specify Start Longitude

Arrival latitude  -  De

Specify arrival Latitude

Arrival longitude  -  De

Specify arrival Longitude

Transport Mode  -  CHOICE(S)

Give Transport mode

Return : S

  • Returns the way between the 2 defined points with the defined parameters

geo.intersect

geo.intersect(Shape  -  S, Shape  -  S)

Checks if two geographical areas (JSON shape) have an intersection.

Parameters :

Shape  -  S

Specify shape (GeoJson)

Shape  -  S

Specify shape (GeoJson)

Return : B

  • Is true if specified shapes have an intersection, otherwise false

Examples :

geo.intersect"{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}""{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[3.0,3.0],[2.0,0.0],[0.0,0.0]]]}"  )  =  true

geo.st_area

geo.st_area(Geometry  -  Ge)

Returns area of a Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

Return : De

  • The value of area of specified shape

Examples :

geo.st_areaPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  4.0

geo.st_as_geojson

geo.st_as_geojson(Geometry  -  Ge)

Returns the GeoJson String representation of a Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

Return : S

  • The GeoJson of geometry in string format

  • In JSON format with two keys, the type of shape and coordonates of points

Examples :

geo.st_as_geojsonPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  "{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}"

geo.st_as_text

geo.st_as_text(Geometry  -  Ge)

Returns WKT of a Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

Return : S

  • The shape in WKT format

  • WKT format, TYPE_OF_FORM(X1 Y1, X2 Y2)

Examples :

geo.st_as_textPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  "POLYGON 0 2, 2 2, 2 0, 0 0, 0 2"

geo.st_buffer

geo.st_buffer(Geometry  -  Ge, Distance  -  De,I,B.I)

Returns a geometry / geography that represents all points whose distance from that geometry/geography is less than or equal to a given distance.

Parameters :

Geometry  -  Ge

Specify geometry

Distance  -  De,I,B.I

Specify distance

Return : Ge

  • The shape containing points which distance is equal to the specified distance

Examples :

geo.st_bufferPOINT 0 01  )  =  POLYGON 1 0, 0.9807852804032304 -0.1950903220161282, 0.9238795325112867 -0.3826834323650898, 0.8314696123025452 -0.5555702330196022, 0.7071067811865476 -0.7071067811865475, 0.5555702330196023 -0.8314696123025452, 0.3826834323650898 -0.9238795325112867, 0.1950903220161283 -0.9807852804032304, 0.0000000000000001 -1, -0.1950903220161282 -0.9807852804032304, -0.3826834323650897 -0.9238795325112867, -0.555570233019602 -0.8314696123025455, -0.7071067811865475 -0.7071067811865476, -0.8314696123025453 -0.5555702330196022, -0.9238795325112867 -0.3826834323650899, -0.9807852804032304 -0.1950903220161286, -1 -0.0000000000000001, -0.9807852804032304 0.1950903220161284, -0.9238795325112868 0.3826834323650897, -0.8314696123025455 0.555570233019602, -0.7071067811865477 0.7071067811865475, -0.5555702330196022 0.8314696123025452, -0.3826834323650903 0.9238795325112865, -0.1950903220161287 0.9807852804032303, -0.0000000000000002 1, 0.1950903220161283 0.9807852804032304, 0.38268343236509 0.9238795325112866, 0.5555702330196018 0.8314696123025455, 0.7071067811865474 0.7071067811865477, 0.8314696123025452 0.5555702330196022, 0.9238795325112865 0.3826834323650904, 0.9807852804032303 0.1950903220161287, 1 0

geo.st_centroid

geo.st_centroid(Geometry  -  Ge)

Returns centroid point of a Geometry.

Parameters :

Geometry  -  Ge

Specify Geometry

Return : Ge

  • The point representing the center of gravity of the shape

Examples :

geo.st_centroidPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  POINT 1 1

geo.st_contains

geo.st_contains(Geometry  -  Ge, Geometry  -  Ge)

Checks if geometry 1 fully contains geometry 2.

Parameters :

Geometry  -  Ge

Specify Geometry 1

Geometry  -  Ge

Specify Geometry 2

Return : B

  • Is true if geometry 1 fully contains geometry 2

Examples :

geo.st_containsPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 0 0, 0 2, 3 3, 2 0, 0 0  )  =  true

geo.st_containsPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 0 0, 0 2, 1 1, 2 0, 0 0  )  =  false

geo.st_convex_hull

geo.st_convex_hull(Geometry  -  Ge)

Returns convex envelope of a Geometry.

Parameters :

Geometry  -  Ge

Specify Geometry

Return : Ge

  • Returns the smallest convexx geometry conataining entered geometry

Examples :

geo.st_convex_hullPOLYGON 0 0, 1 1, 0 2, 2 2, 2 0, 0 0  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

geo.st_crosses

geo.st_crosses(Geometry  -  Ge, Geometry  -  Ge)

Compares two geometry objects and returns true if the geometries have some, but not all interior points in common. The intersection of the interiors of the geometries must be non-empty and must have dimension less than the maximum dimension of the two input geometries, and the intersection of the two geometries must not equal either geometry. Otherwise, it returns false.

Parameters :

Geometry  -  Ge

Specify Geometry 1

Geometry  -  Ge

Specify Geometry 2

Return : B

  • Returns false if the geometries do not have common interior points

  • Returns false if the intersection of the geometries has the same dimension than the largest dimension of the given geometries

  • Returns false if the intersection of the geometries is equal to one of the given geometries

  • Returns true if the geometries have a non-empty intersection

Examples :

geo.st_crossesgeo.st_polygon_from_text"0,0,0,2,2,2,2,0,0,0"","  ),  geo.st_line_string_from_text"1,1,10,0"","  )  )  =  true

geo.st_crossesPOLYGON 0 0, 0 1, 1 1, 1 0, 0 0POLYGON 2 2, 2 3, 3 3, 3 2, 2 2  )  =  false

geo.st_distance

geo.st_distance(Geométry  -  Ge, Geometry  -  Ge)

Calculates distance between two points.

Parameters :

Geométry  -  Ge

Specify Geométrie 1

Geometry  -  Ge

Specify Geometry 2

Return : De

  • The distance between the two points

Examples :

geo.st_distancePOINT 1 1POINT 1 2  )  =  1.0

geo.st_envelope

geo.st_envelope(Geometry  -  Ge)

Returns envelope of a Geometry.

Parameters :

Geometry  -  Ge

Specify Geometry

Return : Ge

  • The minimal rectangle containing the entered geometry

Examples :

geo.st_envelope1,1,2,2  )  =  POLYGON 1 1, 1 2, 2 2, 2 1, 1 1

geo.st_equals

geo.st_equals(Geometry  -  Ge, Geometry  -  Ge)

Checks if geometry 1 is equal to geometry 2.

Parameters :

Geometry  -  Ge

Specify Geometry 1

Geometry  -  Ge

Specify Geometry 2

Return : B

  • Is true if specified shapes are equal

Examples :

geo.st_equalsPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 0 2, 2 2, 2 0, 0 0, 0 2  )  =  true

geo.st_geom_from_geojson

geo.st_geom_from_geojson(GeoJson  -  S)

Builds a Geometry from a GeoJson.

Parameters :

GeoJson  -  S

Specify GeoJson

Return : Ge

  • Returns a geometry from GeoJson

Examples :

geo.st_geom_from_geojson"{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}"  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

geo.st_geom_from_wkb

geo.st_geom_from_wkb(WKB  -  S)

Builds a Geometry from a WKB format.

Parameters :

WKB  -  S

Specify WKB

Return : Ge

  • Return a geometry from Well-Known Binary approximation

Examples :

geo.st_geom_from_wkb"01010000005839B4C876BEF33F83C0CAA145B61640"  )  =  POINT 1.234 5.678

geo.st_geom_from_wkt

geo.st_geom_from_wkt(WKT  -  S)

Builds a Geometry from a WKT format.

Parameters :

WKT  -  S

Specify WKT

Return : Ge

  • Return a geometry from Well-Known Text approximation

  • WKT format, TYPE_OF_FORM(X1 Y1, X2 Y2)

Examples :

geo.st_geom_from_wkt"POLYGON 0 0, 0 2, 2 2, 2 0, 0 0"  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

geo.st_geometry_type

geo.st_geometry_type(Geometry  -  Ge)

Returns type of a Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

Return : S

  • The type of geometry (POINT, LINESTRING, POLYGON…​)

Examples :

geo.st_geometry_typePOLYGON 0 0, 0 2, 3 3, 2 0, 0 0  )  =  "ST_Polygon"

geo.st_geometry_typeLINESTRING 0 0, 0 2  )  =  "ST_LineString"

geo.st_intersection

geo.st_intersection(Geometry  -  Ge, Geometry  -  Ge)

Returns intersection between two Geometry.

Parameters :

Geometry  -  Ge

Specify Geometry 1

Geometry  -  Ge

Specify Geometry 2

Return : Ge

  • Is a geometry representing intersection between the two geometrys

  • 'POLYGON EMPTY' if no intersection between the two geometrys

Examples :

geo.st_intersectionPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 1 1, 1 2, 2 2, 2 1, 1 1  )  =  POLYGON 1 1, 1 2, 2 2, 2 1, 1 1

geo.st_intersectionPOLYGON 0 0, 0 1, 1 1, 1 0, 0 0POLYGON 2 2, 2 3, 3 3, 3 2, 2 2  )  =  POLYGON EMPTY

geo.st_intersects

geo.st_intersects(Geometry  -  Ge, Geometry  -  Ge)

Checks if two intersecting Geometrys.

Parameters :

Geometry  -  Ge

Specify geometry 1

Geometry  -  Ge

Specify geometry 2

Return : B

  • Is true if the two geometries have an intersection in common

Examples :

geo.st_intersectsPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 0 2, 0 4, 4 2, 2 2, 0 2  )  =  true

geo.st_is_simple

geo.st_is_simple(Geometry  -  Ge)

Tests if only self-intersections of Geometry are at limit points.

Parameters :

Geometry  -  Ge

Specify geometry

Return : B

  • Is true if the shape is closed

Examples :

geo.st_is_simplePOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  true

geo.st_is_valid

geo.st_is_valid(Geometry  -  Ge)

Tests if a Geometry is valid.

Parameters :

Geometry  -  Ge

Specify geometry

Return : B

  • Is true if the shape is valid

Examples :

geo.st_is_validPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  true

geo.st_length

geo.st_length(Geometry  -  Ge)

Returns perimeter of a Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

Return : De

  • The perimeter of the shape

Examples :

geo.st_lengthPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  8.0

geo.st_line_string_from_text

geo.st_line_string_from_text(Value  -  S, Delimiter  -  S)

Builds a geometric line from a String.

Parameters :

Value  -  S

Specify String

Delimiter  -  S

Specify delimiter

Return : Ge

  • Build a LINESTRING with the coordonates of two points

Examples :

geo.st_line_string_from_text"0,0,2,2"","  )  =  LINESTRING (0 0, 0 2)

geo.st_make_valid

geo.st_make_valid(Geometry  -  Ge, Delete holes  -  B)

Creates a valid representation of an invalid Geometry (Polygon or Multipolygon).

Parameters :

Geometry  -  Ge

Specify geometry

Delete holes  -  B

Specify if holes need to be removed

Return : Ge

  • Build a valid geometry with the set of vertices of the specified invalid geometry

Examples :

geo.st_make_validPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0true  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

geo.st_n_points

geo.st_n_points(Geometry  -  Ge)

Returns points of a Geometry.

Parameters :

Geometry  -  Ge

Specify Geometry

Return : I

  • The number of points of the shape

Examples :

geo.st_n_pointsPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  5

geo.st_overlaps

geo.st_overlaps(Geometry  -  Ge, Geometry  -  Ge)

Checks true if geometry 1 overlaps with geometry 2.

Parameters :

Geometry  -  Ge

Specify geometry 1

Geometry  -  Ge

Specify geometry 2

Return : B

  • Is true if the two geometry have a common intersection surface

Examples :

geo.st_overlapsPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 0 2, 0 5, 4 2, 2 2, 0 2  )  =  false

geo.st_point

geo.st_point(X  -  De,I,B.I, Y  -  De,I,B.I)

Builds a geometrical point.

Parameters :

X  -  De,I,B.I

Specify X Point

Y  -  De,I,B.I

Specify Y Point

Return : Ge

  • Returns the POINT(X Y) with specified coordonates

Examples :

geo.st_point11  )  =  POINT (1 1)

geo.st_point_from_text

geo.st_point_from_text(Value  -  S, Delimiter  -  S)

Builds a geometrical point from a String.

Parameters :

Value  -  S

Specify string

Delimiter  -  S

Specify delimiter

Return : Ge

  • Returns a point with specified coordonates

Examples :

geo.st_point_from_text"1,1"","  )  =  POINT (1 1)

geo.st_polygon_from_envelope

geo.st_polygon_from_envelope(Min x  -  De,I,B.I, Min Y  -  De,I,B.I, Max X  -  De,I,B.I, Max Y  -  De,I,B.I)

Builds a geometric polygon from an envelope.

Parameters :

Min x  -  De,I,B.I

Specify minimum X

Min Y  -  De,I,B.I

Specify minimum Y

Max X  -  De,I,B.I

Specify maximum X

Max Y  -  De,I,B.I

Specify maximum Y

Return : Ge

  • The polygon describing the rectangle having as diagonal the two points specified as a parameter

Examples :

geo.st_polygon_from_envelope1122  )  =  POLYGON 1 1, 1 2, 2 2, 2 1, 1 1

geo.st_polygon_from_text

geo.st_polygon_from_text(Value  -  S, Delimiter  -  S)

Builds a Geometric Polygon from a String.

Parameters :

Value  -  S

Specify string

Delimiter  -  S

Specify delimiter

Return : Ge

  • The polygon described by entered points in parameter

Examples :

geo.st_polygon_from_text"0,0,0,2,2,2,2,0,0,0"","  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

geo.st_precision_reduce

geo.st_precision_reduce(Geometry  -  Ge, Number  -  I)

Reduces precision of Decimal numbers in geometry coordinates. last decimal place will be rounded.

Parameters :

Geometry  -  Ge

Specify geometry

Number  -  I

Specify decimals number

Return : Ge

  • The polygon with entered points coordonates in parameter rounded to the given precision

Examples :

geo.st_precision_reducePOLYGON 0.22 0.255, 0 2.3, 2 2, 2 0, 0.22 0.2551  )  =  POLYGON 0 2.3, 2 2, 2 0, 0.2 0.3, 0 2.3

geo.st_simplify_preserve_topology

geo.st_simplify_preserve_topology(Geometry  -  Ge, Distance tolerance  -  De,I,B.I)

Simplifies Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

Distance tolerance  -  De,I,B.I

Specify Distance tolerance

Return : Ge

  • The polygon with entered points coordonates in parameter rounded to the given precision

Examples :

geo.st_simplify_preserve_topologyPOLYGON 0 0, 0 2, 2 2, 2 0, 0 01  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

geo.st_touches

geo.st_touches(Geometry  -  Ge, Géométrie  -  Ge)

Checks if geometry 1 touches geometry 2.

Parameters :

Geometry  -  Ge

Specify geometry 1

Géométrie  -  Ge

Specify geometry 2

Return : B

  • Is true if the two geometry have a common intersection but which is not superimposed

Examples :

geo.st_touchesPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0POLYGON 0 2, 0 4, 4 2, 2 2, 0 2  )  =  true

geo.st_transform

geo.st_transform(Geometry  -  Ge, SRC source  -  S, Destination SRC  -  S)

Transforms spatial reference system / coordinate reference system of a Geometry.

Parameters :

Geometry  -  Ge

Specify geometry

SRC source  -  S

Specify source SRC

Destination SRC  -  S

Specify destination SRC

Return : Ge

  • A trnasformed geometry in function of defined parameters

Examples :

geo.st_transformPOINT 0 0"EPSG:4326""EPSG:3857"  )  =  POINT 0 -0.0000000007081155

geo.st_within

geo.st_within(Geometry  -  Ge, Geometry  -  Ge)

Checks if geometry 1 is entirely contained by geometry 2.

Parameters :

Geometry  -  Ge

Specify geometry 1

Geometry  -  Ge

Specify geometry 2

Return : B

  • Is true only if geometry 1 is totaly contained in geometry 2, otherwise false

Examples :

geo.st_withinPOINT (5 5)POLYGON 0 0, 10 0, 10 10, 0 10, 0 0  )  =  true

URL formulas

url.encode_string

url.encode_string(Value  -  S)

Encodes String.

Parameters :

Value  -  S

Specify string to encod

Return : S

  • The string encoded in URL format

Examples :

url.encode_string"paramWithSlash/andAmpersand&"  )  =  "paramWithSlash%2FandAmpersand%26"

url.encode_url

url.encode_url(Value  -  S)

Encodes URL

Parameters :

Value  -  S

Specify URL to encoder

Return : S

  • The string encoded in URL format

url.extract_params

url.extract_params(Value  -  S)

Performs parameters extraction from URL.

Parameters :

Value  -  S

Specify string to process

Return : S

  • The string representing all the URL parameters of specified URL in JSON format

  • Empty list if no parameter

url.extract_uri

url.extract_uri(Value  -  S)

Extracts URI from URL.

Parameters :

Value  -  S

Specify URL to process

Return : S

  • The part of the URL representing the access for a ressource

Examples :

url.extract_uri"http://localhost:4200/service/data/exposition/count?filter=string=beginsWith="  )  =  "service/data/exposition/count"

Specific DataChain formulas

dc.advanced_position

dc.advanced_position(Value  -  S, Value  -  S, Start position  -  CHOICE(S), Start position  -  I,B.I)

Returns position of a character in a String.

Parameters :

Value  -  S

String to processed

Value  -  S

Character to search

Start position  -  CHOICE(S)

Specify if the search begin from the start or the end of the string(Start/End)

Start position  -  I,B.I

Specify the start position to search

Return : I

  • The position of the caracter in specified sense from the start position specified

  • Is -1 if the searched caracter is not in the string by taking into account parameters of search

dc.extract_json

dc.extract_json(JSON expression  -  S, JSON path  -  S)

Returns String from a JSON format String using JSON Path.

Parameters :

JSON expression  -  S

Expression in JSON format to process

JSON path  -  S

Specify a JSON Path to extract value

Return : S

  • The value extracted from the JSON expression using specified JSON path

  • Null if JSON path is wrong

  • Null if JSON value has incorrect format

Examples :

dc.extract_json"{"software": "Datachain", "company": "Adobis"}""$.software"  )  =  "Datachain"

dc.extract_json"{"software": "Datachain", "company": "Adobis"}""$"  )  =  "{"software":"Datachain","company":"Adobis"}"

dc.extract_json"{"software": {"name": "Datachain", "components": [{"name": "GenericsData", "color": "blue"}, {"name": "HandleData", "color": "red"}]}, "company": "Adobis"}""$.software.components[0]"  )  =  "{"name":"GenericsData","color":"blue"}"

dc.extract_jsonnull"$.software"  )  =  null

dc.free

dc.free(Value  -  S)

Input of a completely free formula respecting SPARK-SQL syntax.

Parameters :

Value  -  S

SPARK-SQL synthax String

Return : S

dc.free_list

dc.free_list(Value  -  S)

Entry of a completely free formula returning a list of values respecting SPARK-SQL syntax.

Parameters :

Value  -  S

SPARK-SQL synthax String

Return : LIST(S)

dc.ranking

dc.ranking(Value  -  S,De,Da,I,B.I, Ranking  -  S)

Applies a DataChain Classification on a value (Consumes a Classification generated in HandleData Classification function of DataChain).

Parameters :

Value  -  S,De,Da,I,B.I

Specify value to classify

Ranking  -  S

Specify Datachain Ranking

Return : S

  • The value of ranking result

word.to_str

word.to_str(Value  -  W)

Transforms Word object (DataChain) into a string in JSON format.

Parameters :

Value  -  W

Column Words (DataChain) to transform

Return : S

  • The value of a word in string format

  • Null if the parameter is null

file.extension

file.extension(Value  -  S)

Returns extension of a file.

Parameters :

Value  -  S

Specify file name

Return : S

  • The value of the file name extension

  • Null if the parameter is null

Examples :

file.extension"file.csv"  )  =  "csv"

file.extension"file.json"  )  =  "json"

http.get

http.get(URL  -  S)

Executes GET request via an HTTP protocol.

Parameters :

URL  -  S

Specify URL

Return : S

  • The response content of the URL specified

  • Null if the parameter is null

http.post

http.post(URL  -  S, Request Body  -  S)

Executes POST request via an HTTP protocol.

Parameters :

URL  -  S

Specify URL

Request Body  -  S

Specify body of request

Return : S

  • The response content of the URL specified with given modification parameters

  • Null if the parameter is null

bin.content_object

bin.content_object(File type  -  S, File  -  Bn)

Transforms a value of type Binary into a value of type Object.

Parameters :

File type  -  S

File type (PDF, TXT, HTML, DOC, DOCX, ODT)

File  -  Bn

File to process

Return : S

bin.content_str

bin.content_str(File type  -  S, File  -  Bn)

Extract the content of a binary file and return the corresponding String.

Parameters :

File type  -  S

File type (PDF, TXT, HTML, DOC, DOCX, ODT)

File  -  Bn

File to process

Return : S

bin.content_words

bin.content_words(File Type  -  S, File  -  Bn)

Transforms a Binary type into a Word type (DataChain).

Parameters :

File Type  -  S

File type (PDF, TXT, HTML, DOC, DOCX, ODT)

File  -  Bn

File to process

Return : W

word.to_str

word.to_str(Value  -  W)

Transforms Word object (DataChain) into a string in JSON format.

Parameters :

Value  -  W

Column Words (DataChain) to transform

Return : S

  • The value of a word in string format

  • Null if the parameter is null

Formulas no longer to be used, replaced by new formulas

deprecated.bigint.generate

deprecated.bigint.generate(Increment  -  I,B.I, Start  -  I,B.I, End  -  I,B.I)

Generates a list of Big Integer from start number by adding increment until value is less or equal than end number.

Deprecated since version : 8.7.0
Reason : Because the formula didn’t handle negative value arguments.
Replaced by : bigint.generate

Parameters :

Increment  -  I,B.I

Input the value of the increment

Start  -  I,B.I

Specify the increment start number

End  -  I,B.I

Specify the end number of increment

Return : LIST(B.I)

  • The list of big integer starting from the start value, adding the increment until the value is less than or equal to the end value

  • An empty list if increment < = 0 or is null

Examples :

deprecated.bigint.generate204  )  =  [ 0 , 2 , 4 ]

deprecated.bigint.generate3010  )  =  [ 0 , 3 , 6 , 9 ]

deprecated.bigint.generatenull12  )  =  [ ]

deprecated.bigint.if

deprecated.bigint.if(Value  -  I,B.I, Operator  -  CHOICE(S), Value  -  I,B.I, Value if true  -  I,B.I, Value if false  -  I,B.I)

Checks if condition is met and returns a value if result of a condition you specified is True, and an another value if result is False.

Deprecated since version : 8.3.2
Reason : Because parameters of comparison have been changed in a rule.
Replaced by : bigint.if

Parameters :

Value  -  I,B.I

Specify value to process

Operator  -  CHOICE(S)

Specify operator used for test

Value  -  I,B.I

Specify value to process

Value if true  -  I,B.I

Returned value if test is true

Value if false  -  I,B.I

Returned value if test is false

Return : B.I

  • The value of argument 4 if the condition is true, otherwise the value of argument 5

deprecated.bigint.list.create

deprecated.bigint.list.create(Value  -  I,B.I, Value  -  I,B.I)

Creation of a list of Big integer.

Deprecated since version : 8.3.2
Reason : Because the formula had to have ARGS in parameter.
Replaced by : bigint.list.create

Parameters :

Value  -  I,B.I

Input a value

Value  -  I,B.I

Input a value (the ARGS function allows you to add n arguments)

Return : LIST(B.I)

  • The list containing values entered in parameter

  • Null if parameter is null

Examples :

deprecated.bigint.list.create(  [ 1 , 2 , null ]  )  =  [ 1 , 2 , null ]

deprecated.bigint.list.insert

deprecated.bigint.list.insert(List  -  LIST(I,B.I), Position  -  I, Value  -  I,B.I)

Adds a Big Integer to the list specified in argument 1. Array indices start at 1, or start from the end if index is negative. Index above array size appends the array, or prepends the array if index is negative, with null values.

Deprecated since version : 8.7.0
Reason : Because the response was false with an position value either 0 or negative.
Replaced by : bigint.list.insert

Parameters :

List  -  LIST(I,B.I)

Specify list to process

Position  -  I

Specify the insertion position in the list of number

Value  -  I,B.I

Specify the value to insert in the list

Return : LIST(B.I)

  • The list with the value inserted at the specified position

  • The list padded with null value if the specified position is greater than the length of the list

Examples :

deprecated.bigint.list.insert(  [ 1 , 1 ],  15  )  =  [ 5 , 1 , 1 ]

deprecated.bigint.list.insert(  [ 1 ],  34  )  =  [ 1 , null , 4 ]

deprecated.bigint.list.intersect

deprecated.bigint.list.intersect(First list  -  LIST(I,B.I), Second list  -  LIST(I,B.I))

Returns the list of numbers in common between two number lists (can contain the same value several times).

Deprecated since version : 8.7.0
Reason : Because the formula only checked whether the elements of the second list were present in the first list, but did not check conversely.
Replaced by : bigint.list.intersect

Parameters :

First list  -  LIST(I,B.I)

Specify first list of number

Second list  -  LIST(I,B.I)

Specify second list of number

Return : LIST(B.I)

  • The list with the values which are common to the two lists, can contain the same value several times in case of occurrence of the value in the lists

Examples :

deprecated.bigint.list.intersect(  [ 5 ],  [ 5 , 2 , -3 ]  )  =  [ 5 ]

deprecated.bigint.list.intersect(  [ 5 , 0 , null , 2 ],  [ 5 , 2 , -3 , null ]  )  =  [ 5 , 2 , null ]

deprecated.bool.if

deprecated.bool.if(Value  -  B, Opérateur  -  CHOICE(S), Value  -  B, Value if true  -  B, Value if false  -  B)

Checks if condition is met and returns a value if result of a condition you specified is True, and another value if result is False.

Deprecated since version : 8.3.2
Reason : Because the formula is redundant with bool.is_true or bool.is_false.
Replaced by : bool.is_true, bool.is_false

Parameters :

Value  -  B

Specify value to process

Opérateur  -  CHOICE(S)

Specify operator used for test

Value  -  B

Specify value to process

Value if true  -  B

Return value if test is true

Value if false  -  B

Return value if test is false

Return : B

  • The value of argument 4 if the condition is true, otherwise the value of argument 5

deprecated.date.deducted

deprecated.date.deducted(Date  -  Da, Type  -  CHOICE(S))

Deducts a Date according to a defined parameter.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.deducted

Parameters :

Date  -  Da

Specify a Date

Type  -  CHOICE(S)

Specify the type of deduction to be made

Return : Da

  • Deduces the corresponding date with the defined parameters from a given date

  • Null if the parameter is null

deprecated.date.generate

deprecated.date.generate(Start  -  Da, End  -  Da, Unit time  -  CHOICE(S), Increment  -  I)

Generates a list of Date from start date by adding increment until vadatelue is less or equal than end date.

Deprecated since version : 8.7.0
Reason : Because the formula didn’t handle negative value arguments.
Replaced by : date.generate

Parameters :

Start  -  Da

Specify the increment start date

End  -  Da

Specify the increment end date

Unit time  -  CHOICE(S)

Specify the unit of time to use on which the unit of time will be applied

Increment  -  I

Input the value of the increment

Return : LIST(Da)

  • The list of dates starting from the start date, adding the increment in a uite of time until the date is less than or equal to the end date

  • An empty list if increment < = 0 or is null

Examples :

deprecated.date.generate1999-12-31T00:00:00Z2000-01-02T00:00:00Z"DAY"1  )  =  [ 1999-12-31T00:00:00Z , 2000-01-01T00:00:00Z , 2000-01-02T00:00:00Z ]

deprecated.date.if

deprecated.date.if(Value  -  Da, Operator  -  CHOICE(S), Value  -  Da, Value if true  -  Da, Value if false  -  Da)

Checks if condition is met and returns a Date if result of the condition you specified is True, and another Date if result is False.

Deprecated since version : 8.3.2
Reason : Because parameters of comparison have been changed in a rule.
Replaced by : date.if

Parameters :

Value  -  Da

Specify date to process

Operator  -  CHOICE(S)

Specify operator used for test

Value  -  Da

Specify date to process

Value if true  -  Da

Returned value if test is true

Value if false  -  Da

Returned value if test is false

Return : Da

  • The value of argument 4 if the condition is true, otherwise the value of argument 5

deprecated.date.list.create

deprecated.date.list.create(Value  -  Da, Value  -  Da)

Creation of a list of Date.

Deprecated since version : 8.3.2
Reason : Because the formula had to have ARGS in parameter.
Replaced by : date.list.create

Parameters :

Value  -  Da

Input a value

Value  -  Da

Input a date (the ARGS function allows you to add n arguments)

Return : LIST(Da)

  • The list containing dates entered in parameter

  • Null if parameter is null

Examples :

deprecated.date.list.create(  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z , 1971-01-01T00:00:00Z , 1972-01-01T00:00:00Z ]

deprecated.date.list.create(  [ 1970-01-01T00:00:00Z , null ]  )  =  [ 1970-01-01T00:00:00Z , null ]

deprecated.date.list.insert

deprecated.date.list.insert(List  -  LIST(Da), Position  -  I, Value  -  Da)

Adds a Date to the list specified in argument Position. Array indices start at 1, or start from the end if index is negative. Index above array size appends the array, or prepends the array if index is negative, with Null values.

Deprecated since version : 8.7.0
Reason : Because the response was false with an position value either 0 or negative.
Replaced by : date.list.insert

Parameters :

List  -  LIST(Da)

Specify list to process

Position  -  I

Specify the insertion position in the list of date

Value  -  Da

Specify the date to insert in the list

Return : LIST(Da)

  • The list with the value inserted at the specified position

  • The list padded with null value if the specified position is greater than the length of the list

deprecated.date.list.intersect

deprecated.date.list.intersect(First list  -  LIST(Da), Second list  -  LIST(Da))

Returns the list of Date in common between two Date lists (can contain the same value several times).

Deprecated since version : 8.7.0
Reason : Because the formula only checked whether the elements of the second list were present in the first list, but did not check conversely.
Replaced by : date.list.intersect

Parameters :

First list  -  LIST(Da)

Specify first list of Date

Second list  -  LIST(Da)

Specify second list of Date

Return : LIST(Da)

  • The list with the values which are common to the two lists, can contain the same value several times in case of occurrence of the value in the lists

Examples :

deprecated.date.list.intersect(  [ 1970-01-01T00:00:00Z , 1970-01-01T00:00:00Z ],  [ 1970-01-01T00:00:00Z ]  )  =  [ 1970-01-01T00:00:00Z ]

deprecated.date.list.intersect(  [ null , null ],  [ null , null ]  )  =  [ null , null ]

deprecated.date.month_end

deprecated.date.month_end(Date  -  Da)

Returns the Date of the end of month of a given date

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.month_end_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the end of month date from the date provided as a parameter

  • Null if the parameter is null

deprecated.date.month_start

deprecated.date.month_start(Date  -  Da)

Returns the Date of the start of month of a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.month_start_of

Parameters :

Date  -  Da

Specify a date

Return : Da

  • Deduces the start date of the month from the date provided as a parameter

  • Null if the parameter is null

deprecated.date.quarter_end

deprecated.date.quarter_end(Date  -  Da)

Returns the Date of the end of quarter of a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.quarter_end_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the quarter end date from the date provided as a parameter

  • Null if the parameter is null

deprecated.date.quarter_start

deprecated.date.quarter_start(Date  -  Da)

Returns the Date of the start of quarter of a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.quarter_start_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the quarter start date from the date provided as a parameter

  • Null if the parameter is null

deprecated.date.to_str

deprecated.date.to_str(Date  -  Da, Reading mask  -  CHOICE(S))

Transforms a Date into a String.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.to_str

Parameters :

Date  -  Da

Specify date to transform

Reading mask  -  CHOICE(S)

Specify the date reading mask provided as a parameter

Return : S

  • The date in string format with defined parameter

  • Null if the parameter is null

deprecated.date.to_strz

deprecated.date.to_strz(Date to transform  -  Da, Reading mask  -  CHOICE(S), Timezone  -  CHOICE(S), Language  -  CHOICE(S))

Transforms a Date into a Character String by specifying the reading mask, the time zone and the language.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.to_str

Parameters :

Date to transform  -  Da

Specify Date to transform

Reading mask  -  CHOICE(S)

Specify reading mask

Timezone  -  CHOICE(S)

Specify timezone

Language  -  CHOICE(S)

Specify language

Return : S

  • The date in string format with defined parameter

  • Null if the parameter is null

Examples :

deprecated.date.to_strz2023-01-01T00:00:00.000100Z"yyyy-MM-dd’T’HH:mm:ss.SSSSSSXXX""Europe/Paris"null  )  =  "2023-01-01T01:00:00.000100+01:00"

deprecated.date.to_strz2023-01-01T01:00:00Z"yyyy-MM-dd’T’HH:mm:ssXXX""UTC"null  )  =  "2023-01-01T01:00:00Z"

deprecated.date.tomorrow

deprecated.date.tomorrow(Date  -  Da)

Return tomorrow’s Date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.tomorrow_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • The date of tomorrow

  • Null if the parameter is null

deprecated.date.transform

deprecated.date.transform(Date  -  Da,S, Entry reading mask  -  CHOICE(S), Output reading mask  -  CHOICE(S))

Transforms a Date into a String by specifying an output reading mask.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.to_str

Parameters :

Date  -  Da,S

Specify Date to transform

Entry reading mask  -  CHOICE(S)

Specify entry reading mask

Output reading mask  -  CHOICE(S)

Specify output reading mask

Return : S

  • The date in string format with defined parameter

  • Null if the parameter is null

deprecated.date.week_end

deprecated.date.week_end(Date  -  Da)

Returns the Date of the end of week of a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.week_end_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the weekend date from the date provided

  • Null if the parameter is null

deprecated.date.week_start

deprecated.date.week_start(Date  -  Da)

Returns the Date of the start of week of a given Date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.week_start_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the start date of the week from the date provided

  • Null if the parameter is null

deprecated.date.year_end

deprecated.date.year_end(Date  -  Da)

Returns the Date of the end of year of a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.year_end_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the end of year date from the date provided

  • Null if the parameter is null

deprecated.date.year_start

deprecated.date.year_start(Date  -  Da)

Returns the Date of the start of year of a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.year_start_of

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • Deduces the start date of the year from the date provided

  • Null if the parameter is null

deprecated.date.yesterday

deprecated.date.yesterday(Date  -  Da)

Returns the Date of the day before a given date.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : date_time.yesterday

Parameters :

Date  -  Da

Specify a Date

Return : Da

  • The day before based on the defined parameter

  • Null if the parameter is null

deprecated.dc.compare

deprecated.dc.compare(Value  -  De,I,B.I,Da,S, Operator  -  CHOICE(S), Value  -  De,I,B.I,Da,S, Value  -  De,I,B.I,Da,S)

Compares two Strings.

Deprecated since version : 8.3.2
Reason : Because the formula is redundant with formulas .if.
Replaced by : str.if

Parameters :

Value  -  De,I,B.I,Da,S

Specify first string to compare

Operator  -  CHOICE(S)

Specify operator

Value  -  De,I,B.I,Da,S

Specify second string to compare

Value  -  De,I,B.I,Da,S

Specify third value to compare (only in case of interval)

Return : B

  • The result of the comparison

deprecated.dc.rule

deprecated.dc.rule(Rule  -  B, Value if true  -  S, Value if false  -  S)

Returns a string following execution of a rule (QueryBuilder DataChain).

Deprecated since version : 8.3.2
Reason : Because the formula is redundant with formulas .if.
Replaced by : str.if, date.if, bigint.if, dec.if, int.if

Parameters :

Rule  -  B

Specify condition to process

Value if true  -  S

Returned value if test is true

Value if false  -  S

Returned value if test is false

Return : S

  • The value of argument 2 if the condition is true, otherwise the value of argument 3

  • Null if the condition is null is null

deprecated.dc.to_str

deprecated.dc.to_str(Text  -  De,I,B.I,Da,S)

Transforms any type into a String.

Deprecated since version : 8.7.0
Reason : Because the formula is redundant with formulas .to_str.
Replaced by : bool.to_str, dec.to_str, deprecated.date.to_str, int.to_str, date_time.to_str, bigint.to_str, word.to_str

Parameters :

Text  -  De,I,B.I,Da,S

Text to transform into a string

Return : S

  • The value in string format

deprecated.dec.factorial

deprecated.dec.factorial(Value  -  De,I,B.I)

Returns Factorial of a value.

Deprecated since version : 8.7.0
Reason : Because the output is a BigInteger.
Replaced by : bigint.factorial

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : B.I

  • Factorial of the input value

  • Null if parameter is null

  • Null if parameter is none

Examples :

deprecated.dec.factorial4  )  =  24

deprecated.dec.factorialnull  )  =  null

deprecated.dec.generate

deprecated.dec.generate(Increment  -  De,I,B.I, Start Decimal  -  De,I,B.I, End Decimal  -  De,I,B.I)

Generates a list of Decimals from the Start Decimal by adding the Increment to the End Decimal.

Deprecated since version : 8.7.0
Reason : Because the formula didn’t handle negative value arguments.
Replaced by : dec.generate

Parameters :

Increment  -  De,I,B.I

Input value to add at each step of the generation

Start Decimal  -  De,I,B.I

Specify initial value of the sequence

End Decimal  -  De,I,B.I

Specify the maximum value of the sequence (inclusive)

Return : LIST(De)

  • List of decimals generated by incrementing from start value until reaching end value (inclusive)

  • An empty list if increment ⇐ 0 or is null

Examples :

deprecated.dec.generate0.312  )  =  [ 1 , 1.3 , 1.6 , 1.9 ]

deprecated.dec.generate012  )  =  [ ]

deprecated.dec.if

deprecated.dec.if(Value  -  De,I,B.I, operator  -  CHOICE(S), Value  -  De,I,B.I, Value if true  -  De,I,B.I, Value if false  -  De,I,B.I)

Checks if condition is met and returns a value if result of a condition you specified is True, and an another value if result is False. - Deprecated - Use bigint.if instead.

Deprecated since version : 8.3.2
Reason : Because parameters of comparison have been changed in a rule.
Replaced by : dec.if

Parameters :

Value  -  De,I,B.I

Specify value to process

operator  -  CHOICE(S)

Specify operator used for test

Value  -  De,I,B.I

Specify value to process

Value if true  -  De,I,B.I

Returned value if test is true

Value if false  -  De,I,B.I

Returned value if test is false

Return : De

  • The value of argument 4 if the condition is true, otherwise the value of argument 5

deprecated.dec.is_numeric

deprecated.dec.is_numeric(Value  -  De,I,B.I)

Checks if value is numeric.

Deprecated since version : 8.7.0
Reason : Because the formula should take a String parameter type instead of Number type.
Replaced by : str.is_numeric

Parameters :

Value  -  De,I,B.I

Specify value to process

Return : B

  • True if the parameter is a numeric value

  • False if null or NaN

Examples :

deprecated.dec.is_numeric1  )  =  true

deprecated.dec.is_numericnull  )  =  false

deprecated.dec.list.create

deprecated.dec.list.create(Value 1  -  De,I,B.I, Value 2  -  De,I,B.I)

Creation of a list of Decimal - Deprecated - Use dec.list.create instead.

Deprecated since version : 8.3.2
Reason : Because the formula had to have ARGS in parameter.
Replaced by : dec.list.create

Parameters :

Value 1  -  De,I,B.I

Input a value

Value 2  -  De,I,B.I

Input a value (n by adding arguments)

Return : LIST(De)

  • The list containing values entered in parameter

  • Null if parameter is null

Examples :

deprecated.dec.list.create(  [ 1.2 , 1.3 , null ]  )  =  [ 1.2 , 1.3 , null ]

deprecated.dec.list.insert

deprecated.dec.list.insert(List  -  LIST(De,I,B.I), Position  -  I, Value  -  De,I,B.I)

Adds a Decimal to the list specified in argument 1. Array indices start at 1, or start from the end if index is negative. Index above array size appends the array, or prepends the array if index is negative, with ‘null’ elements.

Deprecated since version : 8.7.0
Reason : Because the response was false with an position value either 0 or negative.
Replaced by : dec.list.insert

Parameters :

List  -  LIST(De,I,B.I)

Specify list to process

Position  -  I

Specify the insertion position in the list

Value  -  De,I,B.I

Specify the value to insert in the list

Return : LIST(De)

  • Returns a new list with the specified value inserted at the given position

  • When the value to insert is null, it is inserted as a null element in the resulting list

  • For positive indices (starting at 1), inserts the value at that position, shifting existing elements right

  • For negative indices, counts from the end of the list

  • If index exceeds list size, fills gap with null values before inserting

  • If negative index exceeds list size, prepends with null values before inserting

  • Preserves all original elements, only adding the new value and necessary null padding

  • Returns an empty list if the input list is null

  • Returns an empty list if the position argument is null

Examples :

deprecated.dec.list.insert(  [ 1 , 1 ],  15  )  =  [ 5 , 1 , 1 ]

deprecated.dec.list.insert(  [ 1 ],  34.3  )  =  [ 1 , null , 4.3 ]

deprecated.dec.list.intersect

deprecated.dec.list.intersect(First list  -  LIST(De,I,B.I), Second list  -  LIST(De,I,B.I))

Returns the list of numbers in common between two number lists (can contain the same value several times).

Deprecated since version : 8.7.0
Reason : Because the formula only checked whether the elements of the second list were present in the first list, but did not check conversely.
Replaced by : dec.list.intersect

Parameters :

First list  -  LIST(De,I,B.I)

Specify first list of numbers

Second list  -  LIST(De,I,B.I)

Specify second list of numbers

Return : LIST(De)

  • The list with the values which are common to the lists, can contain the same value several times in case of occurrence of the value in the 2 lists

Examples :

deprecated.dec.list.intersect(  [ 1.2 , 1.2 ],  [ 1.2 ]  )  =  [ 1.2 ]

deprecated.dec.list.intersect(  [ 1.2 ],  [ 1.2 , 1.2 ]  )  =  [ 1.2 , 1.2 ]

deprecated.dec.list.intersect(  [ 5.2 , 0 , null , 2.3 ],  [ 5.2 , 2.3 , -3.4 , null ]  )  =  [ 5.2 , 2.3 , null ]

deprecated.dec.operator

deprecated.dec.operator(Operation type to perform  -  CHOICE(S), List  -  ARGS(De,I,B.I))

Performs an operation on a list of Decimal (sum, product, division, subtraction, mean, minimum, maximum or median).

Deprecated since version : 8.7.0
Reason : Because using a formula for each operator is more convenient.
Replaced by : dec.diff, dec.mean, int.diff, dec.median, bigint.mult, int.mult, bigint.max, dec.sum, dec.min, dec.mult, int.max, bigint.sum, dec.max, bigint.min, int.min, int.sum, dec.div, bigint.diff

Parameters :

Operation type to perform  -  CHOICE(S)

Specify type of operation

List  -  ARGS(De,I,B.I)

Specify list to process

Return : De

  • Result of the operation

  • Null if one of the parameters is null

  • Null if the result of the operation is NaN

Examples :

deprecated.dec.operator"SOMME",  [ 1 , 1.2 , 1.4 ]  )  =  3.6

deprecated.dec.operator"DIFFERENCE",  [ 1.3 , 1.4 , 1.5 ]  )  =  -1.6

deprecated.dec.operator"MEDIANE",  [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]  )  =  5

deprecated.dec.operator"MIN",  [ null ]  )  =  null

deprecated.geo.distance

deprecated.geo.distance(Start latitude  -  De, Start Longitude  -  De, End Latitude  -  De, Start Longitude  -  De, Unit  -  CHOICE(S))

Returns distance between two geographical points expressed in Latitude and Longitude.

Deprecated since version : 8.7.0
Reason : Because the formula is incorrect.
Replaced by : geo.st_distance

Parameters :

Start latitude  -  De

Specify start point latitude

Start Longitude  -  De

Specify start point longitude

End Latitude  -  De

Specify end point latitude

Start Longitude  -  De

Specify end point longitude

Unit  -  CHOICE(S)

Specify unit

Return : De

  • Is true if the point defined by his latitude-longitude is contained in the forme, otherwise false

Examples :

deprecated.geo.distance1.50.5552.4562.489"K"  )  =  239.7611497008155

deprecated.geo.st_as_GeoJson

deprecated.geo.st_as_GeoJson(Geometry  -  Ge)

Returns the GeoJson String representation of a Geometry.

Deprecated since version : 8.7.0
Reason : Because the formula id should not have capital letters.
Replaced by : geo.st_as_geojson

Parameters :

Geometry  -  Ge

Specify geometry

Return : S

  • The GeoJson of geometry in string format

  • In JSON format with two keys, the type of shape and coordonates of points

Examples :

deprecated.geo.st_as_GeoJsonPOLYGON 0 0, 0 2, 2 2, 2 0, 0 0  )  =  "{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}"

deprecated.geo.st_geom_from_GeoJson

deprecated.geo.st_geom_from_GeoJson(GeoJson  -  S)

Builds a Geometry from a GeoJson.

Deprecated since version : 8.7.0
Reason : Because the formula id should not have capital letters.
Replaced by : geo.st_geom_from_geojson

Parameters :

GeoJson  -  S

Specify GeoJson

Return : Ge

  • Returns a geometry from GeoJson

Examples :

deprecated.geo.st_geom_from_GeoJson"{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,2.0],[2.0,2.0],[2.0,0.0],[0.0,0.0]]]}"  )  =  POLYGON 0 0, 0 2, 2 2, 2 0, 0 0

deprecated.int.if

deprecated.int.if(Value  -  I, Operator  -  CHOICE(S), Value  -  I, Value if true  -  I, Value if false  -  I)

Checks if condition is met and returns a value if result of a condition you specified is True, and an another value if result is False.

Deprecated since version : 8.3.2
Reason : Because parameters of comparison have been changed in a rule.
Replaced by : int.if

Parameters :

Value  -  I

Specify value to process

Operator  -  CHOICE(S)

Specify operator used for test

Value  -  I

Specify value to process

Value if true  -  I

Returned value if test is true

Value if false  -  I

Returned value if test is false

Return : I

  • The value of argument 4 if the condition is true, otherwise the value of argument 5

deprecated.int.list.create

deprecated.int.list.create(Value  -  I, Value  -  I)

Creation of a list of n Integer.

Deprecated since version : 8.3.2
Reason : Because the formula had to have ARGS in parameter.
Replaced by : int.list.create

Parameters :

Value  -  I

Input a value

Value  -  I

Input a Integer (the ARGS function allows you to add n arguments)

Return : LIST(I)

  • The list of Integer containing values entered in parameter

  • Null if parameter is null

Examples :

deprecated.int.list.create(  [ 1 , 2 , null ]  )  =  [ 1 , 2 , null ]

deprecated.int.list.insert

deprecated.int.list.insert(List  -  LIST(I), Position  -  I, Value  -  I)

Adds an Integer to the list specified in argument 1. Array indices start at 1, or start from the end if index is negative. Index above array size appends the array, or prepends the array if index is negative, with Null values.

Deprecated since version : 8.7.0
Reason : Because the response was false with an position value either 0 or negative.
Replaced by : int.list.insert

Parameters :

List  -  LIST(I)

Specify list of integers to process

Position  -  I

Specify the insertion position in list

Value  -  I

Specify the Integer to insert in the list

Return : LIST(I)

  • The list with the value inserted at the specified position

  • The list padded with null value if the specified position is greater than the length of the list

Examples :

deprecated.int.list.insert(  [ 1 , 1 ],  15  )  =  [ 5 , 1 , 1 ]

deprecated.int.list.insert(  [ 1 ],  34  )  =  [ 1 , null , 4 ]

deprecated.int.list.intersect

deprecated.int.list.intersect(First list  -  LIST(I), Second list  -  LIST(I))

Returns the list of Integer in common between two Integer lists (can contain the same value several times).

Deprecated since version : 8.7.0
Reason : Because the formula only checked whether the elements of the second list were present in the first list, but did not check conversely.
Replaced by : int.list.intersect

Parameters :

First list  -  LIST(I)

Specify first list of integer

Second list  -  LIST(I)

Specify second list of integer

Return : LIST(I)

  • The list with the values which are common to the two lists, can contain the same value several times in case of occurrence of the value in the lists

Examples :

deprecated.int.list.intersect(  [ 1 ],  [ 1 , 1 ]  )  =  [ 1 , 1 ]

deprecated.int.list.intersect(  [ 5 ],  [ 5 , 2 , -3 ]  )  =  [ 5 ]

deprecated.int.list.intersect(  [ 5 , 0 , null , 2 ],  [ 5 , 2 , -3 , null ]  )  =  [ 5 , 2 , null ]

deprecated.str.abrev

deprecated.str.abrev(Value  -  S, Starting Position  -  I, n Length (Min. 4)  -  I,B.I)

Returns n first characters of a String from the beginning.

Deprecated since version : 8.7.0
Reason : Because the formula was performing an auto correction of the length parameter, which could mislead the user.
Replaced by : str.abrev

Parameters :

Value  -  S

Specify the string to abbreviate

Starting Position  -  I

Specify the start position. 1 is the position of the first character of the string

n Length (Min. 4)  -  I,B.I

Specify n length. Has to be superior or equal to 4

Return : S

  • Returns the substring between the two indices specified by the user

  • Returns the substring between 0 and the other index specified by the user when the first index is negative

  • Returns null if one of the formula parameters is null

  • Throws an error if the second index is less than 4

Examples :

deprecated.str.abrev"DataChain brings data back at the core of your business"250  )  =  "DataChain brings data back at the core of your …​"

deprecated.str.abrev"DataChain brings data back at the core of your business"850  )  =  "…​n brings data back at the core of your business"

deprecated.str.abrev"DataChain brings data back at the core of your business"412  )  =  "DataChain…​"

deprecated.str.abrev"DataChain brings data back at the core of your business"1017  )  =  "…​brings data…​"

deprecated.str.date_from_xls

deprecated.str.date_from_xls(Serial number  -  S)

Returns an ISO 8601 Date in String format corresponding to the serial number of Excel’s 1900 date system (number of days that have elapsed since 1st January 1900).

Deprecated since version : 8.7.0
Reason : Because the formula didn’t take the timezone into account.
Replaced by : int.date_from_xls

Parameters :

Serial number  -  S

Enter the serial number in Excel’s 1900 date system that corresponds to the desired date

Return : Da

  • Returns the date corresponding to the serial number (decimal) entered by the user

  • Negative values are accepted for the serial number and correspond to dates prior to January 1, 1900.

  • Returns null if the serial number entered is not numeric (including if it is empty or null)

Examples :

deprecated.str.date_from_xls"0"  )  =  1899-12-30T00:00:00Z

deprecated.str.date_from_xls"1000"  )  =  1902-09-26T00:00:00Z

deprecated.str.date_from_xlsnull  )  =  null

deprecated.str.if

deprecated.str.if(Value  -  De,I,B.I,Da,S, Operator  -  CHOICE(S), Value  -  De,I,B.I,Da,S, Value if true  -  S, Value if false  -  S)

Checks if condition is met and returns a value if result of condition is True, and another value if result is False.

Deprecated since version : 8.3.2
Reason : Because parameters of comparison have been changed in a rule.
Replaced by : str.if

Parameters :

Value  -  De,I,B.I,Da,S

Specify string to process

Operator  -  CHOICE(S)

Specify operator used for test

Value  -  De,I,B.I,Da,S

Specify test to perform

Value if true  -  S

Specify the value to return if test is true

Value if false  -  S

Specify the value to return if test is false

Return : S

  • Returns the value of the penultimate argument of the formula if the condition specified by the user is satisfied. Returns the value entered as the last argument otherwise.

  • Returns null if the condition is null

  • Returns null if the condition is empty

deprecated.str.list.create

deprecated.str.list.create(Value 1  -  S, Value 2  -  S)

Creation of a list of String.

Deprecated since version : 8.3.2
Reason : Because the formula had to have ARGS in parameter.
Replaced by : str.list.create

Parameters :

Value 1  -  S

Input a value

Value 2  -  S

Input a value (the ARGS function allows you to add n arguments)

Return : LIST(S)

  • Returns a list of character Strings created from the input arguments. Empty input Strings remain in the list. Input nulls become the String ‘null’ in the list.

Examples :

deprecated.str.list.create(  [ "Datachain" , "Maestro" , "DcCode" ]  )  =  [ "Datachain" , "Maestro" , "DcCode" ]

deprecated.str.list.insert

deprecated.str.list.insert(List  -  LIST(S), Position  -  I, Value  -  S)

Add an element to the list specified in argument 1. Array indices start at 1, or start from the end if index is negative. Index above array size appends the array, or prepends the array if index is negative, with null elements.

Deprecated since version : 8.7.0
Reason : Because the response was false with an position value either 0 or negative.
Replaced by : str.list.insert

Parameters :

List  -  LIST(S)

Specify list of string to process

Position  -  I

Specify the insertion position in the list

Value  -  S

Specify the string to insert in the list

Return : LIST(S)

  • Returns a new list with the specified element inserted at the given position

  • Inserts null as a valid element if it’s the value to be inserted

  • Returns the original list if the insertion index is null

Examples :

deprecated.str.list.insert(  [ "is" , "nocode" , "and" , "lowcode" ],  1"Datachain"  )  =  [ "Datachain" , "is" , "nocode" , "and" , "lowcode" ]

deprecated.str.list.insert(  [ "NAN" , "is" , "not" ],  5"value"  )  =  [ "NAN" , "is" , "not" , null , "value" ]

deprecated.str.list.intersect

deprecated.str.list.intersect(First list  -  LIST(S), Second list  -  LIST(S))

Returns the list of String in common between two String lists (can contain the same value several times).

Deprecated since version : 8.7.0
Reason : Because the formula only checked whether the elements of the second list were present in the first list, but did not check conversely.
Replaced by : str.list.intersect

Parameters :

First list  -  LIST(S)

Specify first list of strings

Second list  -  LIST(S)

Specify second list of strings

Return : LIST(S)

  • Returns a list of elements common to both input lists

  • Returns an empty list if no common elements are found

Examples :

deprecated.str.list.intersect(  [ "Datachain" , "Maestro" ],  [ "Maestro" ]  )  =  [ "Maestro" ]

deprecated.str.list.intersect(  [ "Datachain" ],  [ "Datachain" , "Datachain" ]  )  =  [ "Datachain" , "Datachain" ]

deprecated.str.list.intersect(  [ "Datachain" , null ],  [ null ]  )  =  [ null ]

deprecated.str.replace_null

deprecated.str.replace_null(Value  -  S, String replacing Null  -  S)

Replaces a Null value by String value

Deprecated since version : 8.7.0
Reason : Because an empty String should not be replaced by the replacement string.
Replaced by : str.replace_null

Parameters :

Value  -  S

Specify value to process

String replacing Null  -  S

Specify string that replaces Null value

Return : S

  • Returns the specified replacement String if the input value is null

  • Returns the original input value unchanged if it is not null

  • Treats empty Strings and spaces as non-null values

  • Does not modify the original input if it’s not null

Examples :

deprecated.str.replace_null"Dupont""t"  )  =  "Dupont"

deprecated.str.replace_nullnull"o"  )  =  "o"

deprecated.str.to_date

deprecated.str.to_date(Value  -  S, Mask  -  CHOICE(S))

Parse date from String.

Deprecated since version : 8.3.2
Reason : Because parameters were missing in the formula.
Replaced by : str.to_datez

Parameters :

Value  -  S

Specify string to transform

Mask  -  CHOICE(S)

Specify reading mask

Return : Da

  • Returns a Date object in UTC format parsed from the input String using the specified pattern, timezone, and optional language

  • Returns null if any input parameter is null or if the date String cannot be parsed