MS CRM 2011 如何创建基于SQL的自定义报表,并使用数据预筛选(Pre-Filtering)
原创地址:http://www.cnblogs.com/jfzhu/archive/2012/10/03/2711123.html
转载请注明出处
在本文中我将介绍如何使用Business Intelligence Development Studio来创建一个自定义报表。CRM的报表有两种,基于SQL和基于Fetch的。On-Premise两种都可以使用,而Online只可以使用Fetch的报表。下面我就介绍一下如何创建基于SQL的的报表,并且在报表中使用数据预筛选。所谓数据预筛选是指,你可以在grid中选择一条或几条数据,然后基于你的选择的数据运行报表,或者你也可以在表单中运行这基于该表单数据的报表。
(1) 打开Business Intelligence Development Studio,创建一个新的report server 项目;
(2) 在项目管理器中,右键单击Reports文件夹,添加新项目,选择report;
在Report Data面板中,选择New –> Data Source
完成Data Source的属性:
(3)接下来在Report Data面板中添加一个新的Data Set。使用以下的Query为: SELECT name, estimatedclosedate, estimatedvalue FROM FilteredOpportunity
(4) 在报表中添加一个table,如下图所示:
(5)到这里,一个自定义报表基本上就创建好了。我们可以把它上传到CRM中看一看结果。
上传之后,你会发现,不论你在哪运行这个报表,这个报表都返回所有的opportutnity,不具有数据预筛选功能,所以我们要对报表进行修改。
(6) 要开启数据预筛选功能,需要使用一个CRM系统参数 CRM_FilteredEntity。当然Entity在我们的报表中是Opportunity。
在Report Data面板中添加一个参数:
(7) 更改Dataset 的属性: 首先添加一个参数
(8) 然后更改Query
declare @sql as nVarchar(max)
set @sql = '
SELECT name, estimatedclosedate, estimatedvalue
FROM (' + @CRM_FilteredOpportunity + ') as fo'
exec(@sql)
(9) 为了方便大家理解参数CRM_FilteredOpportunity 的工作原理,我们在报表中添加一个Textbox,把CRM_FilteredOpportunity 参数的值显示在里边。
(10)要注意,先在CRM中删除原来的报表,然后再重新上传,不然CRM是不知道我们启用了数据预筛选功能的。
(11) 这回当我们在opportunity的grid中运行报表时,我们看到数据预筛选功能开启了:
(12)但是当我们运行报表后,发现CRM_FilteredOpportunity 参数的值有点奇怪。其中多了一条,大概的意思是说,在最近的30天内有修改过的opportunity。
那么这个“最近30天修改过的”筛选条件是从哪来的,并在哪修改呢?
(13)原来在CRM中,我们的报表被设置了默认的Filter,我们可以在报表的grid中选中我们的报表,然后点击Edit Default Editor来进行修改。
(14)删除掉 Modified On Last X Days 30, 并保存就可以了。
(15) 在运行一次试试:
在本文中,我向大家介绍了如何创建基于SQL的自定义报表,并且使用数据预筛选(Pre-Filtering)的功能。在下一篇文章中,我会向大家演示如何创建基于Fetch的报表,并开启数据预筛选功能的。
转载于:https://www.cnblogs.com/jfzhu/archive/2012/10/03/2711123.html
- [自我总结]如何使用VS2005中的OLEDB的JET SQL驱动来动态创建数据表!
- MS CRM2011 通过sql插入数据
- Silverlight 3中如何创建Linq to SQL项目实现MS-SQL数据的操作
- crm2011制作报表使用预筛选
- ReportView如何使用构造SQL语句带参数的存储过程创建报表以及为rdlc传递参数
- crm创建基于fetch的自定义报表
- MS CRM 2011 如何创建一个Silverlight 程序
- 使用基于轮询的SQL数据缓存依赖
- 使用RDLC报表(二)--使用自定义数据集
- Windows Azure真实案例:Infosys Technologies --使用SQL Data Services(现为SQL Azure)为汽车经销商创建了基于云的方案
- [转]使用基于轮询的SQL数据缓存依赖
- SQL研究(MS-SQL)之一:筛选数据
- oracle pl/sql中使用自定义数据类型
- 采用数据代理如何使用SqlDataAdapter
- 如何使用动态创建模板列并绑定数据(GridView,Repeater,DataGrid)
- Flex中如何创建一个自定义数据显示Tips的slider控件。鼠标按住滑标察看效果
- MS BI 中的Ad - hoc 报表 (即席报表) 基本概念以及如何创建和使用
- Windows Azure真实案例:Infosys Technologies --使用SQL Data Services(现为SQL Azure)为汽车经销商创建了基于云的方案
- MS CRM 2011中的解决方案——使用
- 使用ERStudio创建数据表ER图并导出数据表的SQL(DDL)语句