我的机会表单上的字段的onChange事件被调用两次,并且我试图追踪第二个调用的来源。我已经将执行上下文传递给了onChange函数,但不知道从那里看到调用的来源。现在我想知道是否有办法查看XRM页面的未决事件,有人知道这些信息在哪里吗?在Dynamics CRM中查看onChange字段事件的源函数
我的代码基本上是这样,绑定到机会表格的onLoad
。可能有插件或第三方库或更新该字段的东西,但没有任何内容跳出。
function onLoad() {
Xrm.Page.data.process.addOnStageChange(handleStageChange);
}
function handleStageChange() {
var dateFieldName = "new_enteredstage1"
var dateFieldAttr = Xrm.Page.getAttribute(dateFieldName);
if (dateFieldAttr) {
dateFieldAttr.setValue(new Date());
}
}
如果在阶段更改发生时new_enteredstage1为null,则会发生2个调用,并且设置该值并立即将其重置为空。如果new_enteredstage1具有值,则按预期更新该值。再次,可能会有一些第三方代码丢失,但我不知道如何追踪它。
UPDATE:
这只是发生在日期字段,它发生在所有日期字段。如果我用数字字段替换代码,则该值不会重置为空。
从来没有经历过这一点,这CRM的版本是它,您可以在问题的事件处理程序? – Alex
更新了问题以添加我的代码。 Microsoft动态365 版本1612(8.2.1.207)(DB 8.2.1.207)在线 – CamJohnson26
我会从复制函数(即,使handleStageChange,handleStageSelected)开始,以便添加两个不同的处理程序,可能有助于追踪发生了什么 – Alex