Skip to content

Latest commit

 

History

History
64 lines (57 loc) · 1.77 KB

README.md

File metadata and controls

64 lines (57 loc) · 1.77 KB

JasperReportBundle

The JasperReportBundle requires jaspersoft/rest-client and provides an JasperReport-Client as service in the Symfony service container.

Installation

1 Add bundle to composer.json:

    composer require yoh/symfony-jasper-report-bundle

2 Register bundle in app/AppKernel.php:

    $bundle = [
            ...
    		new Yoh\JasperReportBundle\YohJasperReportBundle(),
            ...
    ];

3 Add parameter to app/config/config.yml

    yoh_jasper_report:
        jrs_host:      "%jrs_host%"
        jrs_port:      "%jrs_port%"
        jrs_base:      "%jrs_base%"
        jrs_username:  "%jrs_username%"
        jrs_password:  "%jrs_password%"
        jrs_org_id:    "%jrs_org_id%"

4 Add a dummy configuration in app/config/parameters.yml.dist

    jrs_host:      127.0.0.1
    jrs_port:      8080
    jrs_base:      jasperserver
    jrs_username:  jasperadmin
    jrs_password:  jasperadmin
    jrs_org_id:    null

5 Add your own configuration in app/config/parameters.yml

Usage

You can now access the Client object via the Symfony service yoh.jasper.report:

    $client = $this->get('yoh.jasper.report')->getJasperClient();

Using Report Service :

    $reportService = $client()->reportService();

So a controller giving back a pdf-report would look like

    public function reportAction(Request $request)
    {
    	$format = "pdf";
        $reportUnit = "/reports/sampleReport";
        $params = array(
            "Custom Label 1" => "Custom Value 1",
            "Custom Label 2" => "Custom Value 2"
        );

        return $this->get('yoh.jasper.report')->generate($reportUnit, $format, $params);
    }