When to use variables

Variables are used when you need to share information between generated data from the session, data specified in form fields, and data presented in customized message dialogs.


How to use variables

All variables can be referenced in forms and in customized message dialogs like external start confirmation message

When you want to refer to a variable, use $-sign before and after the variable.

Example: $instance.name$ 


Form variables

To refer to a form field with a variable you just type $dataID.formfield$.


Example: You can set a value from a formfield in another formfield by using the attribute "value" in the field you want to populate.   


Instance variables


To access the variable return value for a specific data object, put the data object id and a dot as a prefix to the variable.

Example: $dataobjectID.fieldName$


Instance VariablesDescriptionType
instance.id

Returns the unique instance IDString
instance.nameReturns the instance nameString
instance.descriptionReturns the instance descriptionString
instance.links.showReturns the instance URL linkString
instance.numberReturns the instance numberNumber
instance.createdReturns the date and time when the instance was createdDate/Time
instance.createddateReturns the date the instance was createdDate
instance.deadlineReturns the deadline date of the instanceDate
instance.deadlinetimeReturns the deadline time of the instanceTime
instance.completedReturns the date and time of when the instance was completedDate/Time
instance.completeddateReturns the date the instance was completedDate
instance.initiator.idReturns Id (security id) of the initiator user for the main instanceString
instance.initiator.nameReturns the name of the initiator user for the main instance (or the name of the application if external start is initiated)String
instance.initiator.emailReturns the email of the initiator user for the main instanceString
instance.initiator.usernameReturns the username of the initiator user for the main instanceString
instance.initiator.titleReturns the title of the initiator user for the main instanceString
instance.initiator.departmentReturns the department of the initiator user for the main instanceString
instance.initiator.countryReturns the country of the initiator user for the main instanceString
instance.initiator.telephoneReturns the telephone of the initiator user for the main instanceString
instance.initiator.originkeyReturns the Origin Key for the user if the user has been automatically replicated into Process AutomationString
instance.processversion
Returns the process version of the instance
String
instance.roles[roleName].assigned.nameReturns the name of all the assigned participant of a specific role in an instanceString, comma separated
instance.roles[roleName].assigned.emailReturns the email of all the assigned participant of a specific role in an instance String, comma separated
instance.roles[roleName].assigned.idReturns the id (security id) of all the assigned participant of a specific role in an instanceString, comma separated
instance.roles[roleName].anyaccess.nameReturns the name of all participants of a specific role that has access to [roleName].String, comma separated
instance.roles[roleName].anyaccess.emailReturns the email of all participants of a specific role that has access to [roleName].String, comma separated
instance.roles[roleName].anyaccess.idReturns the id (security id) of all participants of a specific role that has access to [roleName].String, comma separated
instance.roles[roleName].last.performer.nameReturns the name of the last performer for the specific roleString
instance.roles[roleName].last.performer.emailReturns the email of the last performer for the specific roleString
instance.roles[roleName].last.performer.titleReturns the title of the last performer for the specific roleString
instance.roles[roleName].last.performer.departmentReturns the department of the last performer for the specific roleString
instance.roles[roleName].last.performer.countryReturns the country of the last performer for the specific roleString
instance.roles[roleName].last.performer.telephoneReturns the telephone of the last performer for the specific roleString
instance.roles[roleName].last.performer.idReturns the id (security id) of the last performer for the specific roleString
instance.roles[roleName].next.performers.*Returns the name or email or title or other (see above variables) of who will be assigned to the specified role. Replace the * with name, email or other.String
instance.roles[roleName].hastask.*Returns the name or email or title or other (see above variables) of who has active tasks in the specified role. Replace the * with name, email or other.String


Application and Space variables


Application and Space 
application.idReturns the application IDString
application.nameReturns the application nameString
application.descriptionReturns the application descriptionString
space.idReturns the space IDString
space.nameReturns the space nameString
space.descriptionReturns the space descriptionString



Site variables 


Site Variables

site.nowReturns current UTC date and time in format: "yyyy-MM-dd HH:mm:ss" Example: 2017-01-03 09:41:20String
site.nowdateReturns current UTC date in format "yyyy-MM-dd" Example: 2017-01-03String



<DataID>.<FieldName>Returns the field name of the specified dataIDString


Task variables

Task variables are mainly used on tasks, for example when you send a notification mail. 


Task Variables

task.idReturns the task IDString
task.nameReturns the task nameString
task.descriptionReturns the task descriptionString
task.links.showReturns the link to the taskURL link
tasks[ID].links.showReturns the link to a task with a specific ID.URL link
tasks.deadlineReturns the date of the deadline in UTC-timeString
task.performer.idReturns id (security id) of the performerString



Note: You can use tasks[ID].links.show when you want to send the URL address to the task via mail from a different part of the process. The task must have been created before the mail is sent out.



Global variables

Global variables works a bit differently from the rest of the variables.  They are used to post information about the logged-in user in forms, when the form is created. 


How it works

The global variable collects information from a user who is logged in, opens the form for the first time, and posts that information in the form.


Note: Global variables will not work on forms used by external users.  



How to set up Global variables

To use a global variable, you need to have form field with a default value were you enter the variable. 



Note: Global variables are not called by $ but instead by = in front of the string.
Example: =global.sessionData.account.fullName


Global Variables

global.sessionData.account.nameReturns the name of the logged-in userString
global.sessionData.account.userNameReturns the username of the logged-in user String
global.sessionData.account.firstNameReturns the first name of the logged-in userString
global.sessionData.account.lastNameReturns the last name of the logged-in userString
global.sessionData.account.fullNameReturns the first and last name of the logged-in userString
global.sessionData.account.emailReturns the email address of the logged-in userString
global.sessionData.account.departmentReturns the department of the logged-in user. String
global.sessionData.account.telephoneReturns the telephone number of the logged-in user.String
global.sessionData.account.titleReturns the title of the logged-in user.String
global.sessionData.account.countryReturns the country of the logged-in user.String


Claims variables

Claims variables can only be used if a contract is using SAML. 

When a user logs on to Process Automation the IdP (Identity Provider) can also send specific data about the user that can be populated by variables. 

The values in claims are customer-specific and can vary depending on what the IdP sends to Process Automation. 


Claims Variables

$user.claims.UserId$Returns the Identityproviders UserId.String
$user.claims.Firstname$Returns the first name of the user.String
$user.claims.Lastname$Returns the last name of the user.String
$user.claims.Email$Returns the email address of the userString
$user.claims.*$Replace the * with a custom value that can populate form field with.