Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Panel
borderColorpurple
borderWidth1
titleBGColor#ddccff
borderStylesolid
titleNew Feature

This is a new feature in Joget DX.

NameDescription
Prefixexp{hash variable}
DescriptionMathematical and string operations on hash variables
AttributesSee Sample Attributes section below.
Scope of Use
  • All components within the App.
Sample Attributes

Testing Values

envVariable.num1 = 55
envVariable.num2 = 288
envVariable.double1 = 123.45
envVariable.double2 = 246.78
envVariable.bool1 = true
envVariable.bool2 = false
envVariable.str1 = Hello World!
envVariable.str2 = Using Joget Hash Variables!
envVariable.empty =
envVariable.hashVariable = #assignment.processId#

Mathematical operators

{envVariable.num1} + {envVariable.num2} = 343
{envVariable.num1} - {envVariable.num2} = -233
{envVariable.double1} * {envVariable.double2} = 30464.991
{envVariable.num2} / {envVariable.num1} = 5
{envVariable.num1} % 7 = 6
({envVariable.num1} + 2) * 2 = 114
{envVariable.num1} + 2 * 2 = 59
2 ^ 2 = 4

Logical operators

{envVariable.bool1} and {envVariable.bool2} = false
{envVariable.bool1} or {envVariable.bool2} = true
!{envVariable.bool1} = false

Relational operators

{envVariable.num1} gt {envVariable.num2} = false
{envVariable.num1} ge {envVariable.num1} = true
{envVariable.num1} lt {envVariable.num2} = true
{envVariable.num1} le {envVariable.num1} = true
{envVariable.num1} eq {envVariable.num1} = true
{envVariable.num1} ne {envVariable.num1} = false

Ternary Operator

({envVariable.num1} lt {envVariable.num2})?{envVariable.num1}:{envVariable.num2} = 55
'{envVariable.empty?javascript}'.isEmpty()?'empty':'has value' = empty

String methods (Basically most of the String methods can be used, using `?javascript` to escape single quote in value)

'{envVariable.str1?javascript}' + ' ' + '{envVariable.str2?javascript}' = Hello World! Using Joget Hash Variables
'{envVariable.str1?javascript}'.substring(5) = World!
'{envVariable.str1?javascript}'.toLowerCase() = hello world!
'{envVariable.str1?javascript}'.toUpperCase() = HELLO WORLD!
'{envVariable.str1?javascript}'.replace('world', 'there') = Hello World!
'{envVariable.str1?javascript}'.replaceFirst('[a-z]', '*') = H*llo World!
'{envVariable.str1?javascript}'.replaceAll('[a-z]', '*') = H**** W****!
'{envVariable.str1?javascript}'.charAt(0) = H
'{envVariable.str1?javascript}'.contains('World') = true
'{envVariable.str1?javascript}'.equalsIgnoreCase('{envVariable.str1?javascript}'.toLowerCase()) = true
'{envVariable.empty?javascript}'.isEmpty() = true
'{envVariable.str1?javascript}'.indexOf('World') = 6
'{envVariable.str1?javascript}'.lastIndexOf('World') = 6
'{envVariable.str1?javascript}'.startsWith('H') = true
'{envVariable.str1?javascript}'.endsWith('!') = true

Custom Methods

$isParsed('{envVariable.hashVariable}') = false

Math methods (All java.lang.Math methods can be used)

$sin(30) = -0.9880316240928618
$cos(30) = 0.15425144988758405
$tan(30) = -6.405331196646276
$asin(30) = NaN
$acos(30) = NaN
$atan(30) = 1.5374753309166493
$sinh(30) = 5.343237290762231E12
$cosh(30) = 5.343237290762231E12
$tanh(30) = 1.0
$abs(-7) = 7.0
$max(60,30) = 60.0
$min(60,30) = 30
$round(79.52) = 80
$sqrt(12) = 3.4641016151377544
$cbrt(81) = 4.326748710922225
$pow(4, 2) = 16.0
$signum(82.7) = 1.0
$ceil(82.7) = 83.0
$copySign(740.4, -29.1) = -740.4
$nextAfter(84352.24, 154.284) = 84352.234
$nextUp(744.93) = 744.93005
$nextDown(744.93) = 744.9299999999998
$floor(744.93) = 744.0
$floorDiv(25, 3) = 8
$random() = 0.3988245190916774
$rint(81.68) = 82.0
$hypot(8, 6) = 10.0
$ulp(8.1) = 9.536743E-7
$getExponent(50.45) = 5
$IEEEremainder(387.1, 4.2) = 0.7000000000000064
$addExact(469, 737) = 1206
$subtractExact(469, 737) = -268
$multiplyExact(469, 737) = 345653
$incrementExact(674) = 675
$decrementExact(674) = 673
$negateExact(674) = -674
$toIntExact(-829) = -829
$log(38.9) = 3.6609942506244004
$log10(38.9) = 1.5899496013257077
$log1p(26) = 3.295836866004329
$exp(2) = 7.38905609893065
$expm1(2) = 6.38905609893065
$toDegrees(5) = 286.4788975654116
$toRadians(180.0) = 3.141592653589793

Related Tutorials


Download Demo App

...