Expression Functions
This section lists the built-in functions of the Expression Language.
length(str)
Returns the length of a given string.
Parameter(s):
- str:
STRING
The string that should be measured
Return type: ÌNTEGER
Examples:
length('hello world') // returns 11
length('') // returns 0
isEmpty(str)
Test if a given string value is empty, i.e., length // returns 0
Parameter(s):
- str:
STRING
The string to check if empty
Return type: BOOLEAN
Examples:
isEmpty('') // returns true
isEmpty('hello world') // returns false
isDefined(str)
Test if a given string value is non-empty, i.e., length > 0
Parameter(s):
- str:
STRING
The string to check if defined
Return type: BOOLEAN
Examples:
isDefined('') // returns false
isDefined('hello world') // returns true
currentDate()
Returns the current date in the time zone of the server machine.
Return type: DATE
Examples:
currentDate() // returns e.g., 4/8/24
userDate()
Returns the current date in the time zone of the client machine.
Return type: DATE
Examples:
userDate() // returns e.g., 4/8/24
date(year,month,day)
Constructs a date value for the given year, month and day.
Parameter(s):
- year:
INTEGER
The year of the new date - month:
INTEGER
The month of the new date - day:
INTEGER
The day of the new date
Return type: DATE
Examples:
date(1977, 8, 17) // returns 8/17/77
date(-1, -1, -1) // returns nulldate
day(date)
Returns the day of the given date.
Parameter(s):
- date:
DATE
The date from which a day is derived
Return type: INTEGER
day(date(1977, 8, 17)) // returns 17
month(date)
Returns the month of the given date.
Parameter(s):
- date:
DATE
The date from which a month is derived
Return type: INTEGER
month(date(1977, 8, 17)) // returns 8 // returns 8
year(date)
Returns the year of the given date.
Parameter(s):
- date:
DATE
The date from which a year is derived
Return type: INTEGER
year(date(1977, 8, 17)) // returns 1977
addPeriod(date,years,months,days)
Add or subtract a period from a given date.
Parameter(s):
- date:
DATE
The date to add or subtract a period to - years:
INTEGER
The number of years to add/subtract - months:
INTEGER
The number of months to add/subtract - days:
INTEGER
The number of days to add/subtract
Return type: DATE
addPeriod(date(1977, 8, 17), 1, 2, 3) // returns 10/20/78
addPeriod(date(1977, 8, 17), -1, -2, -3) // returns 6/14/76
addYears(date,years)
Add or subtract a given number of years from a given date.
Parameter(s):
- date:
DATE
The date to add or subtract a period to - years:
INTEGER
The number of years to add/subtract
Return type: DATE
addYears(date(1977, 8, 17), 1) // returns 8/17/78
addYears(date(1977, 8, 17), -1) // returns 8/17/76
addMonths(date,months)
Add or subtract a given number of months from a given date.
Parameter(s):
- date:
DATE
The date to add or subtract a period to - months:
INTEGER
The number of months to add/subtract
Return type: DATE
addMonths(date(1977, 8, 17), 1) // returns 9/17/77
addMonths(date(1977, 8, 17), -1) // returns 7/17/77
addDays(date,days)
Add or subtract a given number of days from a given date.
Parameter(s):
- date:
DATE
The date to add or subtract a period to - days:
INTEGER
The number of days to add/subtract
Return type: DATE
addDays(date(1977, 8, 17), 1) // returns 8/18/77
addDays(date(1977, 8, 17), -1) // returns 8/16/77
format(date,formatStr)
Format a given date using a given format See Kendo-Intl for format
Parameter(s):
- date:
DATE
The date to format as a string - formatStr:
STRING
The date format to apply
Return type: STRING
format(date(1977, 8, 17), 'dddd, MMMM Do yyyy') // returns 1717, August Do 1977
isEnvVarDefined(path)
Test if a given environment path exists for the current user.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: BOOLEAN
isEnvVarDefined('user.info.companynumber') // returns true
isEnvVarDefined('does.not.exist') // returns false
amountEnvVar(path)
Returns the amount value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: AMOUNT
amountEnvVar('some.amount.environment.variable') // returns 12312 (corresponds to 123.12)
booleanEnvVar(path)
Returns the boolean value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: BOOLEAN
booleanEnvVar('some.boolean.environment.variable') // returns true
dateEnvVar(path)
Returns the date value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: DATE
dateEnvVar('some.date.environment.variable') // returns 8/17/77
integerEnvVar(path)
Returns the integer value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: INTEGER
integerEnvVar('some.integer.environment.variable') // returns 123
popupEnvVar(path)
Returns the popup value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: POPUP
popupEnvVar('some.popup.environment.variable') // returns somePopupLiteral
realEnvVar(path)
Returns the real value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: REAL
realEnvVar('some.real.environment.variable') // returns 3.14
stringEnvVar(path)
Returns the string value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: STRING
stringEnvVar('some.string.environment.variable') // returns 'some string'
timeEnvVar(path)
Returns the time value stored in the current user's environment.
Parameter(s):
- path:
STRING
The path that identifies the environment value
Return type: TIME
timeEnvVar('some.time.environment.variable') // returns '12:12:12'
amountSysPar(param,companyNo?)
Returns the amount value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: AMOUNT
amountSysPar('some.amount.system.parameter', '117') // returns 12312 (corresponds to 123.12)
booleanSysPar(param,companyNo?)
Returns the boolean value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: BOOLEAN
booleanSysPar('some.boolean.system.parameter', '117') // returns true
dateSysPar(param,companyNo?)
Returns the date value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: DATE
dateSysPar('some.date.system.parameter', '117') // returns 8/17/77
integerSysPar(param,companyNo?)
Returns the integer value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: INTEGER
integerSysPar('some.integer.system.parameter', '117') // returns 117
popupSysPar(param,companyNo?)
Returns the popup value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: POPUP
popupSysPar('some.popup.system.parameter', '117') // returns somePopupLiteral
realSysPar(param,companyNo?)
Returns the real value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: REAL
realSysPar(p'some.real.system.parameter', '117') // returns 3.14
stringSysPar(param,companyNo?)
Returns the string value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: STRING
stringSysPar('some.string.system.parameter', '117') // returns 'some string'
timeSysPar(param,companyNo?)
Returns the time value stored in a given system parameter. If a company-specific value is required, a company number can be supplied as an optional second argument.
Parameter(s):
- param:
STRING
The system parameter name - companyNo:
STRING
optional
The number of the company, in case a company-specific value is required
Return type: TIME
timeSysPar('some.time.system.parameter', '117') // returns '12:12:12'
employeeNumber()
Returns the employee number of the current user.
Return type: STRING
employeeNumber() // returns '11'
employeeName()
Returns the employee name of the current user.
Return type: STRING
employeeName() // returns 'Jim Jarrett'
companyNumber()
Returns the company number of the current user.
Return type: STRING
companyNumber() // returns '123'
hasRole(...role)
Test if the current user has any of the given roles. If multiple roles are supplied as arguments then the function returns true if the user is assigned any of these roles. Roles in Maconomy refer to the contents of the user.groups.groupname
array in the end-user's environment.
Parameter(s):
- role:
STRING
(or a comma-separated list of roles)
The name(s) of the role(s) to check for.
Return type: BOOLEAN
hasRole('Change Password') // returns true
hasRole('A', 'B') // returns false
isAdministrator()
Test if the current user is an administrator.
Return type: BOOLEAN
isAdministrator() // returns true
hasAddon(addonNo)
Test if a given addon number is enabled.
Parameter(s):
- addonNo:
INTEGER
The number of the addon to check for.
Return type: BOOLEAN
hasAddon(1) // returns true
hasAddon(66) // returns true
urlInfoView()
Returns the Business Objects Info View URL.
Return type: STRING
urlInfoView() // returns '/BOE/portal/1205291547/InfoView/logon/start.do'
urlOpenReport()
Returns the Business Objects Open Report URL.
Return type: STRING
urlOpenReport() // returns '/BOE/OpenDocument/opendoc/openDocument.jsp'
localizeDbString(str)
Returns the DB localized value for a given key. This is done through a lookup in the user's environment.
Parameter(s):
- str:
STRING
The string that should be localized using the environment.
Return type: STRING
localizeDbString('BPM.CustomerInvoices') // returns 'Customer Invoices'
popupOrdinal(popup)
Returns the ordinal value of a given Maconomy popup value.
Parameter(s):
- popup:
POPUP
The popup value from which an ordinal value should be derived.
Return type: INTEGER
popupOrdinal(CompanyCountryVar) // returns 1
popupOrdinal(CountryType'\United Kingdom\) // returns 2
shortname()
Returns the shortname of the system.
Return type: STRING
shortname() // returns 'w22'
username()
Returns the username of the current user.
Return type: STRING
username() // returns 'Administrator'
userrole()
Returns the user role of the current user.
Return type: STRING
userrole() // returns 'Standard'
isLongTextEmulationEnabled()
Returns true if long text emulation is enabled.
Return type: BOOLEAN
isLongTextEmulationEnabled() // returns false
isPeoplePlannerEnabled()
Returns true if people planner integration is enabled.
Return type: BOOLEAN
isPeoplePlannerEnabled() // returns true
isActionEnabled(actionName)
Returns true if the given action name corresponds to an enabled action. It is always evaluated in context of the current record.
Parameter(s):
- actionName:
STRING
The name of an action on the pane in scope.
Return type: BOOLEAN
isActionEnabled('CloseNote') // returns true if CloseNote action on the current pane is enabled