SSRS:创建针对导出到Excel而优化的报告

时间:2018-01-28 08:04:44

标签: excel reporting-services report ssrs-2012

我有一个客户需要一个可以导出到excel的特定报告。我还没有开始构建报告,但我认为最好的方法是尽可能简化报告。这样,当客户端导出报表时,它应该相对干净。

有人有任何建议吗?我已经为他创建了一份报告。我打算单独发布报告,其唯一目的是出口到excel。

编辑:我还应该提到原始报告是一个简单的报告。它有一些分组,报告页眉和页脚,描述(文本框)。我计划为excel优化报告删除所有这些内容。

1 个答案:

答案 0 :(得分:2)

我仍然会使用带参数的报告网址自定义页脚。包括页脚将有助于解决有关数据的任何问题,并且只有在预览或打印时才会在电子表格中显示。引用数据的来源以及如何重新创建数据总是好的。如果不是最终用户,那么对于开发者来说。

=Globals!ReportServerUrl + "/ReportServer?" 
+ Replace(Globals!ReportFolder, " ", "+") + "%2f" 
+ Replace(Globals!ReportName, " ", "+") + "&rs:Command=Render"
+ "&single_value_parameter=" + Parameters!single_value_parameter.Value 
+ "&multi_value_parameter=" + Join(Parameters!multi_value_parameter.Value, "&multi_value_parameter=") 
+ IIf(IsNothing(Parameters!week_date_start.Value), "&week_date_start:isnull=True", "&week_date_start=" & Format(Parameters!week_date_start.Value, Variables!FormatDate.Value))
+ IIf(IsNothing(Parameters!week_date_end.Value), "&week_date_end:isnull=True", "&week_date_end=" & Format(Parameters!week_date_end.Value, Variables!FormatDate.Value))

另外,我通常将其添加为报表变量,然后您可以为页脚添加标准文本框,而不必更改。

=Variables!UrlReportWithParameters.Value

在报表服务器上,您还可以更改导出配置,以将SSRS标题放在Excel标题中而不是网格中。

<Extension Name="EXCEL" Type="Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer,Microsoft.ReportingServices.ExcelRendering" Visible="false">
    <Configuration>
        <DeviceInfo>
            <SimplePageHeaders>TRUE</SimplePageHeaders>
        </DeviceInfo>
    </Configuration>
</Extension>

您还可以将页眉和页脚中控件的可见性设置为以下表达式。

=IIF(Globals!RenderFormat.Name = "EXCEL" OR Globals!RenderFormat.Name = "EXCELOPENXML", TRUE, FALSE)