将2列组合成1行

时间:2016-03-07 00:34:08

标签: crystal-reports

我有如下数据:

ID   GroupID     from      To 

1      2          A        B 
1      2          B        C 

我想把它合并为" A / B / C"成为2的单个值(GroupID)。

我需要的结果:

A / B / C

如果

ID   GroupID     from      To 

1      2          A        C 
1      2          B        A 

结果必须是A / B / C / A

提前致谢。

1 个答案:

答案 0 :(得分:0)

最后,在工作4小时后,我找到了解决方案,试着让我知道。

创建公式@Concat并在下面写下代码并放置详细信息:

Shared Stringvar firstcol;
Shared Stringvar seccol;

firstcol:=firstcol+{From}+"/";
seccol:=seccol+{To}+"/";

现在再创建一个公式@Display并根据要求放置页脚(组或报告)。

Shared Stringvar firstcol;
Shared Stringvar seccol;
Local Stringvar third;
Local Numbervar i;
Local Stringvar final;
Local StringVar array store;

third:=firstcol+seccol;

store:=Split(third,"/");


For i:=1 to UBound(Split(third,"/")) Do
(

if (store[i]="")
then exit for;

if store[i] in final
then final:=final+store[i+2]+"/"
else final:=final+store[i]+"/"

);

Left (Replace(final,"//","/"), Length(Replace(final,"//","/"))-1);