2014-09-01 59 views
0

我已经在CRM报告中创建了自定义列,并且该列有时无法正确计算答案。CRM报告Miscalculating列

见附件图片:http://imgur.com/hfHWg19

左边一栏是:=CDbl(Sum(Fields!ask_totalduration.Value/60)).ToString("N1", Microsoft.Crm.Reporting.RdlHelper.ReportCultureInfo.GetCultureInfo(Parameters))

中间一列是:=Fields!ask_response.Value

右栏是:=iif(Fields!ask_response.Value>Fields!ask_totalduration.Value, "Time Met", "Time not Met")

正如在图片中看到的东西工作不正常,但我无法弄清楚。

感谢乔

+0

我现在已经把它格式化为2位小数。但我仍然无法让它显示正确的输出!见附件截图:http://imgur.com/IijkmL3(抱歉,我没有足够的分数发布图片) – JoeM 2014-09-01 10:10:01

+0

这似乎仍然是一个问题。我无法找到如何解决它。 http://imgur.com/zvt6LYu(如果左边的列低于右边,它应该显示一条消息,说明时间已到,否则显示消息时间不符合。 – JoeM 2014-09-02 08:23:17

+0

我现在已经找到问题是十进制数了。在计算时不会查看小数。 – JoeM 2014-09-02 09:10:43

回答

0

看起来像它可能是一种类型的强制问题。

试着改变你的公式是: =IIf(CDbl(Fields!ask_response.Value) > CDbl(Fields!ask_totalduration.Value), "Time Met", "Time not Met")

这将确保正在执行的隐式转换。

-1

如果你想保持简单,你可以使用下面的公式,因为你只有2个小数点。

iif(Fields!ask_response.Value *100 >Fields!ask_totalduration.Value *100, "Time Met", "Time not Met")