无法比较Chart中System.Int32和System.String类型的数据

时间:2014-06-05 15:10:53

标签: sql reporting-services-2012

我正在使用Reporting Services 2012并且有一个图表,该图表使用基于参数更改其数据的数据集。

这个数据只是一堆格式为YYYYMM的句子,一个int,一个机器号int和十进制数字(12,2)。我们根据机器编号和周期选择并拉回所有这些小数(12,2)并在图表中显示它们。

它适用于大多数机器,但我们选择的一些机器会出现以下错误

本地报告处理期间发生错误。报告处理期间发生错误。无法执行图表'chart1'的Parent处理。无法比较System.Int32和System.String类型的数据。请检查父母返回的数据类型。

一个有效的机器号是516.一个没有的机器号是517.除了不同的数字之外,从516和517返回的SQL结果没有什么不同,5.23而不是5.17作为例子。数据中没有空值,没有零,绝对没有字符串。

任何有关下一步观看的帮助都将受到赞赏。

1 个答案:

答案 0 :(得分:3)

我不知道这是否有用,但消除错误的修复方法是将SQL查询更改为

cast(machno as varchar) 

machno在查询中到处都是。这并不能解释为什么图表需要字符串而不是int。