我有几个自定义报告,我希望能够在功能区中添加触发它们的按钮。
有可能吗?如果是这样,任何例子都会很棒!
提前致谢!
答案 0 :(得分:8)
要从功能区按钮运行报告,您需要使用您将从按钮调用的功能创建一个js文件。
你需要4件事:
以下是示例。
function printOutOnClick() {
// This function generates a Print out
var rdlName = "SomeReport.rdl";
var reportGuid = "9A984A27-34E5-E011-B68F-005056AC478A";
var entityGuid = Xrm.Page.data.entity.getId();//Here I am getting Entity GUID it from it's form
var entityType = "4214";
var link = serverUrl + "/" + organizationName + "/crmreports/viewer/viewer.aspx?action=run&context=records&helpID=" + rdlName + "&id={" + reportGuid + "}&records=" + entityGuid + "&recordstype=" + entityType;
openStdDlg(link, null, 800, 600, true, false, null);
}
openStdDlg()是window.open()的包装器,MS Dynamics CRM本身也使用它,我也是。
要将其添加到功能区按钮,您需要在此帖How to start a Dialog from Application Ribbon (CRM 2011)中执行此操作,除非您需要调用报告而不是对话框。
答案 1 :(得分:1)
在RDL名称之后,Guid应该是RecordGuid而不是EntityGuid