在SSRS2008中,文本框名称不能以数字开头

本文关键字:不能 数字 开头 SSRS2008 文本 | 更新日期: 2023-09-27 17:53:20

我在一些现有的报告中使用SSRS 2008。其中一个新要求是添加一些列,其中两个列的标题以数字开头。例如:170T_Test

在报表查看器中显示数据和标题时,一切正常。

然而,问题是当导出到CSV格式时。由于以这种格式显示的标题取自文本框属性名,因此我必须将170T_Test作为名称。但是,尝试这样做,SSRSS 2008 IDE显示以下消息错误:

"指定一个有效的名称。名称不能包含空格,但必须包含空格以字母开头,后面跟着字母、数字或副音字符(_)"

那么,基于上面解释的所有内容,有没有一种方法可以让文本框以数字开头?还是被禁止?

问候!

在SSRS2008中,文本框名称不能以数字开头

可以通过两种不同的方式实现。

我更喜欢方法1。它是更好的和可重用的。

方法1:
步骤1
更新报表数据集以包含第1行上的标题。

SELECT * FROM
(
 SELECT Field1, Field2, 2 as rowOrder
  FROM Tables
  Where Conditions
 UNION ALL
 SELECT '170T Test' AS Field1, '180 T$' AS Field2, 1 as rowOrder
) ORDER BY rowOrder

第二步:
修改报表服务器上的RSReportServer.config文件,将CSV导出自定义为exclude header

2012配置文件位置:C:'Program Files'Microsoft SQL Server'MSRS11.MSSQLSERVER'Reporting Services'ReportServer

2008文件位置:'Program Files'Microsoft SQL Server'MSSQL.n'Reporting Services'ReportServer

Imp:RSReportServer.config进行备份,以便在需要回滚更改时进行备份。

在CSV扩展名下面的<render>部分添加另一个条目。

<Extension name="CSVNoHeader" Type="Microsoft.ReportingServices.Rendering.DataRenderer.CsvReport,Microsoft.ReportingServices.DataRendering">
    <OverrideNames>
        <Name Language="en-US">CSV No Header</Name>
    </OverrideNames>
    <Configuration>
        <DeviceInfo>
            <NoHeader>true</NoHeader>
        </DeviceInfo>
     </Configuration>
</Extension>

保存它。现在您有另一个下拉导出选项CSV No Header以及CSV, PDF, XML。用户可以使用此选项以他们想要的方式提取数据。

MSDN链接自定义渲染扩展

方法2:


步骤1 同上

步骤2 使用URL访问并指定没有标头的设备信息http://msdn.microsoft.com/en-us/library/ms155046.aspx

资源不能以数字或保留字开头,如果您这样做,visual studio将自动在您的名字前面添加下划线'_'。您的问题可能与此有关。