This page provides details on supported functions.
For information on the Evaluate Expression Tool, see How to Use Evaluate Expression.
On this page:
Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Supported Message Center (MC) Functions
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
atof( object[, decsep = '.'[, thoussep=',']] ) |
Arguments Types
object | String |
decsep - decimal separator | String |
thoussep - thousands separator | String |
Return Type
Double |
Returns Value
Converts its first parameter object of type String to type Double, taking its second parameter decsep as decimal separator and its third parameter thoussep as thousands separator. If separators are indicated, then during conversion, these symbols are omitted, that is, not taken into consideration. The default value for parameter decsep is '.', for parameter thoussep – ','.
If parameters have types other than those needed, zero (0.0) is returned.
Examples
Expression | Result |
atof('11123,456', ',') | 11123.456 |
atof('11123,456') | 11123456 |
atof('11.123,456', ',', '.') | 11123.456 |
atof('11.123,456', ',') | 0 (Cannot convert as the thoussep not defined) |
atof('11.123,456',) | 0 (Cannot convert as the thoussep and decsep not defined) |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
atoi( object ) |
Arguments Types
object | String |
Return Type
Integer |
Returns Value
Converts its parameter object of type String to type Integer
If parameters have types other than those needed, zero (0) is returned
Examples
Expression | Result |
atoi('11123') | 11123 |
atoi('11123,456') | 11123 |
atoi('abc') | 0 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
atol( object ) |
Arguments Types
object | String |
Return Type
Long |
Returns Value
Converts is parameter object of type String to type Long
Of parameters have types other than those needed, zero (0) is returned
Examples
Expression | Result |
atol('1231231231231231231') | 1231231231231231231 |
atol('123123123123123,1231') | 123123123123123 |
atol('abc') | 0 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
convert( object, p2[, p3[, p4[, p5[, p6]]]]) |
Arguments Types
object |
p2 |
p3 |
p4 |
p5 |
p6 |
Return Type
String |
Returns Value
If object is of type String, then it is returned unchanged no matter what values the other parameters include.
If object is of type Date, then p2 must have type String representing format, according to which object is represented as string.
NOTE: Format can have the following special symbols:
If object is of type Time, then p2 must have type String representing format, according to which object is represented as string.
Format can have the following special symbols:
Object has one of numeric types Integer, Long, or Double.
In this case, next types are assumed with their descriptions:A conversion of numeric type to string type is attempted by:
Using a specified thousand separator, if any,
Using a decimal separator, if any,
Grouping thousands by a specified number, and
If the number is negative, inserting a negative sign in front of the number.
If the negative character is '(', and the number is negative, the resulting string is enclosed in parenthesis. Otherwise, an empty string is returned.
If the negative character is "(", and the number is negative, the resulting string is enclosed in parenthesis. Otherwise, an empty string is returned.
yyyy – Replaced with 4 digit year.
yy – Replaced with 2 digit year.
mm – Replaced with month number.
dd – Replaced with day in the month number.
hh – Replaced with number of hours.
mm – Replaced with number of minutes.ss – Replaced with number of seconds.
p2 Integer Contains the number of the decimal.
p3 String Contains the decimal separator. If omitted, the default value \nis "."
p4 String Contains the thousand separator. If omitted, the default value is "" (empty string).
p5 Integer Contains the number of thousands to separate. If omitted, the default value is 3.
p6 String Contains a negative sign. If omitted, the default value is "-";
Examples
Expression | Result |
convert(123456, 3, ".", ",", 3, "-") | '123,456.000' |
Default Value used (next 5 lines) | |
convert(-123456, 3, ".", ",", 3, "-") | '-123,456.000' |
convert(-123456, 3, ".", ",", 3) | '-123,456.000' |
convert(-123456, 3, ".", ",") | '-123,456.000' |
convert(-123456, 3, ".") | '-123456.000' |
convert(-123456, 3) | '-123,456.000' |
convert(-123456l, 3, ".", "", 3, "(") | '(123456.000)' |
convert(-123456l, 3, ".", ",", -3, "(") | '(123456.000)' |
convert(-123456l, -3, ".", ",", 3, "(") | '(123,456)' |
convert(-56l, -3, ".", ",", 3, "(") | '(56)' |
convert(1234567890.987654321, 3, ".", ",", 3, "-") | '1,234,567,890.988' |
convert(-1234567890.987654321, 3, ".", ",", 3, "-") | '-1,234,567,890.988' |
convert(-1234567890.987654321, 3, ".", ",", 3, "(") | '(1,234,567,890.988)' |
convert(0.0000987654321, 3, ".", ",", 3, "-") | '0.000' |
Default Value used (next 5 lines) | |
convert(1234567890.9, 4, "-", "_", 2, "-") | '1_23_45_67_890-9000' |
convert(-1234567890.9, 4, "-", "_", 2, "(") | '(1_23_45_67_890-9000)' |
convert(-1234567890.9, 4, "-", "_", 2) | '-1_23_45_67_890-9000' |
convert(-1234567890.9, 4, "-", "_") | '-1_234_567_890-9000' |
convert(-1234567890.9, 4, "-") | '-1234567890-9000' |
convert(-1234567890.9, 4) | '-1234567890.9000' |
convert(-1234567890.987654321, 3, ".", ",", 3, "") | '-1,234,567,890.988' |
convert(#12:15:45#, "hh/mm/ss") | '12/15/45' |
convert(today(), "yyyy/mm/dd") | '2001/07/13' |
convert(today(), "yy/mm/dd") | '01/07/13' |
convert(today(), "Today is : dd-mm-yyyy") | 'Today is : 13-07-2001' |
convert(currentTime(), "hh:mm:ss.uuu") | '18:18:20.111' |
convert("string", "hh:mm") | 'string' |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
CountStrings(countStringsObject, countStringsWhat, countStringsStart, countStringsHowMuch) |
Returns Value
Returns how many times string, specified by its 2nd parameter (countStringsWhat), occurs in the strings, specified by its 1st parameter (countStringsObject). Starting position is indicated by the 3rd parameter (countStringsStart) and the range of symbols within the search should be performed is defined by the 4th parameter (countStringsHowMuch).
Examples
Expression | Result |
CountStrings("122333444455555", "55") | 2 |
CountStrings("1223334444", "NEW") | 0 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
CreateVariable( varName, varValue): |
Returns Value
Assigns expression indicated as a second parameter (varValue) and stores it for further usage under the name that the first expression evaluates too (varName).
Info |
---|
The assignment statement (:=) can also be used for creating a variable. |
Examples
Expression |
CreateVariable('var_1','123') |
CreateVariable('var_2',:var_1:) |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
CurrentTime( ) |
Return Type
Time |
Returns Value
Returns value of type Time for the current time in the format hh:mm:ss.uuu.
Examples
Expression | Result |
CurrentTime() | 01:41:59.035 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Date( object, format ) |
Arguments Types
object | String |
format | String |
Return Type
Date |
Returns Value
Makes an attempt to convert the string that is contained in object using the format, to type Date.
The format string can contain the following special symbols:
object – String
format – String
y – For year representation.
m – For month representation.
d – For day in the month representation.
The number of consecutive special letters indicates the maximum number of digits in the corresponding area.
For example, mm indicates that the number of the month contains at a maximum, two digits, but it can contain less too. All of this is done to enable the leading zeroes to be omitted. If any of these fields are omitted, the default values of the current date are taken. Other symbols in the format string are not taken into consideration, but the corresponding symbol must be present in the date string too. Otherwise, the date is considered to be in the incorrect format.
For example, date('14.05.1973', 'dd/mm/yyyy') causes an error because the delimiter in the format does not match the actual one in the date ('.' instead of '/'). If the given data is an incorrect date, the object is marked as containing an invalid date.
Expression | Result |
Date('2014/10/16','yyyy/mm/dd' | 10/16/2014 |
Date('2014/10/16','yyyy.mm.dd') | *cannot convert |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
dayOfWeek (dateData)
dayOfWeekNr (dateData)
dayOfWeekShrt (dateData) |
Arguments Types
DateData | Date |
Return Type
String |
Returns Value
DayOfWeek: Returns day of week from the specified parameter of type Date.
DayOfWeekNr: Returns day of week number from the specified parameter of type Date.
DayOfWeekShrt: Returns day of week abbreviation from the specified parameter of type Date.
If a parameter has a type other than what is needed, zero is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
executeMethod( methodName ) |
Arguments Types
MethodName | String |
Return Type
Any |
Returns Value
Makes an attempt to execute the method specified by the string methodName. If the attempt is successful, the result of the method execution is returned, having the type and the value defined by the method of execution. If the attempt fails, stated by the message "...there is no such method…," the object of type Undefined is returned.
If a parameter has a type other than what is needed, the object of type Undefined is returned.
Examples
Expression |
ExecuteMethod('MyMethod') |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
find( findWhere , findWhat[, startPos = "0", [occurrence= "1"]]); |
Arguments Types
findWhere | String |
findWhat | String |
startPos | Integer |
occurrence | Integer |
Return Type
Integer |
Returns Value
Searches position of the n-the occurrence of the findWhat in findWhere beginning the position startPos, and returns the index. If where is not found, the return index is equal to -1. If start is omitted or is negative, the search is done from the beginning of findWhere. If occurrence is omitted, the first occurrence is returned.
If parameter types differ from those needed, an empty string is returned.
Examples
Expression | Result |
Find('This is a string', 'string', 0, 1) | 10 |
Find('This is a string', 'is', 0, 2) | 5 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
getDay(object)
getMonth(object)
getYear(object) |
Arguments Types
object | Date |
Return Type
Integer |
Returns Value
Returns the day of the day/month/year for the object respectively.
If a parameter has a type other than what is needed, zero is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
GetDirRoot () |
Return Type
String |
Returns Value
Returns service root directory.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
getLine(object[, lineNo = "1"[, pos= "1"]]); |
Arguments Types
object | String |
lineNo | Integer |
pos | Integer |
Return Type
String |
Returns Value
Returns the line, which number is specified in the second parameter lineNo, starting with position indicated by its third parameter pos from the original object of type String, specified by its first parameter object.
If lineNo is omitted, or is negative, it is assumed that lineNo is equal to 1.
If pos is omitted, or is negative, it is assumed that pos is equal to 0 (start of the string).
If parameter types differ from those needed, an empty string is returned.
Examples
Expression | Result |
GetLine('abc\ndef\nghi',2,2) | 'ef' |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
getLines(object[, startLine[, howMuch]]); |
Arguments Types
object | String |
startLine | Integer |
howMuch | Integer |
Return Type
String |
Returns Value
Returns SimpleString that contains at much number of lines, specified by third parameter howMuch, starting with line number specified by second parameter startLine (1 based), from the object, specified by its first parameter object.
If startLine is omitted, or is negative, it is assumed that startLine is equal to 1.
If startLine is bigger than the number of lines, an empty string is returned.
If there is no line with indicated line number, lineNo, or if position pos indicates after the end of the string, an empty string is returned.
If parameter types differ from those needed, an empty string is returned.
Examples
Expression | Result |
GetLines('aaa\nbbb\nccc',2,2) | 'bbb ccc' |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
GetPlatform () |
Return Type
String |
Returns Value
Returns OS type (WIN or UNIX).
Examples
Expression | Result |
GetPlatform() | 'WIN' |
GetPlatform() | 'UNIX' |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
GUID( ) |
Returns Value
Returns the string type identifier for the indicated expression.
Examples
Expression | Result |
GUID() | GFHGJ7FGHJ6FF555 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
GetTypeName(expr) |
Returns Value
Returns the string type identifier for the indicated expression.
Examples
Expression | Result |
GetTypeName('1') | String |
GetTypeName(123) | Long |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
IF (expression) THEN [statements_if_true;] ELSE [statements_if_false;] |
Arguments Types
object | String |
decsep - decimal separator | String |
thoussep - thousands separator | String |
Return Type
Double |
Returns Value
This function conditionally executes a group of statements, depending on the value of an expression.
Examples
Expression |
IF (Atoi(:tag10:)>0) THEN [nop();nop(); ] ELSE [nop(); nop();] |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
iif(logexpr, result_if_true, result_if_false) |
Arguments Types
logexpr | Any type |
result_if_false | Any type |
result_if_true | Any type |
Return Type
Any type can be returned |
Returns Value
Any value can be returned.
If parameter logical_expression evaluates to true, returns second parameter result_if_true, otherwise third parameter result_if_false is returned. The second and the third parameters should (but not must) be of the same type.
The logical expression is true only if it is:
Of type Date, and the date is valid,
Of type Time, and the time is valid,
Of time, String, and the string is non-empty, and
Of one of numeric type Integer, Double, or Long, and contains non-zero.
Examples
Expression |
iif(Atoi(:tag10:)>0,nop(), nop()) |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
isAlpha(object_to_test) |
Arguments Types
object_to_test | String |
Return Type
Integer |
Returns Value
Returns true (non-zero) if the specified parameter (object_to_test) is alpha: consists only from letters.
If a parameter has a type other than what is needed, zero is returned.
Examples
Expression | Result |
IsAlpha('abc') | 1 |
IsAlpha('123') | 0 |
IsAlpha('a2bc') | 0 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
isAlphaNumeric(object_to_test [,separator= ","]) |
Arguments Types
object_to_test | String |
separator | String |
Return Type
Integer |
Returns Value
Returns true (non-zero) if the first specified parameter (object_to_test) is alpha-numeric: consists only from letters and digits and at maximum one presence of decimal point separator (indicated by second parameter).
If a parameter has a type other than what is needed, zero is returned.
Examples
Expression | Result |
IsAlphaNumeric('abc') | 1 |
IsAlphaNumeric('123') | 1 |
IsAlphaNumeric('a2bc') | 1 |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
isDefined(varName) |
Arguments Types
varName | String/Integer/Long |
Return Type
Integer |
Returns Value
Returns true (non-zero) if the variable, indicated by its parameter varname, is defined.
If parameters have types other than those needed, 0 (zero) is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
isNull(object) |
Arguments Types
object | Any type |
Return Type
Integer |
Returns Value
Returns true (non-zero) if the specified parameter object has type Null.
Examples
Expression |
IsNull(:var:)=1 if :var: has not been initialized anywhere before |
IsNull(1)=0 as number 1 is not Null |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
isNumeric(object_to_test[, separator= ","]) |
Arguments Types
object | String |
separator | String |
Return Type
Integer |
Returns Value
Returns true (non-zero) if the first specified parameter (object_to_test) is numeric: consists only from digits and at maximum one presence of decimal point separator (indicated by second parameter).
If a parameter has a type other than what is needed, zero is returned.
Examples
Expression | Result |
IsNumeric('123') | 1 |
IsNumeric(345) | 1 |
IsNumeric('a') | 0 |
IsNumeric(a) | error |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
LEFT(left_object, left_howMuch) |
Arguments Types
left_object | String |
left_howMuch | Integer |
Return Type
String |
Returns Value
Returns left substring of its first parameter (left_object), having at much number of characters, indicated by its second parameter (left_howMuch). Attempts to convert parameters to needed types in contrast to SubString.
Examples
Expression | Result |
LEFT('abcde',3) | 'abc' |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Lower(object[, startPos = "0"[, howMuch = "-1"]]) |
Arguments Types
object | String |
startPos | Integer |
howMuch | Integer |
Return Type
String |
Returns Value
Changes the case of symbol to lowercase in the object, specified by its first parameter object, starting with position indicated by its second parameter startPos, and maximum number of changes, specified by its third parameter howMuch, are made.
If startPos is omitted, or is negative, it is assumed to be equal to the start of the string.
If howMuch is omitted, or is negative, it is assumed that all symbols must change the case.
If parameter types differ from those needed, an empty string is returned.
Examples
Expression | Result |
Lower('ABCDE') | 'abcde' |
Lower('ABCDE',2) | 'ABcde' |
Lower('ABCDE',2,1) | 'ABcDE' |
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
MakeNumber( expr1, expr2 ) |
Returns Value
This function creates the number from a specified mantissa and exponent.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Mid( midObject, midStart, midHowMuch ) |
Return Type
String |
Returns Value
This function returns the substring of its first parameter, starting at the position specified by the first parameter. The length of the resulting string is indicated by the third parameter.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
NoOfLines( expr ) |
Return Type
Integer |
Returns Value
The number of lines (base 1) the expression contains.
If parameters have types other than those needed, 0 is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Nop() |
Return Type
Void |
Returns Value
The value of type Undefined is always returned.
This is a non-operation function. It is required under certain circumstances because its execution speed is fast. It is recommended for use over other functions.
Typically, this function is used in iif, and only when the action for one of two conditions exists.
Examples
Expression | Result |
iif(isDefined(15), nop(), createVariable(15, "Value")) |
|
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
PadLeft( padObject, padChar, padMaxLen ) |
Return Type
String |
Returns Value
This function pads objects from the left side with a symbol, specified in the second parameter, so that the resulting string has at a minimum, the padMaxLen symbols.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
PadRight( padObject, padChar, padMaxLen ) |
Return Type
String |
Returns Value
This function pads objects from the right side with a symbol, specified in the second parameter, so that the resulting string has at a minimum, the padMaxLen symbols.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
RemoveMethod( name ) |
Arguments Types
name | String |
Return Type
Integer |
Returns Value
Makes an attempt to remove the already compiled method with a name.
If the method was found and successfully removed, one (1) is returned. Otherwise, zero (0) is returned.
If parameters have types other than those needed, zero (0) is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Replace( object, what, with[, from[, howMuch]] ) |
Arguments Types
object | String |
what | String |
with | String |
from | Integer |
howMuch | Integer |
Return Type
String |
Returns Value
Substitutes howMuch occurrences of the string what, with the string with, starting with position from in object. The result of the substitution is returned.
If From is omitted, or is negative, it is assumed that its value is 0, the start of the string.
If howMuch is omitted, or is negative, it is assumed to replace all occurrences of what with with.
If parameter types differ from those needed, an empty string is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
RFind( findWhere, FindWhat, startPos='-1', occurrence='1' ) |
Returns Value
This function searches the backward position of the n-th occurrence of the second parameter in its first parameter, beginning with the position specified in its third parameter.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Right( rightObject, rightHowMuch ) |
Returns Value
This function returns the right substring of its first parameter, the length of the resulting string indicated by the second parameter. If the length of the original string is less than the second parameter, the original string is returned unchanged
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
SetMethod( name, code ) |
Return Type
Integer |
Returns Value
Makes an attempt to compile expression code, and if the compilation is successful, associates the compiled expression with the method name. If there is already an existing compiled expression with this name, it is overwritten. This is done only in the case where the code is different from the code of the newly compiled expression. This is to avoid having to compile the same compiled expression twice.
Upon the successful creation of methods, one (1) is returned. Otherwise, zero (0) is returned.
If parameters have types other than those needed, zero (0) is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
StringLength( expr ) |
Return Type
Integer |
Returns Value
The length of the expression expr if it is of type String. Otherwise, it returns 0.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
SubString( object, [start[, howMuch]] ) |
Arguments Types
object | String |
start | Integer |
howMuch | Integer |
Return Type
String |
Returns Value
Returns the substring of the string object starting with position start and containing howMuchcharacters.
If start is omitted, or is negative, it is assumed that start is equal to 0.
If howMuch is omitted, or is negative, howMuch is assumed to be the length of the string.
If start is omitted, or is negative, it is assumed that start is equal to 0.
If start+howMuch is bigger than the length of the string, all characters are taken from the position start until the end of the string.
If parameter types differ from those needed, an empty string is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Time( object, format ) |
Arguments Types
object | String |
format | String |
Return Type
Time |
Returns Value
Makes an attempt to convert the string contained in object using the format format, to type Time.
Format string can contain the following special symbols:
h – for hours representation.
m – for minutes representation.
s – for seconds representation.
The number of consecutive special letters indicates the maximum number of digits in the corresponding area. For example, mm indicates that the number of minutes contains two digits maximum, but can still contain fewer digits. This is done to allow leading zeroes be omitted. If any of the fields are omitted, the default value (current date) is returned.
Other symbols in the format string are not taken into consideration, but the corresponding symbol must be present in the date string too. Otherwise, the date is considered to be of incorrect format.
For example, ('14:05:33', 'hh/mm/ss') returns an error because the delimiter in the format does not match the actual one in the date, using '.' instead of '/'. If the given data is incorrect time, the object is marked as containing invalid time.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Today() |
Return Type
Date |
Returns Value
Returns the current day value of type Date.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Trim( object ) |
Arguments Types
object | String |
Return Type
String |
Returns Value
Removes the leading and trailing blank characters from the specified string object and returns the resulting object.
If parameter types differ from those needed, an empty string is returned.
Anchor | ||||
---|---|---|---|---|
|
Format
Code Block |
---|
Upper( object[, startPos[, howMuch]] ) |
Arguments Types
object | String |
startPos | Integer |
howMuch | Integer |
Return Type
String |
Returns Value
Changes the case of the symbols in string object starting with position startPos. At a maximum, howMuchcharacters change the case.
Removes the leading and trailing blank characters from the specified string object and returns the resulting object.
If parameter types differ from those needed, an empty string is returned.