在Sharepoint上发布的SSRS报告未按预期显示正则表达式

时间:2012-11-09 15:38:54

标签: regex sharepoint deployment reporting-services

我正在尝试发布与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,等),“分配给”字段中只有一个人。

我无法为此找到解决方案,并且我不确定如何在部署时以我想要的方式呈现它。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

怎么做

.replace(Fields!Assigned_To.Value, "([0-9]+;#|)([^#][^;]*);#[0-9]+;#", "$2\n")