2015-09-23 35 views
1

我们已经在线迁移到CRM 2015,并且我们遇到了“完成的电话呼叫”问题。 当我们在说明字段(即textarea)上打开其中一个点击表单然后关闭它时,我们会收到一条文字消息,提示“您的更改尚未保存。”要保留在页面上以便您可以保存更改,请单击取消。“在线CRM 2015上没有脏字段的脏表格

我们对那场运行任何代码,也不是文字变化。 我假设在窗体上有一些缩进/新行/托架优化运行,但它困扰着我们。

我们有自动保存,我们想保持它。我知道我可以通过强制自动保存来解决这个问题,但是我们必须在发生这种情况的每个领域都做到这一点吗?

+1

你没有明确地说 - 是否有任何代码在窗体的Load或“Retrieve”插件上运行?这只适用于完成的电话吗?或任何电话?如果打开的电话正在做同样的事情,您可以通过打开表单并点击保存 - 然后查看审核历史记录,轻松找出罪魁祸首。 –

回答

3

你应该看看,看看哪些字段(S)被认为是肮脏的领域。如果使用Internet Explorer在CRM中打开完成的电话呼叫,然后按F12打开开发人员工具,然后单击调试程序选项卡/部分,则可以这样做,具体取决于您使用的是哪个版本。在控制台窗口中,加入这一行,这应该显示哪些字段CRM认为是“肮脏的”领域 - alert(Xrm.Page.data.entity.getDataXml());

您也可以使用JavaScript的一个小一点,使用抓住这一信息,并将其复制到剪贴板为你window.prompt函数,如下面代码所示(并且可以从Browser调试器控制台窗口运行)。

只是为了确认我有你的情况下是正确的,在完成电话的说明字段时,点击你只看到了这个?

var dirtyFields = frames[0].Xrm.Page.data.entity.getDataXml(); 
window.prompt("Copy dirty fields to clipboard: Ctrl+C,Enter",dirtyFields); 

这样,你应该能够至少看到什么导致的领域被认为是肮脏的。

这是与新的CRM 2015年春季发布,更新1,还是原来的CRM 2015年网上发布?如果您点击右上角的CRM设置图标,然后选择关于查看版本号,您应该能够看到版本号。

我在编辑此内容(2016/3/22),以反映您也可以使用此JavaScript小书签看到肮脏的字段(从收藏夹栏中的收藏夹中运行,或者在打开后立即在地址栏中输入一行有问题的Microsoft CRM记录)。我会运行这两个来确定哪些字段是脏的。我从http://blog.sonomapartners.com/2011/10/trying-to-catch-my-form-ridin-dirty-.html得到了这个结果,并且已经通过Internet Explorer和Microsoft Dynamics CRM 2015部署进行了测试,但它也应该可以在Microsoft Dynamics CRM 2013,2015和2016中使用。提到的另一件事是,如果是在查找使用的CRM场在值连续的几个空格,这可能会导致被触发脏字段通知,即“乍得Rexin”与“乍得Rexin”

javascript:var message="The following fields are dirty: \n";window.frames[0].Xrm.Page.data.entity.attributes.forEach(function(attribute,index){if(attribute.getIsDirty()==true){message+="\u2219 "+attribute.getName()+"\n";}});alert(message); 
+0

我在一艘类似的船上。我尝试了列出的JavaScript并获得“”作为回应。我有目的地把场弄脏了,这个场在标签之间出现。我强制保存,它仍然告诉我,当我离开时,我需要保存。思考? – Guy

+0

类似的问题,你解决了吗? –