Crystal reports 公式字段与子报表位于同一页脚时不增长

Crystal reports 公式字段与子报表位于同一页脚时不增长,crystal-reports,crystal-reports-9,Crystal Reports,Crystal Reports 9,基本上,我有一个在打印记录时运行的公式,它可以使用chr13和全局stringvars打印0-3行,以形成最终的字符串,使用chr10和chr13进行尝试,在同一页脚中作为子报表,可以有0行到3行以上。两者都设置为可以增长,但是公式字段永远不会超过子报告 我用的是Crystal Reports 9 我还尝试在公式周围使用一个框,从上一页页脚到另一页页脚 这是我的公式 WHILEPRINTINGRECORDS; global stringvar WD; global stringvar ADV;

基本上,我有一个在打印记录时运行的公式,它可以使用chr13和全局stringvars打印0-3行,以形成最终的字符串,使用chr10和chr13进行尝试,在同一页脚中作为子报表,可以有0行到3行以上。两者都设置为可以增长,但是公式字段永远不会超过子报告

我用的是Crystal Reports 9

我还尝试在公式周围使用一个框,从上一页页脚到另一页页脚

这是我的公式

WHILEPRINTINGRECORDS;
global stringvar WD;
global stringvar ADV;
global stringvar NASC;
stringvar final :="";

IF WD <> "" AND ADV <> "" AND NASC <> "" THEN final := WD  + Chr(13) + chr(10) +  NASC + Chr(13) + chr(10) + ADV
ELSE IF WD = "" AND ADV <> "" AND NASC <> "" THEN final := NASC + Chr(13) + chr(10) + ADV
ELSE IF WD <> "" AND ADV = "" AND NASC <> "" THEN final := WD + Chr(13) + chr(10) + NASC
ELSE IF WD <> "" AND ADV <> "" AND NASC = "" THEN final := WD + Chr(13) + chr(10) + ADV
ELSE IF WD = "" AND ADV = "" AND NASC = "" THEN final := "";
final

每个子报表都有自己的“详细信息”部分,如果在其中设置了字段,则会显示所有行的结果,即使您将其放在页脚中也是如此。相反,在页脚页面或报表中设置的公式在聚合表单中工作,因为页脚应仅用于聚合结果max、min、sum等。如果将公式放入页脚中并对其进行编辑以返回字段值或与字段值相关的内容,然后它将只返回select的第一行的结果,就像SQL中的TOP1一样


当然,我不能完全确定,因为您没有显示任何结果或模式,但您的案例看起来很像

是子报表属性设置为can Growth是的,它是,以及其中的字段。
WHILEPRINTINGRECORDS;
global Stringvar ADV;
global Stringvar Status;

if({COLUMN1}="EX" 
  OR {COLUMN1}="ADV" 
  OR {COLUMN1}="CR" 
  OR {COLUMN1} = "DES" )
 THEN ( ADV := "#     - EXEMPT";  Status := "Status"; "#") ELSE ""