Report Builder 不显示 IIF 结果

Report Builder not showing IIF result

我正在尝试修改 Report Builder 报告 (Visual Studio 2013),但它没有显示四个表达式。以下字段是这样编码的,效果很好!

=First(Microsoft.VisualBasic.Interaction.IIF(Fields!ISPASS.Value = "Y", "YES", "NO"), "DataSet1")

但是,我还有 4 个其他字段的编码方式完全相同,但字段值不同,如下所示:

=First(Microsoft.VisualBasic.Interaction.IIF(Fields!ISSUCCESSFUL.Value = "Y", "YES", "NO"), "DataSet1")

不显示 "YES" 或 "NO"。在这个特定领域,我为其提供 "N"。这是 PASS 表达式非常有效的 RB snipit:

这是我从这份报告中摘取的 PDF 文件的一部分:

下面是我遇到问题的那些字段的数据(不要担心 EXCEPTIONAL 的拼写错误,到处都是拼写错误,这不是问题所在):

这是用于填充 XSD 文件的 C# 代码:

if (result.Any()) {
  foreach (var item in result) {
    dtResult.Rows.Add(new object[] {
      item.FULLNAME.ToUpper(), item.STORENUM, item.SSID, item.EVALDATE,
      item.EVALYEAR, item.ISEXEPTIONAL, item.ISHIGHSUCCESS,
      item.ISSUCCESSFUL, item.ISUNSUCCESS, item.ISPASS, 
      item.JUSTIFICATION, item.OVERALPERFORMANCE,item.SUPERCOMMENT,
      item.curManager.ToUpper(), item.empType, item.questionNo,
      item.questionDescript, item.questionShortTitle, item.questionPass,
      item.questionComment
    });
  } 
}

这是我的 XSD 布局:

我知道找出问题所在并不容易,但观察我提供给报告的数据看起来很好。如果没有人有任何想法,那么我想我将不得不在 Crystal 报告中重写这个东西,然后从那里开始(??)。

就像一个消除过程一样,您是否尝试过只转储字段值而不是使用表达式,只是为了确保传递给报表的数据完全符合您的预期?

看来问题出在您的数据集上。尝试创建一个 table 并添加数据集中的所有字段,只需将它们拖到它上面即可。然后您应该能够准确地看到来自数据集的内容。