TM1规则 - 将多个源多维数据集链接到一个目标多维数据集

时间:2013-10-22 22:03:21

标签: cognos-tm1

我有两个(到目前为止)源立方体及其各自的尺寸:
费用:日期1,日期2,供应商,成本/利润中心,项目,付款方式,措施。
收入:日期1,日期2,转包商,客户,成本/利润中心,项目,付款方式,措施。

我想使用上面提到的立方体作为第三个立方体的来源:
财务:日期1,成本/利润中心,项目,付款方式,措施

使用维度成本/利润中心是这些多维数据集中的每一个,并具有以下结构:

TOTAL
--EXPENSE
---10000 - Consulting
----11000 - Personal Expense
-----11100 - Sallary
------11101 - Gross Salary*
------11102 - Bonus*
...
--INCOME
---2000 - Services
----2100 - Projects
-----2110 - Support
------2111 - Support for ABC*
------2112 - Support for XYZ*
...

(*) Leaf elements


目标是将EXPENSE多维数据集中的数据加载到“费用”下的“财务”多维数据集中,并将“收入多维数据集”中的数据加载到“财务”多维数 如何在不手动链接相应叶级成员的情况下定义规则?我正在寻找像

这样的东西
['TOTAL':'Expense'] = N:DB(... data from Expense cube)
['TOTAL':'Income']  = N:DB(... data from Income cube)



到目前为止,我只提出了一个有效的解决方案,但我确信这不是正确的方法:

[] = N: DB('Expense', '...) + DB('Income', '...)


非常感谢!

1 个答案:

答案 0 :(得分:1)

对于两个多维数据集之间的任何链接,当然需要使用DB。话虽如此,根据您的TM1版本,如果性能建模器可用,创建图形链接可能是完成工作的最简单方法。它在相应的多维数据集规则文件中创建规则,因此它也是一个很好的学习工具。

对于问题的本质,作为高级视图,让我们假设TM1通过遍历其单元格来计算多维数据集。每个单元格由成员定义,用于指定的所有尺寸。当你统治某些东西时,!Date1变量(即在Date1维度名称前面的!)为你提供当前单元格的Date1维度的成员。因此,假设您的成本/利润中心维度相同,跨多维数据集共享(非最佳且可能应该是帐户),您可以将一个叶元素映射到另一个(!帐户)。

对于源多维数据集中但不在目标中的维度,您必须创建要在数据库中使用的总元素。

最后,无论您创建哪种规则来提取财务多维数据集中的数据,您还必须在相应的源多维数据集中创建一个支线。