我在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数据连接器。
答案 0 :(得分:2)
显然,您可以使用共享数据源引用,但您必须将其命名为MSCRM_DataSource
,就像MSCRM用于其报告的数据源一样。
如果你在MSCRM上传这样的报告,MSCRM会识别出这一点并自动将数据源更新为有效的/MyOrg_MSCRM/CustomReports/MSCRM_DataSource
数据源,和也会添加预过滤修改。
答案 1 :(得分:0)
您已创建了用于多个报告的共享数据源。通过CRM上传报告时,不支持此功能。每个报告都必须在报告中嵌入自己的连接详细信息。
我认为原因是,正如您尝试的那样,报告会被修改以添加隐藏的CRM参数并更改查询,以便进行预过滤。
要解决此问题,您必须修改每个报告并直接在报告中输入“连接详细信息”,而不是使用“共享连接”。它有点烦人,但应该给你你期望看到的结果