4,816
社区成员
发帖
与我相关
我的任务
分享
stringvar sret;
numbervar iret;
//第一行,初始化
if onfirstrecord then
(
sret:={颜色字段};
iret:={数量字段};
)
else
(
//如果当前行跟前一行是同一种颜色,进行数量累加
if {颜色字段}=previous({颜色字段}) then
iret:=iret+{数量字段}
//否则,组合前一阶段的颜色及数量累计,加一个chr(13)进行换行。并组合当前新的颜色字段,并重新计数
else
(
sret:=sret +':' +cstr(iret,0) + chr(13) +{颜色字段};
iret:={数量字段};
)
)
;
//返回值
sret +':' +cstr(iret,0)