在我的Cognos 10.2列表报告中,我使用动态多维数据集作为源。根据业务需求,我使用列表而不是交叉表来显示特定的OLAP数据。
我的问题是我需要创建一个列,该列使用行中单元格的值除以该列中所有此类值的总和...对于行中的级别。
好的,这是一个例子:
Col1 Row1 = Red
Col1 Row2 = Blue
Col2 Row1 = 40
Col2 Row2 = 50
Col3 Row1 = .44
Col3 Row2 = .55
Total for Col2 Rows 1&2 = 90
在上面的示例中,Col1是一个层次结构,因此我可以向上/向下钻取,从而更改其右侧列的值。
我正在尝试构建Col3,其公式为Col2 /(Total(Col2))。挑战是根据Col1的边缘值获得正确的总值。因此,虽然示例总共显示了90个,但如果我要深入研究“红色”,则总数会有所不同......因此会影响Col3的值。
我为Col2创建了一个List Summary项,并尝试在列表中的计算数据项中使用它。但是发生的事情是,total总计不是仅对该行的所有值进行汇总。因此,我没有看到.44,而是看到了......它正在将自己分开!
所以...我认为问题在于我需要一种方法来总结层次结构的每个级别,以便我可以在计算中使用该值。但是我还没有找到办法......如果有人有任何建议......我正在倾听:)
答案 0 :(得分:1)
您是否想要除以不会发生变化的层次结构根的总量,或者当您向下钻取时更改边缘层次结构的当前成员时,有点不清楚。我能够做到这两点。
当前边缘成员
[Col2]/aggregate([Col2] within set [Col1])
根成员
[Col2]/aggregate([Col2] within set {Full reference to the root level of the hierarchy})
将大括号中的文本替换为模型中对层次结构的根级别的完全引用。