Internal Parameters
Internal parameters are set automatically at process runtime and when opening a web interface.
The prefix
P_
is used by the engine, its use is strictly reserved for internal variables.
Global Variables
The following are accessible from all the resources:
${P_urls.xxx}: this parameter holds the platform URLs; xxx can take values:
- domain (
${P_urls.domain}
) : the domain name e.g.runmyprocess.com
- host (
${P_urls.host}
) : the url of the live host server e.g.live.runmyprocess.com
- live (
${P_urls.live}
) : the live url including the https protocol prefix e.g.https://live.runmyprocess.com
- portal (
${P_urls.portal}
): the URL of the RunMyProcess login page e.g.https://portal.runmyprocess.com
${P_customer}: the customer identifier.
${P_mode}: the current execution mode - LIVE
, ACCEPTANCE
or TEST
.
${P_version}: the current project version.
Process Runtime Variables
Persisted Variables
The following are available in the internal parameters of the request, they can be used during request execution.
${P_user.xxx}: this parameter relates to the person in the current organization who has recently modified the process status (i.e. he has launched a process or has performed a manual task). xxx can take values:
- login (
${P_user.login}
) - name (
${P_user.name}
) - id (
${P_user.id}
) - delegators (
${P_user.delegators}
) : list of the delegators when P_user is the representative. This value is set each time a representative update a manual task.
${P_user.extended.xxx}
allows you to access the user's metadata e.g. ${P_user.preferences.xxx}
allows you to access the user's preferences.
${P_initiator}: this parameter takes the same structure as P_user
. The initiator is the user in the current organization who started the process.
${P_result}: the result of the current executed task; the value of this parameter is modified each time a new task is executed.
${P_branch_xxx}: when a process includes a parallel path, all variables of path xxx are grouped under that variable name (where xxx is the identifier of the branch's first step).
${P_index}: in the case of a task including a loop, this is the current iteration index.
${P_message}: the error message when a task has failed.
${P_request}: the unique identifier of the current process request.
${P_status}: the execution status of the last action. It has the following structure: {"name":"OK","desc":"The request has succeeded","code":200}
${P_task}: the unique identifier of the current process task ${P_task.id}
. The value of this parameter is modified each time a new task is executed.
${P_task_url}: the unique url of the manual task form to validate or cancel a given process.
Web Service Variables
The following persisted variables are only accessible following a call to a web service i.e. after using a Connector whose Provider is using the HTTP or HTTPS protocol.
${P_cookie}: the value of the cookie set by the provider in the HTTP header.
${P_header}: this is a structure variable which contains the different parameters of a HTTP request header (e.g. P_header.cookie
is equivalent to P_cookie
).
Non-Persistent Request Variables
The following variables are NOT persisted in the internal parameters of the request, but you can use them during the request execution.
${P_branch}: structure which contains all the variable of the current branch (the branch where the code is executed).
${P_current_request}: the id of the current request (could be different to P_request
in the case of a nested sub process)
Web Interface Variables
${P_connected_user.xxx}: this parameter relates to the user who is currently connected to a web form (application form or manual task form). xxx can take values:
- login (
${P_connected_user.login}
) - name (
${P_connected_user.name}
) - id (
${P_connected_user.id}
)
${P_connected_user.extended.xxx}
allows you to access the user's metadata e.g. ${P_connected_user.extended.company}
.
${context}: the responsive context from which the web interface is accessed. The context can take the following values :
web
from a desktop browser (default value)mobile
from a mobile browser or from RunMyApp on a mobiletablet
from a tablet browser or from RunMyApp on a tablet
${P_language}: the language of the current web interface. The following rules are used to determine the language:
- If no dictionary has been defined, the language is the design language (en, fr, es, jp). The design language is based on the designer's IDE language.
- If a dictionary exists then:
- The preferred language of the connected user if a dictionary exists for that language
- The language chosen by the end user from the dropdown list that appears on each web interface that has a dictionary
- By passing
P_language=language_code
as a parameter of the url
${entityId}: the unique id of the Web interface instance. Once saved or process started, it becomes part of the Web interface instance url /live/{P_customer}/appli/{appli_id}/state/{state_id}?instance={entityId}
Please give details of the problem