SUB TASK MANAGER for Jira Server

Sub Tasks, Linked issue, and Epic Issues are a common method for breaking up the work involved in a JIRA Issue.  The Sub Task Manager makes the creation of these Sub Tasks, Linked Issues or Epic Issues a lot easier. 

 

Templates can either be created for a specific project or globally (for all projects or workflow post functions).  These can then be used in to create multiple Sub Tasks / Linked Issues / Epic Issues by simply selecting a pre-defined template (you can optionally changing a few values if you wish).

 

You can also create sub tasks automatically as part of the workflow by adding in one of the Sub Task Managers post function and selecting the global template you want to use (see below for more details).

 

Important: The fields that are displayed and the fields that can be copied from the parent are dependent on having been set up for the Create Issue screen in the project (Project Administration -> Screens -> Create Issue).  If, for example, the due date is not in the Create Issues screen then it will not appear as an entry field, as a show field checkbox or as a copy from parent checkbox.

 

Warning: Creating issues during workflow post functions is incredibly powerful.  You need to be careful that you don't set up loops.

 

New Features:

  1. Initial Release

Sections:

 

 

Defining Templates for Sub Tasks/Linked Issues/Epic Issues

For this section whenever Sub Tasks is mentioned the same will also apply for Epic or Linked Issues.  

 

Templates for Sub Task are defined either globally for an individual project.

 

Project Templates

Templates for Sub Tasks are defined for each Project.  The Sub Task Templates screen is available as a Project tab and can be accessed by Project Admins only or those users defined in the Project Template Access group list in the configuration screen.  You can get to the page by going to the general Project pages, Add-ons and then STM Templates

 

The image below shows the page where templates can be added and edited

Once a template has been defined it can be edited (pencil icon), duplicated (copy icon) or deleted (trash can icon).

 

New templates can be added by clicking on the Add button (the plus icon in the top right-hand corner) and this will open the dialog below.

Each template has a name that will help identify the Sub Tasks that belong with it, a list of fields to show (Show Fields) and a list of fields to copy from the parent.  

 

Feature Level

 

