正如主题所说,SSRS报告正在将varchar参数转换为int。参数是一个文本类型,当我在报表设计器中输入0002弹出存储过程时报表不起作用,但在查看sql profiler时我们可以看到它转换为int。
需要帮助。
答案 0 :(得分:0)
我不确定我是否理解正确,但是如果你想从字符串中删除前导0,然后将其转换为int(例如将'0002'转换为2),你可以使用它来传递报告中的参数并执行以下过程:
CONVERT(INT,SUBSTRING(@parameter, PATINDEX('%[^0]%', @parameter), LEN(@parameter)))
将@parameter
替换为报告中的参数名称。
答案 1 :(得分:0)
答案 2 :(得分:-1)
在数据集属性中:
转到参数部分。单击“fx”按钮为参数值创建表达式。使用CInt函数将参数转换为int: