1. 問題描述
如何實現點擊圖表1,圖表2顯示圖表1的關聯數據,接著點擊圖表2,圖表3顯示圖表2的關聯數據又該如何實現呢,如下圖,下面詳細介紹該功能的實現步驟。
2. 示例
2.1 數據準備
新建3個數據集作為3張圖表的數據源。
ds1:SELECT * FROM [銷量] where 1=1 ${if(len(地區)==0,"","and 地區='"+地區+"'")}
ds2:SELECT * FROM [銷量] where 1=1 ${if(len(地區)==0,"","and 地區='"+地區+"'")} ${if(len(銷售員)==0,"","and 銷售員='"+銷售員+"'")}
ds3:SELECT * FROM [銷量] where 1=1 ${if(len(地區)==0,"","and 地區='"+地區+"'")} ${if(len(銷售員)==0,"","and 銷售員='"+銷售員+"'")} ${if(len(產品類型)==0,"","and 產品類型='"+產品類型+"'")}
2.2 圖表設置
· 數據源設置
新建3張圖表,柱形圖、餅圖、折線圖,其數據源分別為ds1,ds2和ds3,具體數據源設置如下圖:
· 交互屬性設置
點擊柱形圖時,需要將柱形圖的分類軸傳遞給餅圖,作為餅圖數據源和折線圖數據源的一個參數值,點擊餅圖時,需要將餅圖的系列名傳遞給折線圖作為折線圖數據源的參數值,如果類似圖表聯動中的是兩個圖表之間的相互關聯,則直接使用超級鏈接-聯動單元格,但是此處折線圖需要接收來自柱形圖的分類軸值,而折線圖卻不是和柱形圖聯動,所以無法直接使用超級鏈接-聯動單元格,我們可以使用超級鏈接中的動態參數,點擊柱形圖或餅圖的時候,動態的給參數賦值,并且參數值一直存在,設置如下圖:
柱形圖
餅圖
· 參數界面設置
如最上面的效果圖,切換到參數設計界面,點擊右側下方面板的全部添加,將參數全部添加到參數面板中,如下圖:
地區參數的控件類型選擇下拉框,數據字典設置如下圖:
將銷售員和產品類型的控件以及標簽設置為不可見,將銷售員和產品類型兩個參數的控件添加上去主要是為了在預覽一次報表之后,重新選擇地區時,可以重置銷售員和產品類型兩個參數。
2.3 效果查看
點擊分頁預覽,效果如上圖。