1. Go to this page and download the library: Download zak293/jasperphp library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
//...
'providers' => [
//...
Illuminate\Translation\TranslationServiceProvider::class,
Illuminate\Validation\ValidationServiceProvider::class,
Illuminate\View\ViewServiceProvider::class,
//insert jasper service provider here
JasperPHP\JasperPHPServiceProvider::class
],
namespace App\Http\Controllers;
use JasperPHP; // put here
class SomethingController
{
//...
public function generateReport()
{
//jasper ready to call
JasperPHP::compile(base_path('/vendor/cossou/jasperphp/examples/hello_world.jrxml'))->execute();
}
}
use JasperPHP\JasperPHP as JasperPHP;
Route::get('/', function () {
$jasper = new JasperPHP;
// Compile a JRXML to Jasper
$jasper->compile(__DIR__ . '/../../vendor/cossou/jasperphp/examples/hello_world.jrxml')->execute();
// Process a Jasper file to PDF and RTF (you can use directly the .jrxml)
$jasper->process(
__DIR__ . '/../../vendor/cossou/jasperphp/examples/hello_world.jasper',
false,
array("pdf", "rtf"),
array("php_version" => "xxx")
)->execute();
// List the parameters from a Jasper file.
$array = $jasper->list_parameters(
__DIR__ . '/../../vendor/cossou/jasperphp/examples/hello_world.jasper'
)->execute();
return view('welcome');
});
'JasperPHP\JasperPHPServiceProvider',
public function generateReceipt($id) {
$datafile = base_path('/storage/jasper/data.json');
$output = base_path('/storage/jasper/data'); //indicate the name of the output PDF
JasperPHP::process(
base_path('/resources/reports/taxinvoice80.jrxml'),
$output,
array("pdf"),
array("msg"=>"Tax Invoice"),
array("driver"=>"json", "json_query" => "data", "data_file" => $datafile)
)->execute();
}