【发布时间】:2015-10-02 22:05:47
【问题描述】:
我有一个使用存储过程填充参数的 SSRS 报告。此查询按预期工作。当该参数用于运行报表时,该参数将被截断。我选择值 ABCD,但报告返回 ABC 的值。我传递参数的存储过程在 SSMS 中完美运行并返回 ABCD 数据。当我在查询设计器中测试查询或运行报表时,我会得到 ABC 数据。如何让 SSRS 传入整个参数?
【问题讨论】:
-
字符串参数是否有指定长度?是否由于数据类型转换而被截断(例如
varchar(3),导致一个字符被截断)? -
存储过程是一个 varchar(6)。如果SSRS中有设置长度的地方,那我就不熟悉了。
-
显示参数的文本框中是否有表达式,例如substring()或left()?
-
您过去是否曾经将填充参数的查询中的 nvarchar 设置为长度为 3? RDL 文件可能出于某种原因保留了旧值,或者服务器从未随着长度的变化而更新。
-
您是否检查过以确保服务器上的数据源与 BIDS 中的数据源相同?如果您进行了更改,它可能不会更新,因为 OverwriteDatasets 默认值为 false。您是否删除了报告文件夹中的 .data 文件? SSRS 保留本地数据以提供帮助。
标签: sql-server reporting-services parameters ssrs-2008-r2