sergio-vilchis / laravel-phpjasperxml by sergio-vilchis

Laravel package to render JasperReports
2,478
2
2
Package Data
Maintainer Username: sergio-vilchis
Maintainer Contact: s.vilchisq@gmail.com (Sergio Vilchis)
Package Create Date: 2016-10-10
Package Last Update: 2016-10-13
Language: PHP
License: Unknown
Last Refreshed: 2025-02-07 15:00:04
Package Statistics
Total Downloads: 2,478
Monthly Downloads: 123
Daily Downloads: 1
Total Stars: 2
Total Watchers: 2
Total Forks: 2
Total Open Issues: 1

laravel-phpjasperxml

A Laravel package to render JasperReports.

###Installation

Add the following lines to your composer.json file

...
  sergio-vilchis/laravel-phpjasperxml": "^1.0"
}

Then update your packages with:

composer update

Add the Service Provider to you config/app.php file

'providers' => [
  ...
  Sergio\PhpJasperXML\JasperReportsServiceProvider::class,
]

And add an alias to the PHPJasperXML class

'aliases' => [
  ...
  'PHPJasperXML'  => Sergio\PhpJasperXML\PHPJasperXML::class,
]

Create an includes folder on your app and save there your jrxml files.

Create a ReportController with the following code

<?php
namespace App\Http\Controllers;
use PHPJasperXML;
use Response;
class ReportController extends Controller {

    public function viewreport($reporte='')
    {
      $PHPJasperXML = new PHPJasperXML();
      $PHPJasperXML->load_xml_file(app_path()."/includes/reports/".$reporte.".jrxml");
      $PHPJasperXML->transferDBtoArray();
      //Clean the end of the buffer before outputting the PDF
      ob_end_clean();
      //page output method I:standard output  D:Download file
      return Response::make($PHPJasperXML->outpage("I"));
    }

}

Then modify your app/Http/routes.php file to add a route to access any report.

Route::get('report/{report}', 'ReportController@viewreport')->name('report.show');