This article describes how to use placeholders in combination with SQL to populate the grid with data. Table Grid Next Generation supports placeholders to query Jira values.Jira values can be used to initialize the grid with data, as dynamic options or as a default value in a grid column.
You can query the values from the following Jira-specific objects: issue, project, component, user and custom fields.
For example, you can populate the grid column with a default value retrieved from Jira object.
You can use Jira values to populate the grid with data in different cases:
- initialize grid with data
- set default values for gird columns
- populate select lists with dynamic options retrieved from Jira
- use custom field values in a grid: get data from a custom field which has a list of values and populate a grid with these values.
Supported values
Check the list of the supported values that you can get from Jira objects.
Basic Jira issue values
Placeholder expression | Result value | ||
---|---|---|---|
parent issue | |||
parent:id | id of the parent issue | ||
parent:key | key of the parent issue | ||
parent:summary | summary of the parent issue | ||
parent:description | description of the parent issue | ||
parent:environment | value from the environment field of the parent issue | ||
parent:estimate | original estimate of the parent issue available only if time-tracking has been enabled by your Jira administrator | ||
parent:logged | logged time spent working on the parent issue available only if time-tracking has been enabled by your Jira administrator | ||
parent:created_date | date when the parent issue has been created | ||
parent:resolution_date | resolution date of the parent issue | ||
parent:updated_date | update date of the parent issue | ||
parent:due_date | due date of the parent issue | ||
parent:votes | number of votes for the parent issue | ||
parent:watchers | number of watchers for the parent issue | ||
parent:security_level | security level id of the security of the parent issue available only if issue security has been enabled by your Jira administrator | ||
issue | |||
issue:id | id of the current issue | ||
issue:key | key of the current issue | ||
issue:summary | summary of the current issue | ||
issue:description | description of the current issue | ||
issue:environment | value from the environment field of the current issue | ||
issue:estimate | original estimate of the current issue available only if time-tracking has been enabled by your Jira administrator | ||
issue:logged | logged time spent working on the current issue available only if time-tracking has been enabled by your Jira administrator | ||
issue:created_date | date when the current issue has been created | ||
issue:resolution_date | resolution date of the current issue | ||
issue:updated_date | update date of the current issue | ||
issue:due_date | due date of the current issue | ||
issue:votes | number of votes for the current issue | ||
issue:watchers | number of watchers for the current issue | ||
issue:security_level | security level id of the current issue available only if issue security has been enabled by your Jira administrator | ||
status | |||
issue:status:id | status id of the current issue | ||
issue:status:name | status name of the current issue name is a default value issue:status is equal to issue:status:name | ||
issue:status:description | status description of the current issue | ||
issue:status:sequence | status order position | ||
status_category | |||
issue:status_category:id | id of the status category | ||
issue:status_category:name | name of the status category name is a default value issue:status_category:name is equal to issue:status_category | ||
issue:status_category:key | status category description of the current issue | ||
issue:status_category:sequence | status category order position | ||
resolution | |||
issue:resolution:id | resolution id of the current issue | ||
issue:resolution:name | resolution name of the current issue name is a default value issue:resolution:name is equal to issue:resolution | ||
issue:resolution:description | description of the resolution for the current issue | ||
issue:resolution:sequence | order position of the resolution for the current issue | ||
priority | |||
issue:priority:id | current issue priority id | ||
issue:priority:name | name of the priority for the current issue name is a default value issue:reporter:name is equal to issue:reporter | ||
issue:priority:description | description of the priority for the current issue | ||
issue:priority:sequence | order position of the priority for the current issue | ||
type | |||
issue:type:id | current issue type id | ||
issue:type:name | current issue type name name is a default value issue:type:name is equal to issue:type | ||
issue:type:description | current issue type description | ||
issue:type:sequence | order position of the type for the current issue | ||
assignee | |||
issue:assignee:id | current issue assignee id | ||
issue:assignee:key | current issue assignee key | ||
issue:assignee:name | current issue assignee name name is a default value issue:assignee:name is equal to issue:assignee | ||
issue:assignee:full_name | current issue assignee full name | ||
issue:assignee:email | current issue assignee email | ||
issue:assignee:email_domain | current issue assignee email domain | ||
reporter | |||
issue:reporter:id | current issue reporter id | ||
issue:reporter:key | current issue reporter key | ||
issue:reporter:name | current issue reporter name name is a default value issue:reporter:name is equal to issue:reporter | ||
issue:reporter:full_name | current issue reporter full name | ||
issue:reporter:email | current issue reporter email | ||
issue:reporter:email_domain | current issue reporter email domain | ||
components | |||
issue:components:id | current issue components ids separated by comma | ||
issue:components:name | current issue components names separated by comma name is a default value issue:components:name is equal to issue:components | ||
issue:components:description | current issue components descriptions separated by comma | ||
fix_versions | |||
issue:fix_versions:id | current issue fix versions ids separated by comma | ||
issue:fix_versions:name | current issue fix versions names separated by comma name is a default value issue:fix_versions:name is equal to issue:fix_versions | ||
issue:fix_versions:description | current issue fix versions descriptions separated by comma | ||
affected_versions | |||
issue:affected_versions:id | current issue affected versions ids separated by comma | ||
issue:affected_versions:name | current issue affected versions names separated by comma name is a default value issue:affected_versions:name is equal to issue:affected_versions | ||
issue:affected_versions:description | current issue affected versions description separated by comma | ||
labels | |||
issue:labels:id | current issue labels ids separated by comma | ||
issue:labels:name | current issue labels names separated by comma name is a default value issue:labels:name is equal to issue:labels | ||
attachments | |||
issue:attachments:id | current issue attachments ids separated by comma | ||
issue:attachments:name | current issue attachments names, separated by comma name is a default value issue:attachments:name is equal to issue:attachments | ||
issue:attachments:file_size | current issue attachments files sizes separated by comma |
Project level specific values
Placeholder expression | result value | ||
---|---|---|---|
project | |||
project:id | current project id | ||
project:key | current project key | ||
project:name | current project name name is a default value project:name is equal to project | ||
project:url | current project url | ||
project:description | current project description | ||
category | |||
project:category:id | current project category id | ||
project:category:name | current project category name name is a default value project:category:name is equal to project:category | ||
project:category:description | current project category description | ||
lead | |||
project:lead:id | current project lead if | ||
project:lead:key | current project lead key | ||
project:lead:name | current project lead name name is a default value project:lead:name is equal to project:lead | ||
project:lead:full_name | current project lead full name | ||
project:lead:email | current project lead email | ||
project:lead:email_domain | current project lead email domain | ||
components | |||
project:components:id | current project components ids separated by comma | ||
project:components:name | current project components ids separated by comma name is a default value project:components:name is equal to project:components | ||
project:components:description | current project components descriptions separated by comma | ||
project:components:lead_name | current project components leads' names separated by comma | ||
versions | |||
project:versions:id | current project versions ids separated by comma | ||
project:versions:name | current project versions names separated by comma name is a default value project:versions:name is equal to project:versions | ||
project:versions:description | current versions descriptions separated by comma | ||
project:versions:is_archived | boolean value (true/false) of the current project versions is archived field | ||
project:versions:is_released | boolean value (true/false) of the current project versions is released field | ||
project:versions:release_date | current project versions release dates separated by comma | ||
project:versions:start_date | current project versions start dates separated by comma |
User specific values
Placeholder expression | Result value | |
---|---|---|
current _user | current_user:id | id of the current user |
current_user:key | key of the current user | |
current_user:name | name of the current user name is a default value current_user:name is equal to current_user | |
current_user:full_name | full name of the current user | |
current_user:email | email of the current user | |
current_user:email_domain | email domain of the current user |
Custom Field values
As far as Jira provides different type of custom fields the values are divided by type. Check the table below.
custom field value type | Placeholder expression | Result value | |
---|---|---|---|
single value custom fields | |||
url | customfield:{id} | string value type | |
text | customfield:{id} | text value type | |
date picker | customfield:{id} | date value type | |
date time picker | customfield:{id} | date time value type | |
userpicker | customfield:{id} | user value of the custom field | |
number | customfield:{id} | number value of the custom field | |
select list | customfield:{id} | selected option of the custom field | |
radio buttons | customfield:{id} | selected option name of the custom field | |
multi value custom fields | |||
checkboxes | customfield:{id} | list of available options separated by comma You can also get a specific option from the custom field using the query. get third option name from the custom field with id 10509 customfield:10509:name:3 | |
labels | customfield:{id} | list of labels names separated by comma | |
groups picker | customfield:{id} | list of group names separated by comma You can also get a specific group name from the custom field using the query. get third group name from the custom field with id 10509 customfield:10509:name:3 | |
select list(cascading) |
|
| |
select list(multiple choice) | customfield:{id} | list of options separated by comma | |
versions picker |
| ||
user picker |
|
Example placeholders for custom field values
You can get custom field values with the help of the custom field id. Check the example below.
customfield:10600
You can use the placeholder as a part of the SQL query to get custom field valued.
select name,price from sandwich_menu where restaurant={customfield:10010}
Single Value types
- Date (should be treated as dates in our date column types)
- Date Picker
- Date Time Picker
- Numeric (should be treated as dates in our date column types)
- Number Field
- All other custom fields without a specific type should be handled the same way - get custom field value as a string