koolphp / koolreport

This is an Open Source PHP Reporting Framework which you can use to write perfect data reports or to construct awesome dashboards using PHP
https://www.koolreport.com/
MIT License
226 stars 66 forks source link

How to use KoolReport in Yii2 framework? #9

Open JacquesMarques opened 6 years ago

JacquesMarques commented 6 years ago

Anybody has using KoolReport with YII2 (the last version of YII Framework)?

vihugarcia commented 6 years ago

I have installed it yesterday. So far so good. I'm using the advanced template and I have configured the reports to be displayed in the backend. In the simplest scenario steps are:

  1. Install using composer
  2. Create a folder to store the reports (in my case backend/reports)
  3. Create the reports according to documentation, for example OperationsReport
  4. In the desire action, create an instance of the report: $report = new OperationsReport();
  5. Render the view: return $this->renderPartial('report', ['report' => $report]); I had to use renderPartial or the layout got a little bit messed up

Those steps should work, BUT, at least in my case, I didn't have the level of control I needed over the report. So, I now follow these steps:

Steps 1 to 3 are the same

  1. Create the view file, for example: OperationsReport.view. In this view I can display charts, Configure table headers, etc.
  2. In the desire action, create an instance of the report: $report = new OperationsReporte();
  3. Render the report: $report->run()->render();

One thing to note though, is that in this way, you have to modify your report file if you want to include bootstrap, jquery, etc:

class OperationsReport extends KoolReport { use \koolreport\clients\jQuery; use \koolreport\clients\Bootstrap; use \koolreport\clients\FontAwesome;

....

Also, you have to configure the assets array:

function settings() { return array( "assets"=>array( "path"=>"../web", "url"=>"../", ), ...

Otherwise you won't have styles applied.

I hope this helps.

koolphp commented 6 years ago

Thanks Victor for your great answer.

luica20 commented 5 years ago

I have installed it yesterday. So far so good. I'm using the advanced template and I have configured the reports to be displayed in the backend. In the simplest scenario steps are:

  1. Install using composer
  2. Create a folder to store the reports (in my case backend/reports)
  3. Create the reports according to documentation, for example OperationsReport
  4. In the desire action, create an instance of the report: $report = new OperationsReport();
  5. Render the view: return $this->renderPartial('report', ['report' => $report]); I had to use renderPartial or the layout got a little bit messed up

Those steps should work, BUT, at least in my case, I didn't have the level of control I needed over the report. So, I now follow these steps:

Steps 1 to 3 are the same

  1. Create the view file, for example: OperationsReport.view. In this view I can display charts, Configure table headers, etc.
  2. In the desire action, create an instance of the report: $report = new OperationsReporte();
  3. Render the report: $report->run()->render();

One thing to note though, is that in this way, you have to modify your report file if you want to include bootstrap, jquery, etc:

class OperationsReport extends KoolReport { use \koolreport\clients\jQuery; use \koolreport\clients\Bootstrap; use \koolreport\clients\FontAwesome;

....

Also, you have to configure the assets array:

function settings() { return array( "assets"=>array( "path"=>"../web", "url"=>"../", ), ...

Otherwise you won't have styles applied.

I hope this helps.

Can you paste an example please..???

padmakanigem3s commented 5 years ago

Hi vihugarcia,

Are you have any reference tutorial link.

koolreport commented 4 years ago

You may have a look at

https://github.com/koolreport/yii2-example

Also we have just release a package koolreport/yii2 to facilitate creating report inside Yii2

Best regards

lloyd966 commented 3 years ago

I installed the extension as per the instructions, and I am getting the following error:

Unknown Class – yii\base\UnknownClassException

Unable to find 'app\reports\test' in file: D:\wamp64\www\pmtts/reports/test.php. Namespace missing?

Does anyone know why I would be getting this error, and how to fix it.

Any help would be greatly appreciated