0

在此处输入图像描述

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 应该是 8,540.8,但是是 34,163.2

怎么了?我该如何解决?

修改后的问题

对于最初的问题没有意义,我深表歉意。

我有许多我试图收集并放在交叉表上的 calc。我想按月(行)和零件类别(列)查看销售额

[Query2] 就是上图中的那个。它加入 [MonthToDateQuery] AND [Query1] 加入在“发票”上,肉欲是1..1 = 1..1

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

我在我的总帐科目分类帐条目中看到它引用了发票编号。所以这就是我绑定我的 SQL 的方式。

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

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

有什么建议吗?

如您所见,问题似乎是重复的发票号码。我该如何解决? 在此处输入图像描述

4

4 回答 4

0

想到几件事:

-设置处理顺序为2

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

于 2013-10-10T11:16:30.640 回答
0

I'm obviously missing something, but if you want

I need Data Item1 to return newparts_calc values only.

just use newparts_calc, without total? That would give you proper value for row 1 -)

If you need a running-total for days (sum of values for previous days) — you should use a running_total function.

于 2013-10-10T14:49:30.253 回答
0

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

于 2013-10-11T17:01:28.537 回答
0

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

于 2013-10-11T14:29:54.290 回答