使用Cognos Report Studio无法获得正确的总计。需要获得列中显示的总计

时间:2013-10-09 23:25:58

标签: oracle cognos

enter image description here

newparts_calc

if (([MonthToDateQuery].[G/L Account] = 4200 and [Query1].[G_L_Group] = 'NEW')) THEN ([Credit Amount]-[Debit Amount]) ELSE (0)

数据项1 总([newparts_calc])

我需要Data Item1才能返回newparts_calc值。

因此,例如在第1行中,Data Item1应为8,540.8,但为34,163.2

什么错了?我该如何解决?

已修订的问题

我为在原始问题上没有意义而道歉。

我有很多关于我试图收集并放置交叉表的计算方法。我希望按月(行)和零件类别(列)看待销售额

[Query2]如上图所示。 它加入[MonthToDateQuery]和[Query1] 加入是“发票”,肉体是1..1 = 1..1

[MonthToDateQuery]基于我正在使用的包。总帐。它为每个销售g / l帐户提供g / l条目 [Query1]是我引入的一个SQL查询,可以进一步从g / l组中分类。 例如,重建g / l帐户4300。但是我需要进一步突破才能看到Rebuilt-Production和Rebuilt-New。我可以用g / l组做到这一点。

我在我的g / l帐户分类帐条目中看到它引用了发票号。这就是我如何在我的SQL中绑定。

因此,您可以从下表中看到(这是查询中的视图表格数据)我需要一个总计。我已经尝试将newparts_calc插入我的交叉表并将聚合设置为总数,但数字似乎仍然不正确。我不认为我有应有的东西。

我所做的所有计算都是基于单个或多个总账科目以及单个或多个总账组。

任何建议?

正如您所看到的,问题似乎是重复的发票号码。 我该怎么办? enter image description here

4 个答案:

答案 0 :(得分:0)

想到几件事情:

- 将处理顺序设置为2

- 由于您的计算结果总是一个倍数,并且您要加入两个查询,您可能需要检查基数。有时,添加派生查询有助于确保您使用正确的粒度。

答案 1 :(得分:0)

我显然错过了什么,但如果你想要

  

我需要Data Item1才能返回newparts_calc值。

只使用newparts_calc,没有总计?这将为第1行提供适当的值 - )

如果你需要一天的运行总数(前几天的值的总和) - 你应该使用running_total函数。

答案 2 :(得分:0)

猜测,您的两个查询之一是为每个发票返回多行,这将导致重复计算。查看两个查询的输出,看看是否发生了这种情况。如果是这样,那么您只需要弄清楚如何将每个发票折叠到一行。

答案 3 :(得分:0)

根据您的新问题 - 基础数据必须导致问题。它显然不是1:1(请注意,即使这是您所声明的基数,Cognos也不会强制执行1:1)。发票编号不是唯一的,GL Group处于较低级别。