I have to Pass array to series which generating from ajax code.
I have this multiple fields/array Linehart values Result[i].MONTHLY_TOTAL_FTE, MonthYear Result[i].MONTH + Result[i].YEAR, Country Result[i].COUNTRY_NAME
So I have to show a line chart according to this.
I am using below snippet code
$.ajax({
type: "GET",
url: "/api/ReportAPI/GetMonthlyEmployeeFte",
data: '{}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (Result) {
var data = [];
var data2 = [];
var data3 = [];
for (var i in Result) {
var serie = new Array(Result[i].MONTH + Result[i].YEAR);
data.push(serie);
var fte = new Array(Result[i].MONTHLY_TOTAL_FTE);
data2.push(fte);
var contry = new Array(Result[i].COUNTRY_NAME);
data3.push(contry);
}
DreawLineChart(data, data2, data3);
},
failure: function (response) {
alert(response.responseText);
},
error: function (response) {
alert(response.responseText);
}
});
function DreawLineChart(series, ssssss,contryname) {
Highcharts.chart('container2', {
chart: {
type: 'line'
},
title: {
text: 'Monthly Employee FTE' },
subtitle: {
//text: 'Source: WorldClimate.com'
},
xAxis: {
//categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
categories: series
},
yAxis: {
title: {
text: 'FTE'
}
},
plotOptions: {
line: {
dataLabels: {
enabled: true
},
enableMouseTracking: false
}
},
/* series: [{
name: 'Singapore',
data: [7.0, 6.9, 9.5, 14.5, 18.4, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
}, {
name: 'New Zealand',
data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
}] */
series: [{
name:contryname, //'Singapore',
data: JSON.parse("[" + ssssss + "]") //[3.9, 4.2, 5.7, 8.5] //ftes
}]
});
}
problem is that it's showing data for Japan country but its showing data of other countries in Japan.on clik on Other countries like new Zealand, Singapore its showing blank.
My sql store procedure to fetch data
SELECT YEAR(POSBDGT.[PLAN_START_DATE]) as [POSITION_FTE_YEAR],
MONTH(POSBDGT.[PLAN_START_DATE]) as [POSITION_FTE_MONTH_NO],
CONVERT(varchar(3),DATENAME(month,POSBDGT.[PLAN_START_DATE])) as [POSITION_FTE_MONTH],
SUM([TOTALFTE]) AS [TOTALFTE],
COMAST.[name]
FROM [DBO].[POSITION_FTE] POSFTE WITH (NOLOCK)
INNER JOIN [DBO].[POSITION_BUDGET] POSBDGT WITH (NOLOCK) ON POSFTE.POSITION_ID = POSBDGT.POSITION_ID
INNER JOIN [DBO].POSITION_LOCATION POSLOC WITH (NOLOCK) ON POSLOC.POSITION_ID = POSFTE.POSITION_ID
INNER JOIN [DBO].[country_master] COMAST WITH (NOLOCK) ON COMAST.[country_id] = POSLOC.COUNTRY_ID
GROUP BY COMAST.[name], YEAR(POSBDGT.[PLAN_START_DATE]),DATENAME(month,POSBDGT.[PLAN_START_DATE]),MONTH(POSBDGT.[PLAN_START_DATE])
Table Results

