Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

The Tissue Gadget use the issues from the primary set of issues to join up with linked issues from the secondary set of issues.
It will display blank values when there is no linked issues. This is similar to a Left Join in database terminology.

In some cases, the users may only want to display rows which have matching linked issues.
The Inner Join will skip those issues in the primary set of issues which does not have linked issues

SQL Join.png

Example

Primary Set of Issues (Epics)

Key

Epic Name

Linked Issue

TIS-100

TIS bug fix

CS-18

TIS-99

TIS feature improvement

CS-10

TIS-98

TIS UI improvement

CS-15

TIS-20

TIS performance fix

Secondary Set of Issues (Feature request to be linked to epics)

Key

Summary

Status

CS-18

TypeError when the issue data does not contain issuelinks field

Pending Dev

CS-15

To allow multiple link types for each level

Pending Dev

CS-10

To unescape the title which contains special characters

Pending Dev

How the different join looks like

Left Join (Default)

Key

Summary

Linked Issue

Status

TIS-100

TIS bug fix

CS-18

Pending Dev

TIS-99

TIS feature improvement

CS-10

Pending Dev

TIS-98

TIS UI improvement

CS-15

Pending Dev

TIS-20

TIS performance fix

Not using Enhanced Search.pngImage Added

Inner Join

Key

Summary

Linked Issue

Status

TIS-100

TIS bug fix

CS-18

Pending Dev

TIS-99

TIS feature improvement

CS-10

Pending Dev

TIS-98

TIS UI improvement

CS-15

Pending Dev

Gadget View

Left Join

Inner Join

Not using Enhanced Search.pngImage RemovedUsing Enhanced Search.pngImage Removed
Steps

The row containing TIS-20 is omitted because no issues are linked to it

Using Enhanced Search.pngImage Added

How to achieve Inner Join

It The trick is possible to use use the LinkedIssuesOf JQL function (from ScriptRunner Enhanced Search) on the primary set of issues.
It is possible to apply filtering to exclude issues with no matching linked issues.

There are 2 parts

1. Create a JQL filter for the primary set of issues

  1. Head to ScriptRunner Enhanced Search from the Apps menu

    ScriptRunner Enhanced Search.pngImage RemovedScriptRunner Enhanced Search.pngImage Added

  2. Enter your Specify the JQL to fetch the linked issues as the parameter for the linkedIssuesOf function

    1. E.g. Fetching linked issues are has with the status Awaiting Dev and Link Issue Type = is related to

      Code Block
      issueFunction in linkedIssuesOf(status in ("Awaiting Dev"), "is related to")
  3. Check that the issues displayed are what you expectIt should display only those issues that have links. You may also add more conditions to do filtering on the primary set of issues.

    JQL Search Results.png

  4. Click Save as Filter button to save the JQL as a filter to use it in TISSUE

    JQL Search.png

  5. Update the filter options as required

    Save Filter Options.pngImage Removed

    Save Filter Options.pngImage Added

Tip

You can choose another meaningful name for your Filter.

2. Use the Filter in Tissue Gadget

  1. Use the created filter in TISSUE by using the JQL command below

Code Block
filter = <"YourCreatedFilterName">

Adding JQL to TISSUE.pngImage Removed

You will be able to see the linked issues in your TISSUE gadget without empty values.Adding JQL to TISSUE.pngImage Added

  1. Now, the Tissue gadget will only display issues with linked issues

    Using Enhanced Search.pngImage Added

Reference