2014-11-25 76 views
1

任何人都可以幫助我解決以下問題嗎?Spotfire - 計算列中的動態OVER語句

我們必須創建一個報告,其中顯示不同聚合級別上兩種數量與具有過濾選項的相同數據表之間的差異。我們已經在計算列中嘗試過OVER語句,但它沒有考慮用戶可以設置的過濾器。

我已經鏈接了一個與我們的數據表類似的樣本表。 目標是用戶可以選擇該圖顯示所選聚合級別上的數字,但也可以對可用過濾選項進行過濾。

聚合級別是級別3,級別4,材料和包裝。除了數字(預測數量,要求數量,增量和絕對增量)之外,過濾器都是列。

該圖應該顯示所請求的數量以及所選聚合級別上絕對差值和總預測數量的百分比。

我們的問題是Package和Customer字段不在Material Hierarchy中,因此如果我們用匯總值將這些字段包含到OVER語句中,它會制動絕對差值數字並導致不正確的值。

我的主要問題是,如何計算列Over語句是動態的,考慮到過濾器?

附加信息: 材料處於包含在第二個工作表中的層次結構中。 在不同的聚合級別上,增量應該是預測數量和請求數量之和的差值,絕對值是先前詳細的增量的絕對值。

示例文件: https://drive.google.com/file/d/0B6T-8YUYuuSEb3pQN29JRU5QeGs/view?usp=sharing

+0

您是否在Spotfire中構建了層次結構?如果沒有,請嘗試此操作...插入>層次結構,然後在右窗格中按照正確的層次結構順序添加列。給它一個名字(或者把它留作新的層次結構),然後單擊OK。您將在篩選器窗格中看到層次結構,並且可以遍歷和篩選層次結構。這是否讓你朝着正確的方向前進? – AmbivalentGeek 2014-12-02 15:31:43

回答

1

你有沒有考慮顯示時不預先計算新列直接使用OVER語句?

如果直接在axis屬性中使用OVER語句,則會在生成顯示時計算數據,因此結果將響應用戶的過濾器。 Calculating at display time

這種動態的計算也會爲工作的事情,例如錯誤棒,那麼你的誤差線將用戶的過濾器響應以及: enter image description here

...最後,如果你需要動態地更改計算,有一種方法可以做到這一點,我可以解釋你是否需要。