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」? –