Hey,
I use KoolReport on Symfony with the Package Exportable but I don't succed to get a chart on a pdf. However I can display different chart on a web page.
It is my follow code:
$report = new \App\Reports\MyReport;
$report->run()
->export('MyReportPDF')
->settings()
->pdf(array(
"format"=>"A4",
"orientation"=>"portrait",
))
->toBrowser("test.pdf");
MyReport.php
use \koolreport\KoolReport;
use \koolreport\processes\TimeBucket;
use \koolreport\processes\Group;
//Step 2: Creating Report class
class MyReport extends \koolreport\KoolReport
{
// use \koolreport\clients\Bootstrap;
use \koolreport\export\Exportable;
public function settings()
{
return array(
"dataSources"=>array(
"sakila_rental"=>array(
"class"=>'\koolreport\datasources\CSVDataSource',
'filePath'=>dirname(__FILE__)."/sakila_rental.csv",
)
)
);
}
protected function setup()
{
$this->src('data')
->pipe($this->dataStore('test'));
$this->src('sakila_rental')
->pipe(new TimeBucket(array(
"payment_date"=>"month"
)))
->pipe(new Group(array(
"by"=>"payment_date",
"sum"=>"amount"
)))
->pipe($this->dataStore('sale_by_month'));
}
}
MyReportPdf.view.php
<?php
use \koolreport\widgets\google\ColumnChart;
?>
<html>
<body style="margin:0.5in 1in 0.5in 1in">
<link rel="stylesheet" href="../../../assets/bs3/bootstrap.min.css" />
<link rel="stylesheet" href="../../../assets/bs3/bootstrap-theme.min.css" />
<div class="page-header" style="text-align:right"><i>Sakila Rental Report</i></div>
<div class="page-footer" style="text-align:right">{pageNum}</div>
<div class="text-center">
<h1>Cash In Report</h1>
<h4>This report show the cash-in report per month</h4>
</div>
<hr/>
<?php
ColumnChart::create(array(
"dataStore"=>$this->dataStore('sale_by_month'),
"columns"=>array(
"payment_date"=>array(
"label"=>"Month",
"type"=>"datetime",
"format"=>"Y-n",
"displayFormat"=>"F, Y",
),
"amount"=>array(
"label"=>"Amount",
"type"=>"number",
"prefix"=>"$",
)
),
"width"=>"100%",
));
?>
</body>
</html>
Did I miss something?