At the top right of the dialog is the Feature Level Selector.  This has three options: Lite, Basic, Advanced and Advanced Static.  Lite has a list of pre-selected fields (that can't be changed), minimum Copy from Parent fields and no Repeating Template options.  Basic feature level gives you the features shown above. 

The Advanced feature level has the basic feature plus for every template line (which defines an issue) there is also a "Show Fields" selection.  This allows you to show or hide fields on a per line basis. These options are only visible if you hover over the line with the mouse.  Advanced Static feature level has the same feature as Advanced but the extra Show Fields options are always displayed, not just when you hover over it

Show Fields

These checkboxes (not available for the Lite feature level) define which fields should be shown below in the Sub Task list (the area under the Show Fields line and above the text "NOTE: Fields....).  You can have as many or as few fields as you like.  There is a More select box that allows you to show the Components, Custom Field (five different instances), Label and Original Estimate.

 

Sub Task List

The Sub Task list is a list of all Sub Tasks that would be created for a template.  The example above has three but you are free to define any number you like as long as you have at least one.  Occurrences or question marks in a circle are help for the field to the left of the question mark.  Hovering over this will give you helpful information about the field.

 

The following fields are available in the Sub Task list:

  • Summary: the summary of the Issue.  You can refer to parent fields here by using one of: ${Summary}, ${Description}, ${Type}, ${Assignee}, ${Reporter}, ${Priority} or to a custom field, i.e. ${My Custom Field Name}.  If no value is present then the word null show unless an ! is placed after the $ symbol (i.e. $!{Description} will show the description if it is present otherwise it will show nothing). Field references are case sensitive.  If this is a Repeating Template (see below) then you can refer to the repeated field value by using ${RepeatItem}

  • Assignee: The user that the issue will be assigned to.  You can also refer to the parent issues reporter or assignee by entering ${Reporter} or ${Assignee} respectively.

  • Components: The component(s) that the issue should have.

  • Description: a description of the Issue.  You can also refer to the same fields as defined for the Summary (i.e. ${Reporter})

  • Due Date: either the word today (for day the Sub Task is created), a date (in the format YYYY-MM-DD) or the number of days, weeks and months from the day the Sub Task is created (i.e. 1m 2w 3d for one month, two weeks and three days, 2d for two days ...)

  • Original Estimate: the number of minutes, hours, days and weeks (i.e. 3d 4h, 1w 10m ....)

  • Fix Versions: The fix versions for this issue.

  • Issue Type: Defined the issue type for this issue 

  • Labels: Any labels you wish to add

  • Priority: one of the pre-defined priorities for an Issue

  • Reporter: Start typing the user's name and a selection of matching names will appear.  You can also refer to the parent issues reporter or assignee by entering ${Reporter} or ${Assignee} respectively.
  • Custom Field: you can specify any custom field (up to five total) of type single line text, multi-line text, number, and single select item. The value for that selected field can be specified.

  • Project Key: The key of the project this issue belongs to (can't be used for sub tasks).

 

When you first create a template and add a Sub Task you only have the Summary showing.  Clicking on the "Show Fields" checkboxes will show that field for all current Sub Tasks and Sub Tasks added in the future.  You can also (in advanced mode) add fields for a particular Sub Task by hovering over the Sub Task row and clicking on one or more of checkboxes that show.  For the second Sub Task, in the example, you can see that Original Estimate is showing but not for the second Sub Task.

 

The fields that are showing don't necessarily have to have values in them. In the example above the second row description and assignee fields are visible but empty.  This allows the user, using the template to create Sub Tasks, to easily enter the reporter with minimum fuss.

 

Copy From Parent

 

These checkboxes signify that the values (for the fields they represent) should be copied from the parent Issue to the Sub Task issues.  For the example above just the Description fields will be copied from the parent Issue to all of the Sub Tasks.  There can also be a list of custom fields (these also have to be in the Create Issue screen) that can be copied from the parent Issue (The example above shows one custom fields, named Business Unit). The only time these fields will NOT be copied is if the field's value is set for the Sub Task in the Sub Task list.

Repeating Template

 

This section allows you to repeat the template creation based on the selected field (Components or Fix Versions).  So if your template has two rows (two issues to create) and you specify that you want it repeated for Components then two issues will be created for each component that the issue has (i.e. if the template has three issues and there are two components then a total of six issues will be created).

If "Set Repeating fields value in Issue" is checked then the current field value being iterated over will be set in the issue created (i.e. if the template has one issue definition, a repeating field of Fix Versions (V1 and V2) and the parent issue has two fix versions then two issues will be created where the first issue has a Fix version of V1 and the second of V2).

NOTE: The fields that are displayed and the fields that can be copied from the parent are dependant on having been set up for the Create Issue screen in the project (Project Administration -> Screens -> Create Issue).  If, for example, the due date is not in the Create Issues screen then it will not appear as an entry field, as a show field checkbox or as a copy from parent checkbox.

 

 

Global Templates

 

Global templates are templates that can be used in any project (as long as they are specified as visible in projects) and when creating sub tasks, linked issues or Epic issues as part of a workflow transition.  The global template page can be navigated to through the menu at the topmost Jira menu (click on the Jira symbol in the top left of the screen) and clicking on the STM Global Templates option.

 

Clicking on the Global Sub Task Template screen will navigate you to the following screen.

Adding a new Template will open the dialog shown below.  This is almost identical to the project template dialog except for the "Show in Issues for Bulk Create Sub Tasks / Epic Issues" checkbox.  If this is checked then the template will be shown when creating bulk sub tasks or Epic issues.  Either way, global templates are always available for creating sub tasks as part of a workflow transition (see below).

Apart from the addition of the checkbox, all functionality is identical except that select dialogs such as issue types, priorities, etc will show every possible value.  This is because global templates are not associated with a particular project and hence cannot show a subset of these lists.

 

Because these lists show all possible selections the template being created as part of a workflow transition may cause an error.  More about this is described in the Workflow section.

stms-templates-proj.gif
stms-templates-global.gif
stms-template-proj-create.gif
stms-template-global-create.gif
 

Creating/Deleting Bulk Sub Tasks/Linked Issues/Epic Issues

To create Sub Tasks, create Linked Issues, create Epic Issues, create unconnected issues, delete Sub Tasks, delete linked issues or delete Epic issues go to the Issue that will be the parent, click the More dropdown button and select the appropriate menu item.  Epic Issue creation and deletion are only available if you are running the "JIRA-Software" version of JIRA.

The following dialog will be displayed.  The difference between the Sub Task, Linked Issue, and Epic Issue dialogs is the create button and the Issue Types that can be selected.

This dialog is very similar to the one for creating Sub Task or Epic Issue templates.  The main difference is instead of a template at the top you select list of all templates for this Project and an Issue Type select to specify the Issue Type of the new Sub Tasks / Epic Issue.

 

There are two ways of using this dialog: creating Issues from a template or creating Issues from scratch.

 

Create bulk Issues from a template

To create bulk Issues from a template the user selects a template from the Template To Create drop down.  The drop down has a list of all templates the belong to a Project.  Once a template is selected then all of the Show Fields, Sub Task list and Copy From Parent fields are displayed for the Template.

 

The minimum a user has to do is select an Issue Type and press Create Sub Tasks / Epic Issues.  Optionally the user can also customize the fields used, enter or change the value and even add new Sub Tasks / Epic Issues if they wish.  Once all changes are made then the Create button can be pressed.  Any changes performed in this screen are NOT updated to the template.

 

Create bulk Issues manually

To create bulk Sub Tasks / Epic Issues manually select "Don't use Template" from the Template To Create drop down.  This will clear all the Show Fields, Sub Tasks list and Copy From Parent.  The user can add details the same as they could do from the Template screen.  Once they have finished they just hit the Create button.

 

Repeating Templates

If you select "Repeat this Template" then you will be able to select which fields contents you will be able to iterate over, Components of Fix Versions.  

Once the field has been selected you can specify if the repeating field values are set individually on the new issues.  Under this is the list of components/fix versions (from the current issue) that will be iterated over (all checked by default). 

So for the above example if there is one issue defined in the template and all three components checked then three issues will be created, one with a component of Backend, another with Front End and the final one with Proxy Server. 

Delete Bulk Sub Tasks

To delete bulk Sub Tasks select the "Delete Bulk Sub Tasks" menu item.  That will display the following dialog.  Check the boxes of the Sub Tasks you want to delete and press "Delete Sub Tasks".  You can also click on the circle containing three dots to display more information about the Sub Task.

Delete Linked Issues

To delete bulk linked issues select the "Delete Linked Issues" menu item.  That will display a dialog similar to the one shown in "Delete Bulk Sub Tasks".  Check the boxes of the issues you want to delete and press "Delete Linked Issues".  You can also click on the circle containing three dots to display more information about the issue.

Delete Epic Issues

To delete bulk Epic issues select the "Delete Epic Issues" menu item.  That will display a dialog similar to the one shown in "Delete Bulk Sub Tasks".  Check the boxes of the issues you want to delete and press "Delete Epic Issues".  You can also click on the circle containing three dots to display more information about the issue.

stms-deleteSubTasks.gif
stms-template-issue-create.gif
 

Project Executors - Automatic template creation

To automatically create bulk Sub Tasks, create Linked Issues or create Epic Issues you need to create an Executor.  The Executor screen is available as a Project tab (go to the project -> Add-ons -> STM Executors) The image below show the screen where executors can be added and edited.

Executor (when enabled) will create issues automatically, based on the specified template and criteria.  If you don't want a template to run then edit the Executor and uncheck the Enabled checkbox.

Once an Executor has been defined it can be edited (pencil icon), duplicated (copy icon) or deleted (trash can icon).

New Executors can be added by clicking on the add button (plus icon, top right-hand corner) and this will open the dialog below.

At the top of the dialog is the name of the Executor.  This should descriptive enough to understand what it does.  Under this is the enabled checkbox which allows you to start/stop an Executor from running.

In the Transition Details section allows you to specify if the Executor will be executed when an Issue is created or transitioned.  If you select "On Transition" then you need to specify which transition you are interested in.  You must select a To Status and optionally a From Status.  The list of statuses you can select from are the statuses from all projects (Atlassian don't give us the ability to differentiate which one belong to which projects).

For the above example, the Executor will only work when you are transitioning from the To Do status to the In Progress status.  If you left the "From Status" blank then a transition from any status to In Progress would executor this Executioner.

The Creation details allow you to specify which type of issues you want to create (Sub Tasks, Epic, Linked or Unconnected), the template you want to use to create issues and the default issue type.  The default issue type is used as the issue type for the new issues only when they are not specified in the template.

The conditions allow you to optionally specify conditions that will allow this Executor to run.  With the Lite version of Sub Task Manager you can only specify the Issue Type(s) and who the current user is.

stms-executors-proj.gif
stms-executor-proj.gif
 

Global Executors - Automatic template creation

Global Executors are very similar to Project Executors.  The only difference is that you have to enter one or more projects that the executor will apply to.  See Project Executors, above, for the general usage of an Executor. 

 

The screenshot below shows what a Global Executor looks like.  Note the "For Projects" field below "Enabled" that allows for the entry of the projects that the executor will run for.

 

Automatic issue creation - In Action

When an Issue completes a transition that creates sub task(s) / linked issue(s) / Epic issue(s) through either an Executor or a workflow post function a message box is displayed to inform the user that processing is occurring in the background.  Sub Task Manager will keep checking in the background to see if the sub task(s) / linked issue(s) / Epic Issue(s) have been created.  When they are created then the Issue is refreshed to display them and a message is displayed to show that they have been created.  Below are examples of the pending and created messages

If an error occurs during the creation process then an alert dialog will be displayed telling the user what happened.

As well as being displayed in the popup dialog all Sub Task Manager workflow errors are also available in a project administration (see below).

 

Permissions Error: If you get errors saying that the user does not have permission to view or edit an Epic then you will need to give edit and viewing permission of the app's user (addon_com.redmoon.subtaskmanager.jira).

Errors

Any errors that occur during the creation of sub tasks or Epic Issues in a workflow transition can be viewed under the "Sub Task Manager Errors" tab in a project administration screen.  Details are kept for up to two weeks after the error occurs (at which time they are deleted).

Audit

The Audit page keeps a record of all interactions with Executors.  This includes when an Executor is not run because the conditions are not met, when an error occurs during the creation of issues, when issue are created correctly ...  This page gives you an understanding of what is happening with Executors.

stms-audit.gif
stms-error.gif
 

Configuration

Change Log

 

The change log page allows you to audit changes that have been done to templates in the last three months.  The example below shows seven templates of which two have audit data.  The audit data also includes deleted templates.

Note: Audit data is only collected from the date this release was installed.

Create Template Access

The configuration screen allows you to define access to the global and project template screens.  

 

For the global template screen, system admins always have access.  For the project template screens, project admins always have access.  Use one of the two fields (shown below) to specify which additional users will also have access by entering one or more user groups.  All users in those groups will then have access.

Language Support

 

NOTE: Translations apply to all text EXCEPT the menu text, tab text, and panel heading text.

The Langauge Support section allows you to choose a language to use or modify one of the base languages to customize it to your company/country.

This plugin comes with two languages pre-installed.  Users can either use one of these or create their own translation.  The language screen "Language Support" is under the admin menus on the "Add-ons" tab.  The screenshot below shows the addition of a new Custom language (English - Redmoon).

To change the language selection just click on one of the radio buttons in the Use column.  The Auto option will choose based on the locale in JIRA and the user's profile, Deutsche will use the German translations and English will use the English translations.  Once you have selected a new language to use the effects happen immediately to all users.

​​

If you require something different than German or English then you can create your own translation.  To do this click on the New Language button and the following dialog will appear.

Enter a name and select a base language (Deutsche or English).  Because you do not need to translate all text the base language is used when the translated text is missing.  It also will have any new text that is added when changes are made to the plugin.  After you click Add the new language will be listed under the Custom heading (like "English - Redmoon" is shown in the Language Support screen above).

​​

After a language is created then you can start making changes.  Before any changes are made all text shown is based on the language specified in the "Based On" field.  Click on the pencil icon (to the right of the custom language) to edit the translations.  The dialog below is displayed.

For each piece of text, there is the "New Text" field (where you can enter new values to display) and "Current Text" (which is the old value that is used when the "New Text" is not present).  Once you have translated all the text you want just click Save to update the language.

Redmoon Software

Site Designed: