What is Hash Variable?
Hash Variables gives users greater flexibility and freedom in accessing useful information or relevant run-time values from the system.
A hash variable is a special hash-escaped keyword that can be used in
- Form Builder
- Datalist Builder
- Userview Builder
- Supported plugin configuration properties
- Activity name in Workflow Designer
- External Form URL when mapping an activity to an external form
to return the value of some useful runtime variables from Joget components.
Nested Hash Variable
Since version 3.0.3, a Hash Variable can be used inside another Hash Variable to form a Nested Hash Variable.
The syntax for the inner Hash Variable is wrapped by a pair of curly bracket.
#prefix.{prefix.variableKey}#
Example:-
#date.{envVariable.dateFormat}#
#user.{variable.username}.firstName#
#form.tableChild.field1[{form.tableParent.childId}]#
Escaping the Resultant Hash Variable
The parsed/returned Hash Variable may cause incompatibility with the current context/environment such as syntax error in a script. Therefore, one may pass in additional parameters into the hash variable declared to escape certain characters.
Before ending a hash variable with a hash "#", add a question mark character "?" followed by the required format. You may include multiple by defining semicolon ";" separated values.
- regex
- json
- javascript
- html
- xml
- java
- sql
- url
#envVariable.script?java#
List of Hash Variables
Workflow Assignment Hash Variable
| Name | Description |
|---|---|
| Prefix | assignment |
| Description | To get workflow activity information of the current assignment. |
| Attributes |
|
| Scope of Use |
|
Current User Hash Variable
| Name | Description |
|---|---|
| Prefix | currentUser |
| Description | To retrieve currently logged in user information. |
| Attributes |
In Joget Enterprise edition, these additional attributes are available:- Organization
Department
Grade
HOD
Group
Employment
Department HOD
|
| Scope of Use |
|
Date Hash Variable
| Name | Description |
|---|---|
| Prefix | date |
| Description | To get date time according to a specified format. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes | #date.h:mm a# // 12:08 PM#date.EEE, d MMM yyyy h:mm:ss a# // Wed, 4 Jul 2014 12:08:56 PM#date.DAY+7.EEE, d MMM yyyy h:mm:ss a# // Add 7 days on top of current date time - Wed, 11 Jul 2014 12:08:56 PM |
Environment Variable Hash Variable
| Name | Description |
|---|---|
| Prefix | envVariable |
| Description | To retrieve Environment Variable value. Learn more about Environment Variables. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes | #envVariable.smtpServer##envVariable.smtpPort# |
Form Data Hash Variable
| Name | Description |
|---|---|
| Prefix | form |
| Description | To get field value from form table. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes | #form.registration.registeredDate# //will use the current record ID#form.registration.registeredDate[0001]# //0001 is the record ID to seek for#form.registration.registeredDate[{variable.recordId}]# //using nested Hash Variable with curly bracket. |
App Message Hash Variable (Internationalization)
| Name | Description |
|---|---|
| Prefix | i18n |
| Description | To support language localization on application level. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes | #i18n.app.hello# |
Performer Hash Variable
| Name | Description |
|---|---|
| Prefix | performer |
| Description | To get user information of the performer of an activity. |
| Attributes |
|
| Scope of Use |
To get activityDefId (activity definition ID), mouseover the activity name in the Activity Mapping tab (Workflow Management Console); there will be an overlay showing the ID. The activity chosen must had already been performed. |
| Sample Attributes |
|
Request Parameter Hash Variable
| Name | Description |
|---|---|
| Prefix | requestParam |
| Description | To access request parameter' values. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes |
|
User Hash Variable
| Name | Description |
|---|---|
| Prefix | user |
| Description | To get user information based on username. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes |
|
Userview Key Hash Variable
| Name | Description |
|---|---|
| Prefix | userviewKey |
| Description | Userview Key Hash Variable is used solely for the purpose of accessing the current Userview key's value. Typical use case for this hash variable are:-
|
| Attributes |
|
| Scope of Use |
Workflow Variable Hash Variable
| Name | Description |
|---|---|
| Prefix | variable |
| Description | To get the value of a workflow variable in a Process Flow. |
| Attributes |
|
| Scope of Use |
|
| Sample Attributes | #variable.approvalStatus# |