通过CRM2016添加SSRS报告:预过滤不起作用?

时间:2016-11-20 12:10:44

标签: reporting-services dynamics-crm dynamics-crm-2016

我在Visual Studio中创建了一个自定义Reporting Services报表,旨在将自动预过滤用作described here

所以,我按如下方式创建了我的查询:

select fullname, createdbyname, createdon
from FilteredContact as CRMAF_FilteredContact
order by createdon desc

但是,一旦我根据报告的.rdl文件(作为described under "Deploying the Report" here)在CRM中添加新报告,它就会很好地添加报告,但会发生两件事:

1)此报告的共享数据源初始无效,CRM和SSRS都拒绝使用错误呈现它: "The report server cannot process the report or shared dataset. The shared data source 'MyOrg_MSCRM' for the report server or SharePoint site is not valid. Browse to the server or site and select a shared data source. (rsInvalidDataSourceReference)"

我必须手动将数据源从SSRS内部设置为/MyOrg_MSCRM/CustomReports/MSCRM_DataSource以使其正常工作。

2)报告未显示在“在选定记录上运行”下,但在“在所有记录上运行”下,并且不执行任何预过滤。<登记/> 此外,当我从SSRS下载.rdl时,它没有修改它,既没有添加额外的参数也没有更改SQL查询。正如我预期的那样based on this information

我可能做错了什么?

我在内部使用MS CRM 2016更新1(v8.1.0.359),在同一台计算机上安装了SQL Server 2014 Reporting Services和SRS数据连接器。

2 个答案:

答案 0 :(得分:2)

显然,您可以使用共享数据源引用,但您必须将其命名为MSCRM_DataSource,就像MSCRM用于其报告的数据源一样。

如果你在MSCRM上传这样的报告,MSCRM会识别出这一点并自动将数据源更新为有效的/MyOrg_MSCRM/CustomReports/MSCRM_DataSource数据源,也会添加预过滤修改。

答案 1 :(得分:0)

您已创建了用于多个报告的共享数据源。通过CRM上传报告时,不支持此功能。每个报告都必须在报告中嵌入自己的连接详细信息。

我认为原因是,正如您尝试的那样,报告会被修改以添加隐藏的CRM参数并更改查询,以便进行预过滤。

要解决此问题,您必须修改每个报告并直接在报告中输入“连接详细信息”,而不是使用“共享连接”。它有点烦人,但应该给你你期望看到的结果