我正在尝试发布与SQL Server 2012一起安装的SharePoint 2010(集成模式)的报告。该报告是在Visual Studio 2010中创建的。数据源是具有截止日期和“已分配”的项目的SharePoint列表为了“田野。这些项目可能有一个或多个人被分配来处理它,Sharepoint将结果作为一个字段返回,如下所示:
1234;#Person 1;#2345;#Person 2;#444;#Person 3
我想删除数字(由SharePoint分配的ID并且长度不同),以及“;#”,并在报告的Tablix的单个单元格中的单独行上返回名称。
Person 1我在报告中使用了这个表达式:
Person 2
Person 3
=replace(System.text.regularExpressions.regex.replace(Fields!Assigned_To.Value,"[0-9]+;#",""),";#",VBCRLF)
当我预览报告时,它会显示我想要的方式,但是当报告部署到Sharepoint时,它会复制记录,如果有3个人分配给该项目,则显示3次(或者如果有的话,则显示两次2,等),“分配给”字段中只有一个人。
我无法为此找到解决方案,并且我不确定如何在部署时以我想要的方式呈现它。任何帮助表示赞赏!
答案 0 :(得分:0)
怎么做
.replace(Fields!Assigned_To.Value, "([0-9]+;#|)([^#][^;]*);#[0-9]+;#", "$2\n")