Crystal reports 在crystal报表的一列中串联不同的值
我在细节部分有一个记录集 例如:Crystal reports 在crystal报表的一列中串联不同的值,crystal-reports,concatenation,Crystal Reports,Concatenation,我在细节部分有一个记录集 例如: Column1----Column2 value_1----5678976 value_2----7263535 value_1----1938773 value_2----3333445 value_3----2848465 因此,在报告标题处,我需要指定Column1中所有不同的值,以逗号分隔。根据上述示例,正确的字符串为: value_1,value_2,value_3 我试着用公式 WhilePrintingRecords; shared strin
Column1----Column2
value_1----5678976
value_2----7263535
value_1----1938773
value_2----3333445
value_3----2848465
因此,在报告标题处,我需要指定Column1中所有不同的值,以逗号分隔。根据上述示例,正确的字符串为:
value_1,value_2,value_3
我试着用公式
WhilePrintingRecords;
shared stringvar final_result;
shared stringvar current_value;
if len(final_result) = 0 then final_result = "";
current_value:= {Column1};
final_result := final_result+ "," + current_value;
这是行不通的
试过不同的
WhilePrintingRecords;
stringVar final_result := "";
final_result = final_result + (
if InStr(final_result, {Column1}) > 0 then ""
else final_result := "," + {Column1};
);
也没有结果。
我哪里出错了
谢谢为了使公式显示任何内容,您需要在声明值后调用这些值。 所以你的公式应该更像这样:
WhilePrintingRecords;
shared stringvar final_result;
shared stringvar current_value := {Column1};
if len(final_result) < 1 then final_result := {Column2};
final_result + ", " + current_value
公式2(放置在报告标题中):
希望现在能奏效-Chris为了使公式显示任何内容,您需要在声明值后调用这些值。 所以你的公式应该更像这样:
WhilePrintingRecords;
shared stringvar final_result;
shared stringvar current_value := {Column1};
if len(final_result) < 1 then final_result := {Column2};
final_result + ", " + current_value
公式2(放置在报告标题中):
希望现在能奏效-克里斯只是克里斯第二个公式中的一个小语法错误。分号应在FOR循环的右括号后下移一行,因此最后三行为:
fin := fin + a[j] + ", "
);
fin
只是Chris第二个公式中的一个小语法错误。分号应在FOR循环的右括号后下移一行,因此最后三行为:
fin := fin + a[j] + ", "
);
fin
当我继承这份报告时,我让它工作起来。但偶尔我会删除报告的原始版本。因此,我非常确信,在报表标题级别使用公式,而不使用子报表,可以解决这个问题。谢谢你给我一个提示,在申报后再计算价值。克里斯,无论何时你在莫斯科,啤酒都由我负责!谢谢。当我继承这份报告时,我让它工作了。但偶尔我会删除报告的原始版本。因此,我非常确信,在报表标题级别使用公式,而不使用子报表,可以解决这个问题。谢谢你给我一个提示,在申报后再计算价值。克里斯,无论何时你在莫斯科,啤酒都由我负责!非常感谢。