如何在BOXI 3.1 WebI中连接多个行中的单个字段?

2020-08-24 12:43发布

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

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


嗨,

我正在使用BOXI 3.1 WebI,并且需要在逗号分隔列表中显示一列的多个值。 我尝试使用水平表,但是如果列表超出了右边距,它将创建一个新页面,而不是像我们想要的那样包装到下一行。 我可以使用WM_CONCAT聚合函数在Oracle sql中执行我想做的事情,但是在WebI报表中没有找到做到这一点的方法。 有没有人想办法做到这一点?

谢谢

John Klein

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

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


嗨,

我正在使用BOXI 3.1 WebI,并且需要在逗号分隔列表中显示一列的多个值。 我尝试使用水平表,但是如果列表超出了右边距,它将创建一个新页面,而不是像我们想要的那样包装到下一行。 我可以使用WM_CONCAT聚合函数在Oracle sql中执行我想做的事情,但是在WebI报表中没有找到做到这一点的方法。 有没有人想办法做到这一点?

谢谢

John Klein

付费偷看设置
发送
15条回答
太Q了
1楼 · 2020-08-24 13:06.采纳回答

Hi Jothi,

黑丝骑士
2楼-- · 2020-08-24 13:04

嗨,约翰,

您也可以尝试使用以下选项来格式化单元格:

在"属性"窗格中:检查"自动调整宽度" 和"自动调整高度",然后是"自动换行"框。

我希望对您有所帮助。

Fadoua

SAP小菜
3楼-- · 2020-08-24 13:18
Haoba3210
4楼-- · 2020-08-24 13:17

您好,Jothi,添加图像时遇到了麻烦-该论坛采用什么格式?

谢谢

John

三十六小时_GS
5楼-- · 2020-08-24 12:58

我在上一个项目中做了一些事情,我真的不记得了,但是我确实有代码,我必须要编写4或5个变量。 我只是在这里复制粘贴。 可能对您有帮助,所以它们是两种方法

方式1:

Var_Ctegory C9

= If(IsNull(Previous([Var_ Max concatnate C9])); Substr([Var_ Max concatnate C9]; 1; Length([Var_ Max concatnate C9])-2); Substr([Var_ Max concatnate C9] ]; 1; Pos([Var_ Max concatnate C9]; Previous([Var_ Max concatnate C9]))-3))

Var_ Max合并C9

= [Var concate Project C9]其中([[Project Concat-9] = [Var_Max_Project C9])

Var_Max_Project C9

= Max([Project Concat-9])In([国家名称])

Var串联C9项目

= [Project Concat-9] +"," +上一个(自我)

Concat-9项目

=([[Country(Final Global ICF Available)]。[Project Number])其中(Not(IsNull([Country(Final Global ICF Available可用]]。[Final Global Icf Avail Ac]))和Not(IsNull( [Var_Country(可用最终全球ICF)。第一个站点启动了AC])))

方式2:

Var_Ctegory 8 NEW

= If(IsNull(Previous([Var_Ctegory 8])); Substr([Var_Ctegory 8]; 1; Length([Var_Ctegory 8])-2); Substr([Var_Ctegory 8]; 1; Pos([Var_Ctegory 8]; Previous([Var_Ctegory 8]))-3))

Var_Ctegory 8

= Substr([Var_ Max concatnate 8]; 3; Length([Var_ Max concatnate 8])-2)

Var_ Max级联8

= [Var concate Project 8]其中([[Project Concat-F] = [Var_Max_Project 8])

Var_Max_Project 8

= Max(([Project Concat-8]))In([国家名称])

Var串联项目8

= [Project Concat-8] +"," +上一个(自我)

项目Concat-8

=如果不是(IsNull([Var_Final可用协议]))和Not(IsNull([国家(Fal可用协议)(1)]。[选择第一个站点-实际]))然后[项目编号]

打个大熊猫
6楼-- · 2020-08-24 13:07

这是一篇很棒的文章,也是一个很好的解决方案,我已经寻找了一段时间-我很高兴终于得到了它……

首先,我不明白为什么开发人员会发现很难包含一个聚合函数,该聚合函数应该像sum函数添加一样,将文本字段组合为(','或';'或'space'或其他任何东西) 组中的所有数字字段。

上面的解决方案非常周到并且效果很好,但是该过程中的最后一个技巧并不总是导致所需的输出; 我不明白为什么我们应该使用此技巧,而不能在每个[Line]中重置连接过程。

[VAR Concat类别] = [类别] +"," +上一个(自我;([行]])

这将在每个[Line]中保留连接,因此可以为每个LINE获取最后一个(最大)运行的连接,而无需上述解决方案[VAR Category]中的最后一个变量

闻人可可
7楼-- · 2020-08-24 13:08

嗨,约翰,

这篇文章真的非常有用。 但是我正在使用BO 4.1,变量[VAR Concat类别] = [类别] +"," + Previous(Self)没有给出应有的结果。


我也附上了屏幕截图。 请帮帮我,因为我必须在其他一些报告中实施此逻辑。



一周热门 更多>