Crystal Reports中的whilePrinting记录如何转换为SQL

Crystal Reports中的whilePrinting记录如何转换为SQL,sql,crystal-reports,Sql,Crystal Reports,我在Crystal报告中查找Group1total的值。我的背景主要是SQL,我试图确定以下内容背后的逻辑: //{@Group1total} whileprintingrecords; numbervar group1cost //{@Group1cost} whileprintingrecords; numbervar group1cost := group1cost + {@group2total} //{@Group2total} whileprintingrecords; numb

我在Crystal报告中查找Group1total的值。我的背景主要是SQL,我试图确定以下内容背后的逻辑:

//{@Group1total}
whileprintingrecords;
numbervar group1cost

//{@Group1cost}
whileprintingrecords;
numbervar group1cost := group1cost + {@group2total}

//{@Group2total}
whileprintingrecords;
numbervar group2cost

//{@Group2cost}
whileprintingrecords;
numbervar group2cost := group2cost + {@group3total}

//{@Group3total}
whileprintingrecords;
numbervar group3cost

//{@Group3cost}
whileprintingrecords;
numbervar group3cost := group3cost + {@group4total}

//{@Group4total}
whileprintingrecords;
numbervar group4cost

//{@Group4cost}
whileprintingrecords;
numbervar group4cost := group4cost + {XVR_projectcostbudget.cost_budget}
我注意到,在SQL中简单地计算XVR_projectcostbudget.cost_budget的总和并不能产生与Crystal报告相同的结果。有什么想法吗


谢谢

而打印记录不会转换为SQL。它只影响给定公式的计算——本质上是将其分配给报表的一个“过程”。看

在你的情况下,我建议:

  • 在所有四个组的页脚中插入公式或数据库字段的摘要;这将创建可以在公式字段中使用的字段(可以手动创建,但这更简单)
  • 创建一个公式字段,根据需要统计组摘要

    • 而打印记录不会转换为SQL。它只影响给定公式的计算——本质上是将其分配给报表的一个“过程”。看

      在你的情况下,我建议:

      • 在所有四个组的页脚中插入公式或数据库字段的摘要;这将创建可以在公式字段中使用的字段(可以手动创建,但这更简单)
      • 创建一个公式字段,根据需要统计组摘要

      像贾斯汀一样,我能感觉到他对Crystal Reports的失望,并把它放在这里帮助其他人

      试图在不同的组级别和报告末尾使用通常的总和(解码(sql结构)。在crystal中,试图使用运行带有求值公式的合计字段来模拟此情况。求值列为代码(所有值都是数字,但表列声明为字符串类型:).Evaluation formula仅在字段类型为数字时提供“求和”功能。因此,创建了一个公式字段以将此列生成为数字。太好了,求和功能现在可以在IFF(,1,0)的运行总计中使用。但不会生成结果!(即空白)

      切换到Whileprintingrecords结构和工作模式。 下面的文章简要介绍了它的工作原理。


      显然,将此计算放在主sql查询中很简单,但是使用gui表链接设置的旧报表。

      与Justin一样,我可以感受到他对Crystal Reports的失望,并将此放在这里帮助其他人

      试图在不同的组级别和报告末尾使用通常的总和(解码(sql结构)。在crystal中,试图使用运行带有求值公式的合计字段来模拟此情况。求值列为代码(所有值都是数字,但表列声明为字符串类型:).Evaluation formula仅在字段类型为数字时提供“求和”功能。因此,创建了一个公式字段以将此列生成为数字。太好了,求和功能现在可以在IFF(,1,0)的运行总计中使用。但不会生成结果!(即空白)

      切换到Whileprintingrecords结构和工作模式。 下面的文章简要介绍了它的工作原理。


      显然,将此计算放在主sql查询中是很简单的,但是设置了gui表链接的旧报表。

      这8个公式是独立的吗?它们在报表的哪个部分?可能更容易解释您试图计算的内容…有些情况告诉我,这比需要的复杂得多。我更正了y我们的语法有助于讨论(我希望)。这8个公式是独立的吗?它们在报告的哪一部分?解释您试图计算的内容可能会更容易…有些东西告诉我,这比需要的复杂得多。我更正了您的语法以帮助讨论(我希望).回到最初的想法,但使用基本语法和作为公式计算出一个数字,求和就行了。回到最初的想法,但使用基本语法和作为公式计算出一个数字,求和就行了。