mesd/jasper-report-viewer-bundle

为mesd/jasper-report-bundle添加一个查看器元素

安装数: 3,338

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 15

分支: 0

类型:symfony-bundle

v1.0.8 2015-10-30 17:20 UTC

README

报告查看器作为Jasper Report Bundle的额外层,提供了一个用于显示和运行报告以及查看报告历史的可视化界面。它需要Jasper Report Bundle才能工作。

###特性

  • 提供用户可以查看的所有报告的列表
  • 提供处理报告输入的界面
  • 显示报告并使用Ajax加载其页面
  • 报告历史记录的UI

###待办事项

  • 目前依赖于cdn的第三方CSS和JavaScript,需要更好地集成到包中
  • 迫切需要测试

安装

###安装报告包 报告查看器包需要已设置报告包才能工作。如果报告包尚未安装,请点击此处

###添加到Composer 将包添加到应用的composer.json文件中是第一步。

"require": {
    "mesd/jasper-report-viewer-bundle": "~1.0"
}

###添加到AppKernel 为了使应用加载包,需要在AppKernel中注册它。

public function registerBundles() {
    $bundles = array(
        ...
        new Mesd\Jasper\ReportViewerBundle\MesdJasperReportViewerBundle(),
    )
}

###添加到Assetic 为了使资产工作,需要将包注册到Assetic中。这在进行Assetic其余部分设置时在配置文件中完成。例如

assetic:
    ...
    bundles:
        - MesdJasperReportViewerBundle

###导入路由文件 最后一步是将报告查看器的路由文件包含到主应用的路由文件中。查看下面的示例

MESDJasperReportViewerBundle:
    resource: "@MesdJasperReportViewerBundle/Resources/config/routing.yml"
    prefix: /reportviewer

使用

要添加到报告首页和报告查看器的链接,请使用以下twig函数

{# report home link #}
{{ mesd_jasper_reportviewer_home('Link Text') }}
 
{# report viewer link #}
{{ mesd_jasper_reportviewer_report_link('/reports/uri_of_report', 'Link Text') }}
 
{# stored report link #}
{{ mesd_jasper_reportviewer_stored_report_link('/reports/uri_of_report', 'requestId', 'Link Text') }}

这些路由也可以在控制器中使用

    public function indexAction( Request $request ) {
        $sc = $this->get('security.context');
        if ( $sc->isGranted('ROLE_REPORT') ) {
            return $this->redirect($this->generateUrl('MesdJasperReportViewerBundle_home'));
        } 
    }

    public function indexAction( Request $request ) {
        $sc = $this->get('security.context');
        if ( $sc->isGranted('ROLE_REPORT') ) {
            return $this->redirect(
                $this->generateUrl(
                    'MesdJasperReportViewerBundle_home',
                    array( 'openInNewTab' => true )
                )
            );
    }

进一步查看每个函数

  • mesd_jasper_reportviewer_home(linkText, classes = ' ', openInNewTab = true)
    • linkText => 链接上显示的文本
    • classes => 应用到锚标签的类
    • openInNewTab => 是否在新标签页/窗口中打开链接
  • mesd_jasper_reportviewer_report_link(reportUri, linkText, classes = ' ', openInNewTab = true, hideHome = true)
    • reportUri => 要在Jasper Server上打开报告查看器的报告URI
    • linkText => 链接上显示的文本
    • classes => 应用到锚标签的类
    • openInNewTab => 是否在新标签页/窗口中打开链接
    • hideHome => 是否显示指向首页和历史的导航链接
  • mesd_jasper_reportviewer_stored_report_link(reportUri, requestId, linkText, classes = ' ', openInNewTab = true, hideHome = true)
    • reportUri => 要在Jasper Server上打开报告查看器的报告URI
    • requestId => 存储报告的请求ID
    • linkText => 链接上显示的文本
    • classes => 应用到锚标签的类
    • openInNewTab => 是否在新标签页/窗口中打开链接
    • hideHome => 是否显示指向首页和历史的导航链接

API文档

生成的文档位于包的docs目录下。

许可证

本项目受MIT许可证许可。有关更多信息,请参阅LICENSE.md文件。