单条数据多值合并
问题描述
报表数据如下:
想要实现数据合并展示 12,13,14;报表自带功能能做到合并的只有 ds.group()函数以及同值合并,使用这 2 种方法我们会发现数据展示为:
这样显示是无法达到我们想要的效果,针对类似需求我们应该如果实现的?
解决方案
A1:=ds1.select(field1)
B1:=split(A1,“,”),将数据拆分
A2:=esproc(“?.id()”,B1{})
报表内置函数 esproc()可以动态解析并计算集算器表达式,集算器 A.id{} 函数等同与 distinct,所以我们通过 esproc()调用集算器函数 A.id() 即可实现。
esproc()
函数说明:
动态解析并计算集算器表达式,等同于在集算器中执行 eval 函数。
语法:
esproc(StringExp,{argExp})
参数:
StringExp 待计算的表达式串
argExp 参数表达式