eazyBI


Creating Reports in eazyBI Using the Program and Program Increment Custom Fields

The Program and Program Increment custom fields are not natively detected by eazyBI, as we do not expose the names of your Program or Program Increments via the REST API - we only expose the custom field IDs. 

In order for eazyBI to detect the Program and Program Increment custom fields for each of your Programs or Program Increments, we need to map their IDs by following these steps:

  1. Identifying the Program and Program Increment Custom Field IDs created by Easy Agile Programs 
  2. Giving eazyBI the Program and Program Increment Custom Field IDs
  3. Identifying your Program and Program Increment IDs 
  4. Mapping the IDs of your specific Program and Program Increments with their names in eazyBI




1. Identifying the Program and Program Increment Custom Field IDs 

1. Navigate to the Administration cog and click Issues 


2. Select Custom Fields from the menu on the left hand side. Locate the Program and Program Increment custom fields from the list

a) Click the cog and hover over the the Configure option in the dropdown
b) Observe the URL at the bottom left of the browser window. For example, the Program custom field ID below is 10304. 


3. Repeat Step 2 for the Program Increment 



2. Giving eazyBI the Program and Program Increment Custom Field IDs


1. Navigate to the Settings Cog in the eazyBI Global Navigation Bar and select Settings


2. Select Advanced Settings and copy and paste the following snippet  - replace the custom field IDs in the example below with your own as discovered in the above steps and click Update advanced settings 

#Program from Easy Agile Programs
[jira.customfield_10304]
#name = "Program"
data_type = "string"
dimension = true

#Program Increment from Easy Agile Programs
[jira.customfield_10303]
#name = "Program Increment (PI)"
data_type = "string"
dimension = true


3. Navigate to Source Data in the eazyBI Global Navigation bar and under the Actions heading select Edit > this will take you to the Jira import options screen 

4. Select the Custom fields tab. You should now see the Program and Program Increment custom fields in the list. Select Import as dimension and import as property for both and click Import




3. Identifying your Program and Program Increment IDs


Let's take the following Program as an example: we have 1 Program called Commercial Space Travel that we would like to pull reports for in eazyBI



The Commercial Space Travel Program is made up of 2 Program Increments: Q4: Get ready to launch and Q1: Launch 

In order to find the ID of the Program named Commercial Space Travel:


1. Click on the name of the Program which will take you to the Program Roadmap. The Program ID will appear at the end of the URL i.e. the ID for the Commercial Space Travel Program is 100


In order to find the ID of the Program Increment's Q4: Get Ready to Launch and Q1: Launch:

1. Navigate to the Increment Overview page for each Program Increment. The Program Increment ID will appear at the end of the URL i.e. the ID for the Q4: Get ready to launch Program Increment is 195




4. Mapping your Program and Program Increment IDs to their names  


1. Navigate to Source Data in the eazyBI Global Navigation bar and under the Actions heading select Edit > this will take you to the Jira import options screen 

2. Select the Additional Options tab. Under the Additional filter heading, click Edit custom JavaScript code and copy and paste the following snippet - replace the custom field IDs and names of your Programs and Program Increments with your own as discovered in the above steps.


// ***************************************************************************
// Replace these IDs with the Program and Program Increment custom field IDs
// ***************************************************************************

var programFieldId = 10304
var programIncrementFieldId = 10303

// ***************************************************************************
// Add entries for each of your Programs
// ***************************************************************************

var programNames = {}
programNames[100] = "Commercial Space Travel";
programNames[113] = "Life on Mars";

// ***************************************************************************
// Add entries for each of your Program Increments
// ***************************************************************************

var programIncrementNames = {};
programIncrementNames[215] = "Q1: Launch";
programIncrementNames[195] = "Q4: Get Ready to Launch";

// ***************************************************************************
// Don't modify below this line
// ***************************************************************************
function replaceNames(arr, dict) {  
  return (arr || []).map(function(value) {
      return dict[value] || value;
  });
}

var programField = "customfield_" + programFieldId;
var programIds = issue.fields[programField];
issue.fields[programField] = replaceNames(programIds, programNames)

var programIncrementField = "customfield_" + programIncrementFieldId;
var programIncrementIds = issue.fields[programIncrementField];
issue.fields[programIncrementField] = replaceNames(programIncrementIds, programIncrementNames)

3. Click Import at the bottom of the page