在報表開發(fā)過程中,我們經(jīng)常會用參數(shù)對數(shù)據(jù)進行過濾查詢,具體的實現(xiàn)方式通常是在sql語句中where部分定義好針對哪個字段進行過濾,之后參數(shù)模板將不同的值傳遞給這個字段進行數(shù)據(jù)查詢,返回不同的結果集供報表展現(xiàn)使用。常規(guī)的參數(shù)使用在教程文檔中已經(jīng)有介紹,這里不做贅述,小編今天只給大家分享兩個一般人不知道的小技巧,能夠提高報表開發(fā)效率及靈活性:
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名申請、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設、敦化網(wǎng)站維護、網(wǎng)站推廣。
數(shù)值為空查詢全部數(shù)據(jù)
動態(tài)參數(shù)(宏)怎么用
在這里我們避免被組織發(fā)現(xiàn)(好怕怕)抓緊時間直接跳過畫表樣,建數(shù)據(jù)集,等等,開始說重點。首先看一下通常的查詢數(shù)據(jù)集sql的設置,如下圖:
其中,數(shù)據(jù)集sql中一個?代表一個參數(shù)對應一個字段名稱,這樣為了保證初次展現(xiàn)結果頁面有數(shù)據(jù)就必須要要給參數(shù)賦默認值,而我們想要的是參數(shù)為空時查詢全部數(shù)據(jù),此時就需要在原有的參數(shù)設置基礎上應用一個小技巧 –“or ? is null”,應用后數(shù)據(jù)集sql及參數(shù)設置如下:
修改后 2個 ?對應同一個字段且數(shù)據(jù)集參數(shù)中2個參數(shù)表達式必須一致,且與sql語句中?順序對應,實際的意思就是,兩個問號都作用于員工姓名字段。這樣簡簡單單兩步修改后,就闊以實現(xiàn)參數(shù)為空時查詢全部數(shù)據(jù)了。
掌握了這個小技能以后,我們接下來再看另一個參數(shù)使用的小技巧:
參數(shù)模板中選擇要查詢的數(shù)據(jù)表及對應字段,主表進行對應數(shù)據(jù)表數(shù)據(jù)的呈現(xiàn)。
相信大家看到這個效果圖并不陌生,無非就是選擇參數(shù)查詢過濾,此處與以往不同的是,我們這里并非是針對固定的某個數(shù)據(jù)表的數(shù)據(jù)進行過濾篩選,而是選擇不同的數(shù)據(jù)表進行呈現(xiàn)。
實現(xiàn)此效果的關鍵設置如下:
數(shù)據(jù)集中sql語句的設置
與通常數(shù)據(jù)集sql的寫法不同的是我們這里并沒有固定寫死要查詢的數(shù)據(jù)表及字段,而是使用了兩次${參數(shù)名}來代替原本要寫的字段名稱和數(shù)據(jù)表名。${參數(shù)名}的用法是參數(shù)的一種特殊用法,經(jīng)常在報表中動態(tài)地進行表達式的替換,快速實現(xiàn)動態(tài)執(zhí)行語句的拼接。
同時,為了便于操作,這種用法也常常與參數(shù)模板結合使用。
然后…..然后….. ,關于參數(shù)使用的小技巧我們先分享到這里,我們來回顧一下其中不為人知的秘密和操作:
1.潤乾中參數(shù)的標識符
【知識點】標識符為問號(?),應用時參數(shù)定義注意參數(shù)個數(shù)順序要與?對應。
2.參數(shù)為空查詢全部數(shù)據(jù)
【知識點】應用 or ? is null
3.${參數(shù)名}
【技巧】相當于占位,可以對sql語句的任何一部分進行替換,乃至整個sql語句定義。
至此,關于參數(shù)使用小技巧的分享就完了,get了這個小技巧 ,做表的工作是不是越來越輕松了。
快來加入潤乾大家庭,get更多快速簡便的報表制作方式吧。