我正在使用Microsoft Dynamics CRM(off premise)
MicrosoftDynamics®CRMOnline Spring '14(6.1.0.575)
通过javascript SDK调用来创建一个触发插件的实体。我们在预验证中在插件中进行自定义验证。
Javascript从这里创建调用示例 - > http://msdn.microsoft.com/en-us/library/gg334427.aspx
//Create the Account
SDK.REST.createRecord(
account,
"Account",
function (account) {
writeMessage("The account named \"" + account.Name + "\" was created with the AccountId : \"" + account.AccountId + "\".");
writeMessage("Retrieving account with the AccountId: \"" + account.AccountId + "\".");
retrieveAccount(account.AccountId)
},
errorHandler
);
然后我可以使用errorHandler函数处理错误,如下所示:
function errorHandler(error) {
writeMessage(error.message);
}
但是,我试图从InvalidPluginExecutionException中在CRM错误对话框中显示错误。它在我从表单创建实体时显示它,但是当我通过javascript进行调用时,我似乎无法将其显示在CRM错误对话框中。我想继续使用CRM主题,不要在javascript中使用alert(),并让用户能够下载我们发回的完整异常。
是否可以在CRM中调用dlg_error.aspx页面并使用我们的错误消息填充它?我现在正在抓稻草,任何事情都会有所帮助。谢谢!
答案 0 :(得分:3)
如果您使用的是CRM 2013,我建议您使用Workflow而不是JavaScript来创建记录。
答案 1 :(得分:0)
您可以尝试执行同步jQuery ajax方法,而不会捕获错误并查看会发生什么。从jScript创建一个正在使用CRM服务的RESTful端点的记录,我不确定是否会以相同的方式提升错误。如果您想尝试自己打开错误对话框,请尝试使用Fiddler。使用新的同步工作流功能也可以解决问题。