I am trying to add a prediction line for measures “issues resolved” in the below report
As in the screenshot I am only getting Dot I ant to get it as Line, can you please help me on the same.
Report definition:
{
"cube_name": "Issues",
"cube_reports": [ {
"name": "Test Instance Created vs Resolved Report (WIP AK) EB 3",
"folder_name": "LDC - Build - Testing (OQT/PQT)",
"result_view": "bar_chart",
"definition": {"columns":{"dimensions":[{"name":"Measures","selected_set":["[Measures].[Issues created]","[Measures].[Issues Resolved New]","[Measures].[Open Issues New]","[Measures].[Prediction of Issues Resolved New]"],"members":[{"depth":0,"full_name":"[Measures].[Issues Resolved New]","format_string":"#,##0","report_specific":true,"name":"Issues Resolved New","calculated":true},{"depth":0,"full_name":"[Measures].[Open Issues New]","format_string":"#,##0","report_specific":true,"name":"Open Issues New","calculated":true},{"depth":0,"full_name":"[Measures].[Prediction of Issues Resolved New]","format_string":"#,##0","report_specific":true,"name":"Prediction of Issues Resolved New","calculated":true}]}]},"rows":{"dimensions":[{"name":"Time","selected_set":["[Time.Weekly].[2023]","[Time.Weekly].[2024]"],"selected_set_expression":"DescendantsSet({{selected_set}}, [Time.Weekly].[Week])","selected_set_action":[],"members":[],"bookmarked_members":[]}],"filter_by":{"conditions":[{"expression":"[Time.Weekly].CurrentHierarchyMember","operator":"between","value":"Mar 19 2023,Mar 13 2024","value_type":"date"}]},"nonempty_crossjoin":false},"pages":{"dimensions":[{"name":"Time","duplicate":true,"selected_set":["[Time.Weekly].[All Times]"],"members":[{"depth":0,"name":"All Times","full_name":"[Time.Weekly].[All Times]","drillable":true,"type":"all","expanded":true,"drilled_into":false},{"depth":1,"name":"2023","full_name":"[Time.Weekly].[2023]","drillable":true,"parent_full_name":"[Time.Weekly].[All Times]"},{"depth":1,"name":"2024","full_name":"[Time.Weekly].[2024]","drillable":true,"parent_full_name":"[Time.Weekly].[All Times]"}],"bookmarked_members":[],"current_page_members":["[Time.Weekly].[2023]","[Time.Weekly].[2024]"]},{"name":"Issue Type","selected_set":["[Issue Type].[All Issue Types]"],"members":[{"depth":0,"drillable":true,"full_name":"[Issue Type].[All Issue Types]","name":"All Issue Types","type":"all","expanded":true,"drilled_into":false},{"depth":1,"name":"Test Instance","full_name":"[Issue Type].[Test Instance]","parent_full_name":"[Issue Type].[All Issue Types]"}],"bookmarked_members":[],"current_page_members":["[Issue Type].[Test Instance]"]},{"name":"Test Case Type","selected_set":["[Test Case Type].[All Test Case Types]"],"members":[{"depth":0,"name":"All Test Case Types","full_name":"[Test Case Type].[All Test Case Types]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Test Case Type].[All Test Case Types]"]},{"name":"Status","selected_set":["[Status].[All Statuses]"],"members":[{"depth":0,"name":"All Statuses","full_name":"[Status].[All Statuses]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Status].[All Statuses]"]},{"name":"Transition Status","selected_set":["[Transition Status].[All Transition Statuses]"],"members":[{"depth":0,"name":"All Transition Statuses","full_name":"[Transition Status].[All Transition Statuses]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Transition Status].[All Transition Statuses]"]},{"name":"Functional Domain","selected_set":["[Functional Domain].[All Functional Domains]"],"members":[{"depth":0,"name":"All Functional Domains","full_name":"[Functional Domain].[All Functional Domains]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Functional Domain].[All Functional Domains]"]},{"name":"Workstream","selected_set":["[Workstream].[All Workstreams]"],"members":[{"depth":0,"name":"All Workstreams","full_name":"[Workstream].[All Workstreams]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Workstream].[All Workstreams]"]},{"name":"Test Cycle","selected_set":["[Test Cycle].[All Test Cycles]"],"members":[{"depth":0,"name":"All Test Cycles","full_name":"[Test Cycle].[All Test Cycles]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Test Cycle].[All Test Cycles]"]},{"name":"Detected in Cycle","selected_set":["[Detected in Cycle].[All Detected in Cycles]"],"members":[{"depth":0,"name":"All Detected in Cycles","full_name":"[Detected in Cycle].[All Detected in Cycles]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Detected in Cycle].[All Detected in Cycles]"]},{"name":"Release_Version","selected_set":["[Release_Version].[All Release_Versions]"],"members":[{"depth":0,"name":"All Release_Versions","full_name":"[Release_Version].[All Release_Versions]","drillable":true,"type":"all"}],"bookmarked_members":[],"current_page_members":["[Release_Version].[All Release_Versions]"]}]},"options":{"nonempty":true},"view":{"current":"bar_chart","maximized":false,"bar_chart":{"stacked":false,"vertical":true,"swap_axes":false,"data_labels":false,"series_options":{"Prediction of Issues Resolved New":{"type":"line","separateAxis":3},"Open Issues New":{"type":"line"},"Cumulative Prediction of Issues Resolved New":{"type":"line"}}},"table":{}},"calculated_members":[{"dimension":"Measures","name":"Issues Resolved New","formula":"(\n [Measures].[Transitions to status issues count],\n [Transition Status].[Approved],\n [Issue Type].[Test Instance]\n)","format_string":""},{"dimension":"Measures","name":"Rolling predicted date New","formula":"-- annotations.group = Predicted by issues\nCache(CASE WHEN\n Cache(AVG(\n {[Time.Weekly].[Week].CurrentDateMember.Lag(52):\n [Time.Weekly].[Week].CurrentDateMember.PrevMember},\n ([Measures].[Issues Resolved New],\n [Time].DefaultMember)\n )) \u003e 0\n AND\n ([Measures].[Issues due],\n [Time].CurrentHierarchy.Defaultmember) \u003e 0\nTHEN\n DateAddWorkDays(\"Today\", \n -- remaining scope\n ([Measures].[Issues due],\n [Time].CurrentHierarchy.Defaultmember)\n / \n -- average resolved issues per week in last 52 weeks\n Cache(AVG(\n {[Time.Weekly].[Week].CurrentDateMember.Lag(52):\n [Time.Weekly].[Week].CurrentDateMember.PrevMember},\n CoalesceEmpty(\n ([Measures].[Issues Resolved New],\n [Time].DefaultMember),\n 0)\n )) \n * \n -- workdays in week\n 5\n -- expand to see either worse or best case\n -- / 1.20 -- for best case \n -- / 0.80 -- for worse case\n )\nEND)","format_string":""},{"dimension":"Measures","name":"Prediction of Issues Resolved New","formula":"--annotations.group=Predicted by issues\nCase\nwhen\n DateInPeriod(\n 'Today',[Time].CurrentHierarchyMember)\nthen\n NonZero((\n [Measures].[Issues Resolved New],\n [Time].CurrentHierarchy.DefaultMember))\nWhen\n DateBetween(\n [Time].CurrentHierarchymember.StartDate,\n 'Today',\n -- predicted date by rolling period\n [Measures].[Rolling predicted date]\n )\n Then\n -- current progress\n NonZero((\n [Measures].[Issues Resolved New],\n [Time].CurrentHierarchy.DefaultMember))\n +\n -- add pace for each day in future\n (AVG(\n {[Time.Weekly].[Week].CurrentDateMember.Lag(52): -- should match the weeks in Rolling predicted date measure\n [Time.Weekly].[Week].CurrentDateMember.PrevMember},\n CoalesceEmpty(\n ([Measures].[Issues Resolved New],\n [Time].DefaultMember),\n 0))\n -- workdays per week\n / 5 )\n -- axpand one of those two lines for additional scenarious\n -- * 1.20 -- for best case \n -- * 0.80 -- for worse case\n *\n DateDiffWorkDays('Tomorrow',[Time].CurrentHierarchyMember.NextStartDate)\nEnd","format_string":""},{"dimension":"Measures","name":"Open Issues New","formula":"([Measures].[Issues history],\n[Transition Status].[Open Statuses ])\n","format_string":""}]}
} ],
"calculated_members": [{"dimension":"Measures","name":"Issues history","format_string":"#,##0","formula":"Cache(\n NonZero(Sum(PreviousPeriods([Time].CurrentHierarchyMember),\n [Measures].[Transitions to]\n - [Measures].[Transitions from]\n ))\n + [Measures].[Transitions to]\n - [Measures].[Transitions from]\n)"},{"name":"Open Statuses ","dimension":"Transition Status","formula":"Aggregate(\n {\n[Transition Status].[NO RUN],\n[Transition Status].[Passed],\n[Transition Status].[Failed],\n[Transition Status].[Not Completed] \n }\n)\n","format_string":""},{"name":"Rolling predicted date","dimension":"Measures","formula":"-- annotations.group = Predicted by issues\nCache(CASE WHEN\n Cache(AVG(\n {[Time.Weekly].[Week].CurrentDateMember.Lag(52):\n [Time.Weekly].[Week].CurrentDateMember.PrevMember},\n ([Measures].[Issues resolved],\n [Time].DefaultMember)\n )) \u003e 0\n AND\n ([Measures].[Issues due],\n [Time].CurrentHierarchy.Defaultmember) \u003e 0\nTHEN\n DateAddWorkDays(\"Today\", \n -- remaining scope\n ([Measures].[Issues due],\n [Time].CurrentHierarchy.Defaultmember)\n / \n -- average resolved issues per week in last 52 weeks\n Cache(AVG(\n {[Time.Weekly].[Week].CurrentDateMember.Lag(52):\n [Time.Weekly].[Week].CurrentDateMember.PrevMember},\n CoalesceEmpty(\n ([Measures].[Issues resolved],\n [Time].DefaultMember),\n 0)\n )) \n * \n -- workdays in week\n 5\n -- expand to see either worse or best case\n -- / 1.20 -- for best case \n -- / 0.80 -- for worse case\n )\nEND)","format_string":"mmm dd yyyy"}]
}