我对Cognos有一个奇怪的问题。您可以在下图中看到问题:
每个Credit Alert
都可以进行一次调整。但数量通常在数百或数千。但显然我们只是总结了所有Adjustment Amounts
。
下面我在建模层中附加了Cognos Framework Manager模型(large image link)。正如您所看到的,F_CREDIT_ALERT
有一个指向D_INVOICE_ADJ
的链接,其中包含指向F_INVOICE_ADJ
的链接(其中包含Request Amount
和GST
个用于创建Adjustment Amount ex GST
)。
非常感谢您对此问题的任何帮助。此外,关于该模型的任何一般提示/评论也会有所帮助。
由于
答案 0 :(得分:0)
首先,从Report Studio生成SQL以查看发生了什么(工具 - >显示生成的SQL)。这将使我们对发生的事情有一个很好的了解。
可能,这是模型中循环连接的问题。意思是,Cognos有多条路径,从F_CREDIT_ALERT到F_INVOICE_ADJ(通过D_INVOICE_ADJ或D_SNAPSHOT_DATE)。这也存在于不止一个地方。 Cognos在决定哪条路径方面并不聪明;在最长的时间里,它只是按字母顺序排在第一位(它可能仍然存在,但我很长时间没有这种类型的连接模型)。您需要围绕此建模 - 一种方法是创建一些对象的多个实例,例如D_SNAPSHOT_DATE。
您是否计划在Query Studio中提供此功能?鉴于多个事实表和循环连接,我预见到了主要的聚合问题。您可能需要在简单的星型模式中创建较小的marts。通过创建在适当的聚合级别加入的SQL视图,可以更容易地处理某些建模行为。
我去年为一些新开发者写了这篇文章,如果你想创建一个健壮,成熟的模型,可能会有所帮助:http://therealtoddnappi.blogspot.com/2012/07/cognos-modeling-guidelines-and-standards.html