帆軟設置下拉框參數為空選擇全部


使用參數進行報表數據查詢時,如果控件中參數值為空(控件中不輸入參數值),點擊查詢后,不會顯示任何報表數據。如下圖所示:

Snag_47e0797.png

我們需要實現的效果是,當控件中參數值為空,點擊查詢后,會顯示報表中的全部數據。如下圖所示:

Snag_486498b.png

第一種方式:模板參數為空

給單元格 A2 添加數據過濾條件。雙擊 A2 單元格,在彈出的數據列對話框中選擇過濾,添加一個普通條件,讓數據列貨主地區等於公式if(len($貨主地區)==0,nofilter,$貨主地區),點擊增加,點擊確定,即通過添加過濾條件的方式實現參數為空選全部的效果。

注:nofilter 表示不過濾,if(len($貨主地區)==0,nofilter,$貨主地區) 表示參數「貨主地區」為空,就不過濾數據,若不為空則以參數值進行過濾。

Snag_4c9ba50.png

 第二種方式:數據集參數為空

新建數據集ds1,輸入數據庫查詢語句:

SELECT * FROM 訂單 

WHERE 1=1  

${if(len(area) == 0,"","and 貨主地區 = '" + area + "'")}

在定義數據集參數時給它設置條件來實現參數為空選全部的效果,此時數據集參數為「area」。

where 1=1 表示條件永真,防止沒有參數條件時,where 后面沒有有效內容導致出錯。

len(area)==0 表示參數「area」為空。

"and 貨主地區='"+area+"'" 中間的「area」表示取參數值,'+' 為字符串拼接符號。

${if(len(area) == 0,"","and 貨主地區 = '" +area + "'")} 表示:

參數「area」為空時,查詢語句相當於:SELECT * FROM 訂單

當參數「area」不為空時,查詢語句相當於:SELECT * FROM 訂單 WHERE 1=1 and 貨主地區='${area}'

Snag_3a97f25.png

摘自:下拉框參數為空選擇全部 https://help.fanruan.com/finereport/doc-view-2394.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM