1
我试图修改报表生成器报表(Visual Studio 2013),它不显示四个表达式。下面的字段是这样编码的,工作起来很棒!报表生成器未显示IIF结果
=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”。这里是RB snipit其中PASS表达的伟大工程:
下面是从这份报告我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 Reports中重写这个东西,并从那里(?)进行。
就像一个淘汰过程一样,您是否尝试过仅仅倾销字段值而不是使用表达式,只是为了确保传递给报告的数据正是您期望的那样? –
我尝试了下面这样的事情,那是什么意思? = First(Fields!ISEXEPTIONAL.Value,“DataSet1”) – Craig
这就是我的意思。你有没有得到预期的“n”或“y”? –