EazyBI Epic Gannt chart - epics start and due dates calculated measure
Asked by Arjun Suri:

looking for assistance on creating calculated start and due date measures for Epics to build Gantt, but unable to see dates populated in epic start date - using the following calculated measure

" \[Issue\].CurrentHierarchyMember.get('Start Date')"

My Report Definition below:

"definition": {"columns":{"dimensions":\[{"name":"Measures","selected_set":\["\[Measures\].\[Issue created date\]","\[Measures\].\[Issue status updated date\]","\[Measures\].\[Issue priority\]","\[Measures\].\[Issue status\]","\[Measures\].\[Issues resolved %\]","\[Measures\].\[Issues created\]","\[Measures\].\[Epic Start Date\]"\],"members":\[\]}\]},"rows":{"dimensions":\[{"name":"Issue","selected_set":\["\[Issue.Epic\].\[Epic\].Members"\],"members":\[{"depth":2,"name":"(no epic)","full_name":"\[Issue.Epic\].\[Atlassian Connect in JIRA\].\[(no epic)\]","drillable":true,"key":"(no epic)","removed":true}\],"bookmarked_members":\[\]}\],"filter_by":{"conditions":\[{"expression":\["\[Measures\].\[Issue epic link status\]"\],"operator":"not matches","value":"Closed"},{"expression":\["\[Measures\].\[Issue epic link status\]"\],"operator":"\\u003c\\u003e","value":""}\]},"nonempty_crossjoin":true},"pages":{"dimensions":\[{"name":"Project","selected_set":\["\[Project\].\[All Projects\]"\],"members":\[{"depth":0,"name":"All Projects","full_name":"\[Project\].\[All Projects\]","drillable":true,"type":"all","expanded":true,"drilled_into":false},{"depth":1,"name":"TEAM-NAME","full_name":"\[Project\].\[TEAM-NAME\]","drillable":true,"key":"PROJECT-NAME","parent_full_name":"\[Project\].\[All Projects\]"}\],"bookmarked_members":\[\],"current_page_members":\["\[Project\].\[TEAM-NAME\]"\]}\]},"options":{},"view":{"current":"gantt_chart","maximized":false,"gantt_chart":{"left_width":\[389.6,563.74375\],"timescale":"monthly","row_dimension_headers":{"Issue":"Epic"}},"table":{}},"description":"Please go to eazyBI documentation to get a detailed explanation of how this report is built:\\nhttps://docs.eazybi.com/eazybijira/learn-more/learn-eazybi-through-examples/gantt-chart"}


Answers:
author: M?rti?? Vanags
body: Hi,

