【问题标题】:Showing "#Error" in ssrs 2005 report在 ssrs 2005 报告中显示“#Error”
【发布时间】:2015-02-10 04:07:48
【问题描述】:

在我正在写的表格的 groupfooter 部分的字段中,

=FormatPercent(IIf((Fields!TotalTask_p1.Value+Fields!SuperVisorsCode.Value)>0,(Fields!TotalCommittedTask_p1.Value+Fields!SuperVisorsCode.Value)/(Fields!TotalTask_p1.Value+Fields!SuperVisorsCode.Value),0))

它不会引发任何构建错误。但是当我预览报告时,它会在该字段中显示“#Error”。应该怎么做?

【问题讨论】:

  • 您需要确保除法器和可设计物都非零。

标签: reporting-services report visual-studio-2005


【解决方案1】:

您需要确保两个除法器的值都非零,并确保在ssrs 表达式中出现错误的时间很长一段时间内都完成了正确的转换,这是由于转换未完成。列中的所有值都是数字。

 =FormatPercent(IIF((CInt(Fields!TotalTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value)) > 0 ,    
  (CInt(Fields!TotalCommittedTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value))/(Cint(Fields!TotalTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value))
  ,0))

【讨论】:

  • 你能在底部错误窗口中看到什么是错误信息
  • ‘textbox80’ 包含错误:输入字符串的格式不正确。
  • 你能做一件事,在 tablix temprorry 中创建 1 个单独的列并将IIF((CInt(Fields!TotalTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value)) > 0 , (CInt(Fields!TotalCommittedTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value))/(Cint(Fields!TotalTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value)) ,0) 放在那个框中,让我知道会发生什么并且任何列是否包含空值?
  • 不,没有任何空值。并且仍然在单独的列中显示#Error。和错误消息:文本框“textbox95”的值表达式包含错误:输入字符串格式不正确。
  • 好的,现在两个单独的列中的值都在一个列中CInt(Fields!TotalCommittedTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value) 和另一列中的(Cint(Fields!TotalTask_p1.Value) + CInt(Fields!SuperVisorsCode.Value)。抱歉,我无法在最后重现相同的问题,这就是您需要缩小导致错误的表达式的原因。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-15
相关资源
最近更新 更多