當前位置:
首頁 > 知識 > 如何實現葡萄城報表本地設計器的級聯查詢?

如何實現葡萄城報表本地設計器的級聯查詢?

有些報表的數據查詢條件可能有多個,條件之間還有關聯關係,即在用戶選定第一個條件之後,第二個條件的可選內容是根據第一個條件的選定值確定的。這種報表數據的多條件查詢稱為級聯查詢。

在下面的示例中,有兩個查詢條件:

【地區】:比如華北、華東等。

【城市】:比如北京、上海等。

用戶先用一個下拉框選定一個地區,再從另一個下拉框中選擇城市。城市下拉框中列出的城市,是根據地區條件,從資料庫查詢出來的該地區的城市列表。如下圖:

如何實現葡萄城報表本地設計器的級聯查詢?


實現級聯查詢的思路:

(1)創建數據集DataSet1,包含的數據是地區列表。

(2)創建參數P1,基於數據集DataSet1,讓用戶選擇地區。

(3)創建數據集DataSet2,以參數P1為查詢條件,查出某一地區的城市列表。

(4)創建參數P2,基於數據集DataSet2,讓用戶選擇城市。

(5)創建數據集DataSet3,以參數P2作為查詢條件,查出指定城市的業務數據。

(6)添加報表元素,比如表格或圖表,展示數據集DataSet3中的業務數據。

實現葡萄城報表級聯查詢的具體操作步驟:

(1)創建數據集DataSet1為第一級參數準備數據集,查詢出所有的【地區】,SQL語句如下:select DISTINCT 地區 from 客戶

如何實現葡萄城報表本地設計器的級聯查詢?

(2)創建參數P1第一級參數為用戶提供下拉框,以便選擇地區。參數定義信息如下圖:

如何實現葡萄城報表本地設計器的級聯查詢?

為了以下拉框形式顯示,指定參數的【可選值】來自數據集,如下圖:

如何實現葡萄城報表本地設計器的級聯查詢?

其中,【值欄位】一般是編碼性質的欄位,實際傳遞的參數值就是這個欄位的值;【標籤欄位】一般是名稱性質的欄位,是顯示在下拉框中便於用戶識別、選擇的。在本例中,兩個欄位都選擇【地區】欄位。

(3)創建數據集DataSet2為第二級參數準備的數據集為城市列表,並且為了實現級聯查詢的效果,這個城市列表並不包括全國所有的城市,而是要根據第一級【地區】參數,過濾出選定地區的城市。先定義數據集參數@Parameter1,引用第一級參數P1:

如何實現葡萄城報表本地設計器的級聯查詢?

再定義數據集的查詢,SQL語句如下:select 城市from 客戶where 地區 in(@Parameter1);

如何實現葡萄城報表本地設計器的級聯查詢?

(4)創建參數P2第二級參數為用戶提供下拉框,選擇一個城市。參數可選值來自數據集DataSet2:

如何實現葡萄城報表本地設計器的級聯查詢?

(5)創建數據集DataSet3數據集DataSet3是真正需要展示為報表內容的數據。先添加數據集參數,將報表參數P2引用過來:

如何實現葡萄城報表本地設計器的級聯查詢?

再定義查詢語句,使用城市作為過濾條件:select * from 客戶where 城市 in(@city)

如何實現葡萄城報表本地設計器的級聯查詢?

(6)添加報表元素拖放一個表格到設計區,綁定數據集DataSet3的欄位,設置適當的格式,如下圖:

如何實現葡萄城報表本地設計器的級聯查詢?

預覽效果如下圖:

如何實現葡萄城報表本地設計器的級聯查詢?


有獎問卷

親愛的用戶,感謝您對葡萄城的支持和認可!為充分了解您的需求,以便我們持續改進,提供更強大的控制項軟體產品和更專業的技術服務,特邀請您參加本次問卷調查。參與即有獎!完整填寫問卷,即可獲得 500枚 GCDN金幣(可兌換實體獎品),還可參加抽獎獲贈精美獎品。

問卷地址:https://www.wenjuan.in/s/fYzUJf/

轉載請註明出自:葡萄城報表

了解葡萄城報表:http://www.grapecity.com.cn/enterprise-solutions/activereports_server/


關於葡萄城

葡萄城成立於1980年,是全球最大的控制項提供商,世界領先的企業應用定製工具、企業報表和商業智能解決方案提供商,為超過75%的全球財富500強企業提供服務。葡萄城於1988年在中國設立研發中心,在全球化產品的研發過程中,不斷適應中國市場的本地需求,並為軟體企業和各行業的信息化提供優秀的軟體工具和諮詢服務。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 葡萄城控制項 的精彩文章:

「不僅有實力,更要有顏值」 – 葡萄城報表模板庫全面更新

TAG:葡萄城控制項 |