First, you could make sure in [import options](https://docs.eazybi.com/eazybijira/data-import/jira-issues-import#JiraIssuesImport-JiraCustomFields "link") that the custom field **Start date** is imported and that "Epic Link" is imported

That should show the start date also for Epic rows.

If it didn't help, please provide the full report definition from your report as the code you provided seems like just part of the full definition.

Martins / eazyBI team

comments: author: Arjun Suri
body: Hi Martins see full report definition:

{  
"cube_name": "Issues",  
"cube_reports": \[ {  
"name": "Epic Gantt Chart",  
"folder_name": "DataEng",  
"result_view": "gantt_chart",  
"definition": {"columns":{"dimensions":\[{"name":"Measures","selected_set":\["\[Measures\].\[Issue created date\]","\[Measures\].\[Issue status updated date\]","\[Measures\].\[Issue priority\]","\[Measures\].\[Issue status\]","\[Measures\].\[Issues resolved %\]","\[Measures\].\[Issues created\]","\[Measures\].\[Epic Start Date\]","\[Measures\].\[Epic Due Date\]"\],"members":\[\]}\]},"rows":{"dimensions":\[{"name":"Issue","selected_set":\["\[Issue.Epic\].\[Epic\].Members"\],"members":\[{"depth":2,"name":"(no epic)","full_name":"\[Issue.Epic\].\[Atlassian Connect in JIRA\].\[(no epic)\]","drillable":true,"key":"(no epic)","removed":true}\],"bookmarked_members":\[\]}\],"filter_by":{"conditions":\[{"expression":\["\[Measures\].\[Issue epic link status\]"\],"operator":"not matches","value":"Closed"},{"expression":\["\[Measures\].\[Issue epic link status\]"\],"operator":"\\u003c\\u003e","value":""}\]},"nonempty_crossjoin":true},"pages":{"dimensions":\[{"name":"Project","selected_set":\["\[Project\].\[All Projects\]"\],"members":\[{"depth":0,"name":"All Projects","full_name":"\[Project\].\[All Projects\]","drillable":true,"type":"all","expanded":true,"drilled_into":false},{"depth":1,"name":"Data Engineering","full_name":"\[Project\].\[Data Engineering\]","drillable":true,"key":"DATAENG","parent_full_name":"\[Project\].\[All Projects\]"}\],"bookmarked_members":\[\],"current_page_members":\["\[Project\].\[Data Engineering\]"\]}\]},"options":{},"view":{"current":"gantt_chart","maximized":false,"gantt_chart":{"left_width":\[452.6,617.74375\],"timescale":"monthly","row_dimension_headers":{"Issue":"Epic"}},"table":{}},"description":"Please go to eazyBI documentation to get a detailed explanation of how this report is built:\\nhttps://docs.eazybi.com/eazybijira/learn-more/learn-eazybi-through-examples/gantt-chart"}  
} \],  
"calculated_members": \[{"dimension":"Measures","name":"Issue created date","format_string":"mmm dd yyyy","formula":"\[Issue\].CurrentHierarchyMember.get('Created at')","annotations":{"group":"Issue properties"}},{"dimension":"Measures","name":"Issue status updated date","format_string":"mmm dd yyyy","formula":"\[Issue\].CurrentHierarchyMember.get('Status updated at')","annotations":{"group":"Issue properties"}},{"dimension":"Measures","name":"Issue type","format_string":"","formula":"\[Issue Type\].\[Issue Type\].getMemberNameByKey(\\n \[Issue\].CurrentHierarchyMember.get('Issue type ID')\\n)","annotations":{"group":"Issue properties"}},{"dimension":"Measures","name":"Issue priority","format_string":"","formula":"\[Priority\].\[Priority\].getMemberNameByKey(\\n \[Issue\].CurrentHierarchyMember.get('Priority ID')\\n)","annotations":{"group":"Issue properties"}},{"dimension":"Measures","name":"Issue status","format_string":"","formula":"\[Status\].\[Status\].getMemberNameByKey(\\n \[Issue\].CurrentHierarchyMember.get('Status ID')\\n)","annotations":{"group":"Issue properties"}},{"name":"Issues resolved %","dimension":"Measures","formula":"CASE WHEN\\n \[Measures\].\[Issues created\] \\u003e 0\\nTHEN\\n \[Measures\].\[Issues resolved\]\\n /\\n \[Measures\].\[Issues created\]\\nEND","format_string":"#0%"},{"name":"Issue epic link status","dimension":"Measures","formula":"-- Retrieves the status of epic link for epic itself and any sub-level issue\\nCASE \\n WHEN \\n \[Measures\].\[Issue type\] = 'Epic'\\n THEN\\n \[Status\].\[Status\].GetMemberNameByKey(\\n \[Issue\].CurrentHierarchyMember.get('Status ID'))\\n WHEN \\n \[Issue type\].\[Issue type\].getMemberByKey(\\n \[Issue\].CurrentHierarchyMember.get('Issue type ID'))\\n .getboolean('Subtask')\\n THEN \\n \[Status\].\[Status\].GetMemberNameByKey(\\n \[Issue\].\[Issue\].GetMemberByKey(\\n \[Issue\].\[Issue\].GetMemberByKey(\\n \[Issue\].CurrentHierarchyMember.get('Parent issue key'))\\n .get(\\"Epic Link\\"))\\n .get('Status ID'))\\n ELSE \\n \[Status\].\[Status\].getMemberNameByKey(\\n \[Issue\].\[Issue\].GetmemberByKey(\\n \[Issue\].CurrentHierarchyMember.get('Epic Link'))\\n .get('Status ID'))\\nEND","format_string":"","annotations":{}},{"name":"Epic Start Date","dimension":"Measures","formula":"\[Issue.Epic\].CurrentHierarchyMember.get('Start Date')","format_string":""},{"name":"Epic Due Date","dimension":"Measures","formula":"\[Issue.Epic\].CurrentHierarchyMember.get('Due Date')","format_string":""}\]  
}


author: M?rti?? Vanags
body: Hi

Please confirm that you imported "Start date" custom field in eazyBI

Do you find the measure "Issue Start date" in "Measures" dimension (originally created by eazyBI when you imported your custom field)?

If yes, what code does it have?

Do you have a "start date" field on epic-level in Jira?

Martins / eazyBI


Tags: advanced-roadmaps

custom-field