1

我在sql中有以下数据。

Date |Customer|DespatchOrder|Value|ApprovedCredit
08/10|Axe     |AGB-01       |50   |200
08/12|Axe     |AGB-02       |75   |200
08/13|Axe     |AGB-03       |80   |200
08/15|Axe     |AGB-04       |10   |200
08/09|Vex     |VSE-01       |50   |150
08/10|Vex     |VSE-02       |60   |150
08/13|Vex     |VSE-03       |40   |150

通过 sql 中的一些操作,我设法在水晶报表的交叉表中显示我的数据,如下例所示:

AXE
Date |ApprovedCredit|Total|AGB-01|AGB-02|AGB-03|AGB-04
08/09|200           |0    |0     |0     |0     |0
08/10|200           |50   |50    |0     |0     |0
08/11|200           |50   |50    |0     |0     |0
08/12|200           |125  |50    |75    |0     |0
08/13|200           |205  |50    |75    |80    |0
08/14|200           |205  |50    |75    |80    |0
08/15|200           |215  |50    |75    |80    |10

VEX
Date |ApprovedCredit|Total|VSE-01|VSE-02|VSE-03
08/09|120           |50   |50    |0     |0     
08/10|120           |110  |50    |60    |0     
08/11|120           |110  |50    |60    |0     
08/12|120           |110  |50    |60    |0     
08/13|120           |150  |50    |60    |40    
08/14|120           |150  |50    |60    |40    
08/15|120           |150  |50    |60    |40    

我遇到的问题是,我找不到在交叉表内计算我的超限列的方法,超限是由approvedcredit-Total(交叉表内的列)计算的

AXE
Date |ApprovedCredit|Total|OverLimit|AGB-01|AGB-02|AGB-03|AGB-04
08/09|200           |0    |0        |0     |0     |0     |0
08/10|200           |50   |0        |50    |0     |0     |0
08/11|200           |50   |0        |50    |0     |0     |0
08/12|200           |125  |0        |50    |75    |0     |0
08/13|200           |205  |5        |50    |75    |80    |0
08/14|200           |205  |5        |50    |75    |80    |0
08/15|200           |215  |15       |50    |75    |80    |10

VEX
Date |ApprovedCredit|Total|OverLimit|VSE-01|VSE-02|VSE-03
08/09|120           |50   |0        |50    |0     |0     
08/10|120           |110  |0        |50    |60    |0     
08/11|120           |110  |0        |50    |60    |0     
08/12|120           |110  |0        |50    |60    |0     
08/13|120           |150  |30       |50    |60    |40    
08/14|120           |150  |30       |50    |60    |40    
08/15|120           |150  |30       |50    |60    |40    

如果您知道如何执行此操作,请提供帮助,我尝试创建没有交叉表的报告,但使用动态列标题没有成功。由于此报告的动态性质,我想继续使用交叉表,有时可能会有超过 10 个 DespatchOrders,但如果无法使用交叉表执行此操作,请提供替代方案。

我发现使用带有值公式的计算成员在 Crystal Report 内创建超限列

ApprovedCredit - GridValueAt(CurrentRowIndex, 0 ,0)

Crystal 报表现在支持 GridValueAt 函数 xi 也不是计算成员。只是另一堵砖墙

4

1 回答 1

0

如果您可以在上游计算您的上限值,则交叉表将很容易。如果您不能这样做,则需要将交叉表列和汇总字段值基于公式,而不是数据源中的实际字段。在您的公式中,您返回要在大多数列中显示的字段值,并计算要在超限列中显示的值。

于 2012-08-21T14:52:39.660 回答