Issue type specific checklist
You want to track if all tasks to resolve an issue has been done, and who has been tackling it.
The list of checkitems depend on the issue type. Ie. When resolving an improvement, the set of tasks is different from when a bug needs to be resolved.
Setting up a driving table
The driving table contains the list of checkitems which will populate the grid.
An attribute 'forType' allows to distinguis between checkitems for an improvement and checkitems for a bug.
Access the driving table administration, and add a new driving table
Configure the driving table
The configuration of the driving table grid is as follows - check out the 'forType' column which is a dropdown box with all
possible issuetypes
#######################################################################
# Checkitems is a driving table which lists all tasks to be completed
# before a product issue can be considered as completed
#######################################################################
#
# Grid definition
#
gd.columns = isummary, fortype
gd.ds = jira
gd.tablename = checkitems
#
# Summary
#
col.isummary = Summary
col.isummary.type = string
col.isummary.width = 200
#
# forTYpe
# The for type column is a list of all the issuetypes contained in this jira
#
col.fortype = For Type
col.fortype.type = list
col.fortype.query = select pname, id from issuetype order by pname
col.fortype.query.ds = jira
col.fortype.width = 100
Edit the content of the driving table
Setup a grid custom field
Access the custom field administration and a new custom field of type 'Table Grid'
########################################################################
# The issue type specific checklist allows to track what needs to be
# completed before an issue can be considered as resolved
########################################################################
gd.columns = isummary, responsible, status, updateDate, updateUser
gd.tablename = issueCheckList
gd.ds = jira
gd.visiblerows = auto
#
# Use gd.tracking to maintain who updated a row when
#
gd.tracking = true
#
# Initialize the data with checklist items from the driving table
# depending on the issue type.
# Only summary gets initialized, all other attributes are empty (null)
gd.query = select isummary from jira.checkitems_d1 where forType_name = {issue:type}
gd.query.ds = jira
#
# Summary
#
col.isummary = Summary
col.isummary.type = String
col.isummary.width = 400
#
# The responsible is a drop down list with users from the internal directory
#
col.responsible = Responsible
col.responsible.type = List
col.responsible.query = select display_name from cwd_user where directory_id=1
col.responsible.query.ds = jira
#
# The status is a dropdown, statically initialized
#
col.status = Status
col.status.type = List
col.status.list.size = 2
col.status.name1 = Open
col.status.value1 = O
col.status.name2 = Closed
col.status.value2 = C
col.status.defaultValue = O
#
# Updated date and user are readonly fields mapped to the tracking fields
#
col.updateDate = Updated on
col.updateDate.name = DT_UPD
col.updateUser = Updated by
col.updateUser.name = JIRA_USER_UPD
Results