帆軟報表(FineReport)實現跨數據源父子查詢(2階段查詢)


問題描述:

在報表中需要查詢多個系統多個數據源,且有一個數據源的入參是另一個數據源的返回值。所以當用戶點擊查詢到展現報表數據這個過程中,需要先做父查詢,查詢出的結果在作為子查詢。

實現方案:

方案一:多定義一個查詢條件,這個查詢條件的值根據用戶輸入的另一個查詢條件自動帶出。然后不同的數據源再根據不同的輸入條件分別查詢。

方案缺陷:

  1.如果用戶沒等到第二個條件自動帶出就點了查詢那就查詢不出來,所以最好把自動帶出的那個條件設置成必填。

  2.在手機端自動帶出的功能無效。所以該方案不支持手機端。

方案二:

給第二個數據源定義一個入參,這個入參設置成公式型,通過MAP(object, string, int, int)函數來從另一個數據源中獲取。

Map說明可以參考開發工具。舉例說明:MAP(1001, "employee", 1, 2)返回employee數據集中,第1列中值為1001那條記錄中第2列的值。

最終效果:

 


免責聲明!

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



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