什麼是數據鑽取?
數據鑽取是指通點擊指向其它報表的鏈接來跳轉到該報表。在現代商業智能報表中,對交互式報表的需求越來越強烈,數據鑽取就是交互式報表中最爲常用功能之一。
爲什麼需要數據鑽取?
常見的普通報表中數據關係繁雜,常常一整套報表中,包含有多張主從報表,此時多張報表之間的關係難以表示,報表的數據鑽取功能很好的應對了這樣的需求。使用數據鑽取功能,能夠簡單的從主報表鑽取到從報表中,不但方便了數據查看,而且幫助報表查閱者理清了報表之間的關係。
如何使用葡萄城報表實現數據鑽取功能?
假設我們現在的整個組織結構如下圖所示:
從以上數據來看,整個數據結構分爲【部門】、【子部門】和【員工】,接下來我們將使用葡萄城報表實現以上數據所對應的鑽取報表。
首先,我們創建顯示部門信息的報表“Department.rdlx”,並要進行以下幾步操作:
1、添加一個名爲 ParentID ,默認值爲 –1 的參數
2、添加數據源,對應的查詢語句爲:select * from department where ParentID= ?;
3、添加數據源參數,名爲 Parameter1 , 對應的值爲 “=[@ParentID]”
4、在部門ID數據文本框中增加數據鑽取鏈接,並設置如圖中的鑽取參數
通過以上操作,我們就完成了從上級部門鑽取到下級部門的全部操作,接下來我們將實現從子部門鑽取到員工信息的操作。
創建名爲 Employee.rdlx 的員工信息報表,並舉行以下操作:
1、添加名爲 ParentID 的報表參數
2、添加數據源參數,名爲 Parameter1 ,值爲“=[@ParentID]”
3、添加數據源查詢語句 select * from Employee where DepartmentID = ?;
接下來我們要在部門報表中添加鑽取到員工信息報表的鑽取鏈接,我們選用的鑽取鏈接控件還是“部門ID”文本框,但是,現在就遇到一個問題,部門ID文本框可能會根據數據鑽取到子部門,如果沒有子部門就鑽取到員工信息報表,爲了實現按條件鑽取功能,我們在部門ID是在的位置再放置一個文本框,該文本框對應的鑽取設置如下圖所示:
接下來最重要的一步操作,我們需要根據數據源來顯示以上兩個完全重疊的文本框,設置如下
1、設置鑽取到員工信息的文本框的 Visibility.Hidden 爲 “=IIF( [HasSub] = 0,false,true)”
2、設置鑽取到子部門信息的文本框的 Visibility.Hidden 爲 “=IIF( [HasSub] = 0,false,true)”
最終運行結果如下圖:
轉載請註明出自:葡萄城報表
http://www.grapecity.com.cn/enterprise-solutions/activereports_server/