sigedi/jasper-report-bundle

Symfony 6 / Symfony Flex Bundle 集成 Jaspersoft REST v2 客户端 (jaspersoft/rest-client)

安装次数: 4,317

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 2

开放问题: 0

类型:symfony-bundle

2.0.0 2024-01-31 14:12 UTC

This package is auto-updated.

Last update: 2024-09-05 17:05:01 UTC


README

需求

Packagist PHP Version Packagist Dependency Version

JasperReportBundle 需要 jaspersoft/rest-client,并在 Symfony 服务容器中提供 JasperReport-Client 服务。

安装
基本用法
其他配置选项

安装

1 将包添加到 composer.json

    composer require sigedi/jasper_report_bundle

2 包将自动注册,并通过执行配方,在 config/packages 目录中创建配置文件 jasper-report.yaml,并在 .env 文件中添加相应的条目

3 修改文件 jasper-report.yaml 中的标准设置

    sigedi_jasper_report:
        host:      'https://:8080/jasperserver'
        username:  '%env(SIGEDI_JASPER_REPORT_USERNAME)%'
        password:  '%env(SIGEDI_JASPER_REPORT_PASSWORD)%'
        org_id:    '%env(SIGEDI_JASPER_REPORT_ORGID)%'

和在 .env 文件中

SIGEDI_JASPER_REPORT_USERNAME=jasperadmin
SIGEDI_JASPER_REPORT_PASSWORD=jasperadmin
SIGEDI_JASPER_REPORT_ORGID=

Symfony 中的基本用法

该包支持自动装配,因此您可以直接在控制器中访问 report-service,例如

    use Symfony\Component\HttpFoundation\Request;
    use Sigedi\JasperReportBundleReportService;

    public function reportAction(Request $request, ReportService $reportService)
    {
        $report = $reportService->runReport('/reports/TestReport', 'pdf');

        $response = new Response($report);
        $response->headers->set('Content-type', 'application/pdf');
        $response->headers->set('Content-Disposition', 'inline; filename=Report.pdf');
        $response->headers->set('Cache-Control', 'must-revalidate');

        return $response;
    }

其他配置选项

    sigedi_jasper_report:
        host:      'https://:8080/jasperserver'
        username:  '%env(SIGEDI_JASPER_REPORT_USERNAME)%'
        password:  '%env(SIGEDI_JASPER_REPORT_PASSWORD)%'
        org_id:    '%env(SIGEDI_JASPER_REPORT_ORGID)%'
        timeout:   50

timeout: REST 请求的超时时间(秒)