在報表開發過程中,我們經常會用參數對資料進行過濾查詢,具體的實作方式通常是在sql語句中where部分定義好針對哪個字段進行過濾,之後參數模闆将不同的值傳遞給這個字段進行資料查詢,傳回不同的結果集供報表展現使用。正常的參數使用在教程文檔中已經有介紹,這裡不做贅述,小編今天隻給大家分享兩個一般人不知道的小技巧,能夠提高報表開發效率及靈活性:
- 數值為空查詢全部資料
- 動态參數(宏)怎麼用
技巧一:參數值為空時怎麼查詢出全部的資料
在這裡我們避免被組織發現(好怕怕)抓緊時間直接跳過畫表樣,建資料集,等等,開始說重點。首先看一下通常的查詢資料集sql的設定,如下圖:
其中,資料集sql中一個?代表一個參數對應一個字段名稱,這樣為了保證初次展現結果頁面有資料就必須要要給參數賦預設值,而我們想要的是參數為空時查詢全部資料,此時就需要在原有的參數設定基礎上應用一個小技巧 –“or ? is null”,應用後資料集sql及參數設定如下:
修改後 2個 ?對應同一個字段且資料集參數中2個參數表達式必須一緻,且與sql語句中?順序對應,實際的意思就是,兩個問号都作用于員工姓名字段。這樣簡簡單單兩步修改後,就闊以實作參數為空時查詢全部資料了。
掌握了這個小技能以後,我們接下來再看另一個參數使用的小技巧:
技巧二: ${參數名}的用法,執行個體如下:
參數模闆中選擇要查詢的資料表及對應字段,主表進行對應資料表資料的呈現。
相信大家看到這個效果圖并不陌生,無非就是選擇參數查詢過濾,此處與以往不同的是,我們這裡并非是針對固定的某個資料表的資料進行過濾篩選,而是選擇不同的資料表進行呈現。
實作此效果的關鍵設定如下:
資料集中sql語句的設定
與通常資料集sql的寫法不同的是我們這裡并沒有固定寫死要查詢的資料表及字段,而是使用了兩次${參數名}來代替原本要寫的字段名稱和資料表名。${參數名}的用法是參數的一種特殊用法,經常在報表中動态地進行表達式的替換,快速實作動态執行語句的拼接。
同時,為了便于操作,這種用法也常常與參數模闆結合使用。
回顧總結
然後…..然後….. ,關于參數使用的小技巧我們先分享到這裡,我們來回顧一下其中不為人知的秘密和操作:
1.潤乾中參數的辨別符
【知識點】辨別符為問号(?),應用時參數定義注意參數個數順序要與?對應。
2.參數為空查詢全部資料
【知識點】應用 or ? is null
3.${參數名}
【技巧】相當于占位,可以對sql語句的任何一部分進行替換,乃至整個sql語句定義。
至此,關于參數使用小技巧的分享就完了,get了這個小技巧 ,做表的工作是不是越來越輕松了。
快來加入潤乾大家庭,get更多快速簡便的報表制作方式吧。