反饋已提交
網絡繁忙
當資料同時由縱向擴展和橫向擴展而來,也就是 交叉報表 的情況下,層次座標該怎麼寫呢?
相對層次座標
絕對層次座標
只獲取某一欄或某一行:也是絕對層次座標應用的一種
雙向擴展場景下,不管是相對層次座標還是絕對層次座標,都要使用縱向和橫向的組合寫法,且要遵循先縱向後橫向的原則。
Cellx:橫縱向同時擴展出來的交叉資料儲存格
Celly:縱向擴展儲存格,Cellx 的左父格
Cellz:橫向擴展儲存格,Cellx 的上父格
k:數字
p:數字
此處我們建立一個交叉報表,用於下面示範雙向擴展時相對層次座標和絕對層次座標的寫法。
建立資料集 ds1,SQL 語句為:SELECT * FROM 銷量,如下圖所示:
將「產品」欄位拖到 B1 儲存格,設定為橫向擴展。
將「銷售員」欄位拖到 A2 儲存格,設定為縱向擴展。
將「銷量」欄位拖到 B2 儲存格,設定為不擴展,此時 B2 儲存格就是根據 B1 和 A2 雙向擴展出來的資料。
交叉表設計好後,分頁預覽看下效果:
按照下圖所示在相應儲存格中填寫相對層次座標的公式:
實際計算結果如下圖所示:
下面給出每個層次座標的解譯:
;B1:1:橫向絕對層次座標,是為了鎖定第一欄
A2:-1:縱向相對層次座標,是為了實現縱向負偏移
;B1:2:橫向絕對層次座標,是為了鎖定第二列
A2:+1:縱向相對層次座標,是為了實現縱向正偏移
A2:1:縱向絕對層次座標,是為了鎖定第一行
;B1:-1:橫向相對層次座標,是為了實現橫向負偏移
A2:2:縱向絕對層次座標,是為了鎖定第二行
;B1:+1:橫向相對層次座標,是為了實現橫向正偏移
按照下圖所示在相應儲存格中填寫絕對層次座標的公式,其中 B4~B6 都設定為不擴展,且左父格和上父格都設定為無。
A2:4:縱向絕對層次座標,鎖定第四行
;B1:2:橫向絕對層次座標,鎖定第二列
A2:6:縱向絕對層次座標,鎖定第六行
;B1:4:橫向絕對層次座標,鎖定第四列
A2:!-1:縱向絕對層次座標,鎖定倒數第一行
;B1:!-1:橫向絕對層次座標,鎖定倒數第一欄
按照下圖所示在相應儲存格中填寫層次座標公式:
下面給出公式解析:
A2:傳回 A2 儲存格縱向擴展的所有值
;B1:1:橫向絕對層次座標,鎖定第一欄
A2:1:縱向絕對層次座標,鎖定第一行
;B1:傳回 B1 儲存格橫向擴展的所有值
已完成範本可參見:
%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\Coordinate\交叉表相對層次座標.cpt
%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\Coordinate\交叉表絕對層次座標.cpt
%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\Coordinate\獲取交叉表某一欄或某一行的值.cpt
點選下載範本:
交叉表相對層次座標.cpt;
交叉表絕對層次座標.cpt;
獲取交叉表某一欄或某一欄的值.cpt。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