【问题标题】:Crystal Report Formula Issue水晶报表公式问题
【发布时间】:2012-02-05 11:00:07
【问题描述】:

我在 mssql 2k5 中有一列数据类型 money...colX...

我想根据 Crystalreport 中的 colY 将这个 colx 显示在两列 col1 和 col2 中:

res = 100.00
col1       col2     col3
10.00      0        90.00
0          1.00     91.00
0          5.00     96.00
50.00      0        46.00 
.
.

但我现在得到的是:

res = 100.00
col1       col2     col3
10.00      0        100.00
0          1.00     100.00
0          5.00     100.00
50.00      0        100.00 
.
.

以下是我用于 col3 的公式...

    dim ob
    ob={TABLE.res}
    WhileReadingRecords
    if {TABLE.colY}="C" then
        ob=ob-{TABLE.colX}
        formula=ob
    else
       ob=ob+{TABLE.colX}
       formula=ob
    end if

如果您有任何解决方案或参考,请回答...

【问题讨论】:

  • X 和 Y 列的值是多少?在您的示例中它们是“col1”和“col2”吗?您要应用的逻辑是什么?
  • colY 是我放置条件的列。 colX 是分成两列(col1 和 col2)的数量。在 colY 的基础上,我将其值减去或添加到变量 ob。简单地说,这是向前的结余。与分类帐相同。
  • 请在您的示例中包含示例 X 和 Y 值,以便我们遵循您的逻辑。

标签: crystal-reports crystal-reports-xi crystal-reports-2005


【解决方案1】:

上述问题已解决...

我刚刚在报告的标题部分声明了一个全局变量...

Global ob as currency
ob={TABLE.res}
formula=ob

并且余额转发逻辑保留在其位置(报告的详细信息部分),并进行了一项更改...

Global ob as currency
WhileReadingRecords
if {TABLE.colY}="C" then
    ob=ob-{TABLE.colX}
else
   ob=ob+{TABLE.colX}
end if
formula=ob

现在我得到了我需要的东西……作为;

res = 100.00
col1       col2     col3
10.00      0        90.00
0          1.00     91.00
0          5.00     96.00
50.00      0        46.00 
.
.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    相关资源
    最近更新 更多