我正在創建JasperReports服務器使用報告iReport。我有一張4列的桌子。用戶需要通過將參數選擇爲第一列。根據他選擇的內容,決定其他列。在參數中使用'if'條件
例如,如果用戶在輸入控件中選擇列2,則列2將變爲最左列,列1將替換列2.
執行此操作的最佳方法是什麼?我可以在參數中使用'if'條件嗎?
我正在創建JasperReports服務器使用報告iReport。我有一張4列的桌子。用戶需要通過將參數選擇爲第一列。根據他選擇的內容,決定其他列。在參數中使用'if'條件
例如,如果用戶在輸入控件中選擇列2,則列2將變爲最左列,列1將替換列2.
執行此操作的最佳方法是什麼?我可以在參數中使用'if'條件嗎?
用默認值表達式中的if語句添加另一個參數(取消選中用作提示)。 整個sql語句可以在這個參數中,我假設,但只測試了部分sql語句。在報告查詢中,將這個新參數設置爲$ P!{paramname}。 應該工作。
解決方案的安排非常少見。無論如何,你可以通過使用帶有變量的表達式來實現。
只要在球場上單擊鼠標右鍵,然後單擊「編輯表達式」
PFirst is a reports parameter
字段表達式可以像
$Pfirst.equals("fieldOne")?fieldOne:"" + $Pfirst.equals("fieldTwo")?fieldTwo:"" + $Pfirst.equals("fieldThree")?fieldThree:""
你可以試試這個: -
如果條件對於第一列的文本字段,p_column是具有默認值「col1」的參數
$P{p_column}.equals("col1") ? $F{col1} : $F{col2}
如果條件第二個文本提交第二列: -
$P{p_column}.equals("col1") ? $F{col2} : $F{col1}
您可以發佈您JRXML文件與一個條件? – user1791574