Dynamics CRM 2011编程系列(39):Ribbon Button + GhostHook

来源:互联网 发布:手机淘宝上怎么寄快递 编辑:程序博客网 时间:2024/05/29 19:25

     本文来聊聊如何用Ribbon Button来调用GhostHook以达到快速呈递报表的效果。其实也就是在Ribbon Button按钮的单击事件中收集需要传递的参数,并将它们传递给GhostHook。我们来看个例子(Ribbon按钮的添加可以参阅文章Dynamics CRM 2011 编程系列(31):Ribbon的开发一(添加按钮,选项卡,Jewel)和 Dynamics CRM 2011中常用的辅助工具)。

操作步骤

 

图1

图2

图3

图4

 

使用到的代码

function LoadParameterContainer(){    var p1=Xrm.Page.getControl("new_p1").getAttribute().getValue();  var p2=Xrm.Page.getControl("new_p2").getAttribute().getValue();  var p3=Xrm.Page.getControl("new_p3").getAttribute().getValue();  var p4=Xrm.Page.getControl("new_p4").getAttribute().getValue();  var p5=Xrm.Page.getControl("new_p5").getAttribute().getValue();  var p6=Xrm.Page.getControl("new_p6").getAttribute().getValue();  var p7=Xrm.Page.getControl("new_p7").getAttribute().getValue();  var p8=Xrm.Page.getControl("new_p8").getAttribute().getValue();  var p9=Xrm.Page.getControl("new_p9").getAttribute().getValue();  var p10=Xrm.Page.getControl("new_p10").getAttribute().getValue();  var RDL_NAME="ParameterCollection.rdl";  var RDL_ID="%7b1CCDA0E2-BCE6-E111-A3BB-00155D00190D%7d";   p1=escape(p1);   p2=escape(p2.toLocaleDateString());   p4=escape(p4);   p5=escape(p5);   p6=escape(p6);   p7=escape(p7);   p8=escape(p8);   p9=escape(p9);   p10=escape(p10);  var path="p1="+p1.toString()+"&p2="+p2.toString()+"&p3="+p3.toString()+"&p4="+p4.toString()+"&p5="+p5.toString()+"&p6="+p6.toString()+"&p7="+p7.toString()+"&p8="+p8.toString()+"&p9="+p9.toString()+"&p10="+p10.toString()+"&RDL_Name="+RDL_NAME+"&RDL_Id="+RDL_ID;   window.open("../../ISV/Report/GhostHook.aspx?"+path.toString(),"GhostHook","height=1000,width=800,left=,top=,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizeable=no","false");}


小结

   本文演示了一个Ribbon Button+GhostHook的小Demo。相信这个Demo能满足大家80%的日常开发需求吧,大家发挥想象力一起来玩转GhostHook吧!

 

资源下载

使用到的报表

 

原创粉丝点击