在SSRS2008中,文本框名称不能以数字开头
本文关键字:不能 数字 开头 SSRS2008 文本 | 更新日期: 2023-09-27 17:53:20
我在一些现有的报告中使用SSRS 2008。其中一个新要求是添加一些列,其中两个列的标题以数字开头。例如:170T_Test。
在报表查看器中显示数据和标题时,一切正常。
然而,问题是当导出到CSV格式时。由于以这种格式显示的标题取自文本框属性名,因此我必须将170T_Test作为名称。但是,尝试这样做,SSRSS 2008 IDE显示以下消息错误:
"指定一个有效的名称。名称不能包含空格,但必须包含空格以字母开头,后面跟着字母、数字或副音字符(_)"
那么,基于上面解释的所有内容,有没有一种方法可以让文本框以数字开头?还是被禁止?
问候!
可以通过两种不同的方式实现。
我更喜欢方法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将自动在您的名字前面添加下划线'_'。您的问题可能与此有关。