【问题标题】:Non-Unicode CSV Export from SQL Server Report Server从 SQL Server 报表服务器导出非 Unicode CSV
【发布时间】:2009-03-27 21:58:53
【问题描述】:

我正在使用 Microsoft SQL Server 2005 中的 SQL Server Report Server。

在报表服务器报表查看器控件中,有一个 CSV 下载选项。 CSV 下载选项当前正在下载 Unicode CSV 文件,该文件无法以正确的列格式加载到 Microsoft Excel。

如果我保存 Unicode CSV 文件并将其转换为 ASCII 文件,它在 Excel 中可以正常工作。

如何设置报告或 SSRS 报告查看器以将 CSV 导出为 ASCII 而不是 Unicode?​​p>

提前感谢您对此提供的任何帮助。

【问题讨论】:

  • 我刚刚遇到了同样的问题,但是当您右键单击 SQL Server 中的网格时也会出现另存为。我希望有人回答这个问题。

标签: sql-server reporting-services csv report


【解决方案1】:

转到 RSReportserver.config 文件(应该位于您的报告服务器虚拟目录的根目录中,例如“C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\报表服务器")

找到 CSV 扩展 - 应该如下所示。将 Encoding 节点更改为读取 ASCII 而不是 Unicode 或其中的任何内容。

        <Extension Name="CSV" Type="Microsoft.ReportingServices.Rendering.CsvRenderer.CsvReport,Microsoft.ReportingServices.CsvRendering">
            <Configuration>
                <DeviceInfo>
                    <Encoding>Unicode</Encoding>
                </DeviceInfo>
            </Configuration>
        </Extension>

【讨论】:

  • 定位配置文件:(注1)Microsoft SQL Server下的子文件夹可能以MSRS开头,就像我们的:MSRS10_50.MSSQLSERVERBO。 (注 2)您可能必须至少 NAVIGATE 进入 Reporting Services 文件夹一次,然后其配置文件才会显示在文件搜索中:双击文件夹Reporting Services,我得到:“您当前没有访问此文件夹的权限。单击继续以永久访问此文件夹。”在单击继续之前,Reporting Services 下的文件未在文件搜索中列出; AFTER Continue 后,搜索找到了它们!
  • 啊,MSRS 的乐趣,不错的提示!
  • Unicode 对我不起作用。但是 UTF-8 做到了。值得一读:msdn.microsoft.com/en-us/library/ms155365.aspx
【解决方案2】:

更多信息请访问http://msdn.microsoft.com/en-us/library/ms156281.aspx。您可以创建多个扩展,即除了默认的“CSV”之外,您还可以添加“CSV - ASCII”或“CSV - Pipe”等。

【讨论】:

    【解决方案3】:

    为了完整起见,以下是添加“CSV-ANSI”导出选项的方法。您需要添加“OverrideNames”标签,以免出现重复的“CSV”选项。由于我在澳大利亚,我需要添加一个“en-AU”语言选项,如果您不需要它可以将其删除(或替换为您自己的语言)。

    <Extension Name="CSV-UTF8" Type="Microsoft.ReportingServices.Rendering.DataRenderer.CsvReport,Microsoft.ReportingServices.DataRendering">
        <OverrideNames>
            <Name Language="en-US">CSV (UTF8)</Name>
            <Name Language="en-AU">CSV (UTF8)</Name>
        </OverrideNames>                
    </Extension>
    
    <Extension Name="CSV-ANSI" Type="Microsoft.ReportingServices.Rendering.DataRenderer.CsvReport,Microsoft.ReportingServices.DataRendering">
        <OverrideNames>
            <Name Language="en-US">CSV (ANSI)</Name>
            <Name Language="en-AU">CSV (ANSI)</Name>
        </OverrideNames>                
        <Configuration>     
            <DeviceInfo>
                <Encoding>ASCII</Encoding>
            </DeviceInfo>
        </Configuration>
    </Extension>
    

    【讨论】:

    • +1 比覆盖整个 ssrs 网站的 CSV 设置要好得多!
    • 感谢@Davos,使用这个解决方案已经有一段时间了,效果很好。
    【解决方案4】:

    在保存按钮中有一个小的下拉菜单,上面写着“使用编码保存”,您可以在其中将编码类型指定为 ansi ~公羊

    【讨论】:

      猜你喜欢
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 1970-01-01
      相关资源
      最近更新 更多