在水晶报表中用逗号分割字符串

2020-09-07 23:12发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我们有一个数据库字段,其中包含以下数据

abc

abc,cdef,ghuyt

abc

abcde,abc

xyz

我们需要一个公式将上述属性拆分为不同的行,并在每个拆分后的值上创建一个组。

环境:Crystal Reports 2016/WebI

Business Objects 4.2

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我们有一个数据库字段,其中包含以下数据

abc

abc,cdef,ghuyt

abc

abcde,abc

xyz

我们需要一个公式将上述属性拆分为不同的行,并在每个拆分后的值上创建一个组。

环境:Crystal Reports 2016/WebI

Business Objects 4.2

付费偷看设置
发送
3条回答
zhangjiyang1323
1楼-- · 2020-09-07 23:23

您好Praveen

Crystal无法创建行。 在将其引入Crystal之前,您必须在数据库中执行此操作。 Split函数可以将数组中的元素分开,但不能将它们视为单独的记录。

Brian

Aaron 3364
2楼-- · 2020-09-07 23:48

实际上,如果您可以在数据库中添加一个简单的表,则可以在Crystal中执行此操作。

最大数量是多少

SC_Yao
3楼-- · 2020-09-07 23:31

假设元素的最大数量为5,则添加一个名为REPEATER的表,该表具有一个名为INDEX的整数列,其中有5行:1、2、3、4, 5

然后,与表交叉联接,因此每一行重复5次。

创建一个公式,该公式将根据INDEX返回第N个元素。
该公式使用Split函数创建元素数组。
对于每个索引值(从1到5),它返回Elements数组
中的第n个元素(如果该数组小于INDEX值,则返回"")。

这应该有效:

 Stringvar数组元素:= Split({YourField},",");
 Numbervar N:= UBound(Elements);
 如果{REPEATER.INDEX} <= N然后
    元素[{REPEATER.INDEX}]
 其他
    ""; 

过滤出以""作为结果的行。
按该公式将报告分组。 瞧!

一周热门 更多>