Dear Support
I am getting the error - Data column(s) for axis #0 cannot be of type string× for the following code where data is drawn from a MSSQL DB. Tried many things for many days, but could not figure out the issue. Your advice will be highly appreciated.
Thanks
<?php
DrillDown::create(array(
"name"=>"saleDrillDown",
"title"=>"Services Sales Breakdown",
"levels"=>array(
array(
"title"=>"Total Sales",
"content"=>function($params,$scope)
{
ColumnChart::create(array(
"dataSource"=> $this->src('sqlserver')
->query("SELECT YEAR(paymentDate) as Year, SUM(paymentAmount) as [Total Revenue] FROM appointments GROUP BY YEAR(paymentDate)"),
"columns"=>array(
"Year"=>array(
"type"=>"string",
"label"=>"Year",
),
"[Total Revenue]"=>array(
"label"=>"Total Revenue",
"prefix"=>"$",
)
),
"clientEvents"=>array(
"itemSelect"=>"function(params){
saleDrillDown.next({year:params.selectedRow[0]});
}",
)
));
}
),
array(
"title"=>function($params,$scope)
{
return "Year ".$params["Year"];
},
"content"=>function($params,$scope)
{
ColumnChart::create(array(
"dataSource"=> $this->src('sqlserver')
->query("SELECT MONTH(paymentDate) as Month, SUM(paymentAmount) as [Total Revenue] FROM appointments WHERE YEAR(paymentDate)=:year GROUP BY MONTH(paymentDate)")
->params(array(":year"=>$params["Year"])),
"columns"=>array(
"Month"=>array(
"type"=>"string",
"formatValue"=>function($value)
{
return date('M', mktime(0, 0, 0, $value, 10));
}
),
"[Total Revenue]"=>array(
"label"=>"Sale Amount",
"prefix"=>"$",
)
),
"clientEvents"=>array(
"itemSelect"=>"function(params){
saleDrillDown.next({month:params.selectedRow[0]});
}",
)
));
}
),
array(
"title"=>function($params,$scope)
{
return date('F', mktime(0, 0, 0, $params["Month"], 10));
},
"content"=>function($params,$scope)
{
ColumnChart::create(array(
"dataSource"=> $this->src("sqlserver")
->query("SELECT DAY(paymentDate) as Day, SUM(paymentAmount) as [Total Revenue] FROM appointments WHERE YEAR(paymentDate)=:year AND MONTH(paymentDate)=:month GROUP BY MONTH(paymentDate)")
->params(array(":year"=>$params["Year"], ":month"=>$params["Month"])),
"columns"=>array(
"day"=>array(
"formatValue"=>function($value,$row){
return date("F jS, Y",strtotime($row["paymentDate"]));
},
),
"[Total Revenue]"=>array(
"label"=>"Sale Amount",
"prefix"=>"$",
)
)
));
}
)
),
));
?>