【问题标题】:Javascript errors after Upgrading from CRM 4 to CRM 2011从 CRM 4 升级到 CRM 2011 后的 Javascript 错误
【发布时间】:2011-08-17 13:37:04
【问题描述】:

从 CRM 4 成功升级到 CRM 2011 后,一切正常,除了我们在几乎所有对话框(包括查找对话框)中不断收到 javascript 加载错误。 例如,当单击联系人的新按钮时,对话框出现并且工作正常,但显示此错误: 字段自定义事件出错。 字段:窗口 事件:加载 错误:对象不支持此属性或方法。

旧的 crm 4 系统根本没有定制。并且没有对其任何部分进行自定义 JavaScript 代码。

提前谢谢

我尝试调试其中一个实体的问题,发现错误发生在此脚本中:

var _formHierarchy =     '\x7b\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22tab\x22,\x22id\x22\x3a\x22\x7be92df784-47af-48cf-a9cb-ee4811b87d10\x7d\x22,\x22name\x22\x3a\x22task\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22column\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22section\x22,\x22id\x22\x3a\x22\x7bea054020-22ab-4178-aeb7-3d664d96f88c\x7d\x22,\x22name\x22\x3a\x22task description\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b7bd07330-cc88-4056-acd1-dede64bcf1ca\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22subject\x22,\x22name\x22\x3a\x22subject\x22,\x22controlType\x22\x3a0\x7d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b0fde8ba1-0edc-4953-b03d-51aca06cf83c\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22description\x22,\x22name\x22\x3a\x22description\x22,\x22controlType\x22\x3a0\x7d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22section\x22,\x22id\x22\x3a\x22\x7bE8A0A1AE-3F40-471e-B06E-B221779CA511\x7d\x22,\x22name\x22\x3a\x22task details\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7baf141e99-5e42-4650-8e41-851d2128c4bf\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22regardingobjectid\x22,\x22name\x22\x3a\x22regardingobjectid\x22,\x22controlType\x22\x3a3\x7d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b19816b9b-a8fc-4f92-818e-0a8c599f4107\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22ownerid\x22,\x22name\x22\x3a\x22ownerid\x22,\x22controlType\x22\x3a3\x7d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b4ad7b570-173d-4202-855d-0029ec5d40bc\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22actualdurationminutes\x22,\x22name\x22\x3a\x22actualdurationminutes\x22,\x22controlType\x22\x3a0\x7d\x7d,\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b05145c34-364e-4cb6-ac01-de4abbec3949\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22prioritycode\x22,\x22name\x22\x3a\x22prioritycode\x22,\x22controlType\x22\x3a4\x7d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7bcadc5253-c482-41f3-bd19-da0bf50c3274\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22scheduledend\x22,\x22name\x22\x3a\x22scheduledend\x22,\x22controlType\x22\x3a0\x7d\x7d,\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b5c548ccb-ea01-4ba8-bfa4-cef228e30aa6\x7d\x22,\x22child\x22\x3anull\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b61b62079-b04f-421a-997b-8b84164b54e7\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22category\x22,\x22name\x22\x3a\x22category\x22,\x22controlType\x22\x3a0\x7d\x7d,\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7bb200a0b7-a0d5-4eef-8b9c-8da47e7945fc\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22subcategory\x22,\x22name\x22\x3a\x22subcategory\x22,\x22controlType\x22\x3a0\x7d\x7d\x5d\x7d\x5d\x7d\x5d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22tab\x22,\x22id\x22\x3a\x22\x7bD87E07A3-11DA-4b8e-A8CC-F069EBC43FD4\x7d\x22,\x22name\x22\x3a\x22notes\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22column\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22section\x22,\x22id\x22\x3a\x22\x7b81A8A668-2716-4129-846D-E663546EC4FE\x7d\x22,\x22name\x22\x3a\x22notes\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x7b\x22__type\x22\x3a\x22cell\x22,\x22id\x22\x3a\x22\x7b169ed329-a2f4-43b6-8149-17df52f49381\x7d\x22,\x22child\x22\x3a\x7b\x22id\x22\x3a\x22notescontrol\x22,\x22name\x22\x3anull,\x22controlType\x22\x3a0\x7d\x7d\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d,\x7b\x22__type\x22\x3a\x22row\x22,\x22children\x22\x3a\x5b\x5d\x7d\x5d\x7d\x5d\x7d\x5d\x7d\x5d\x7d';
Sys.Application.add_load(crmFormOnLoadHandler);
function crmFormOnLoadHandler()
{

  window.setTimeout('crmForm_window_onload_handler\x28Xrm.Page.ui\x29', 0);
}

function displayError(controlName, eventName, errorDescription)
{
alert('There was an error with this field\x27s customized event.' + '\n\n' +    'Field\x3a' + controlName + '\n\n' + 'Event\x3a' + eventName + '\n\n' + 'Error\x3a' +   errorDescription);
}

function crmForm_window_onload_handler(eventObj,eventArgs)
{

try
{
var   eContext=Mscrm.FormUtility.constructExecutionObject(eventObj,0,null,null);
    eContext=Mscrm.FormUtility.constructExecutionObject(eventObj,0,null,eContext)
    Mscrm.Form_onload();

}
catch(e)
{
displayError('window', 'onload', e.description);

}
if(Mscrm.ClientApiConstants!=null&&Mscrm.ClientApiConstants.primaryEntityId!=null){var     oPrimaryEntity = $find(Mscrm.ClientApiConstants.primaryEntityId);if(oPrimaryEntity!=null)     {initialFormXml=oPrimaryEntity.serialize(Mscrm.SerializationMode.onlyDirtyValues);}}}

行 Mscrm.Form_onload();是导致错误发生的原因。 该文件名为 formscript.js.aspx

【问题讨论】:

    标签: javascript dynamics-crm dynamics-crm-4 dynamics-crm-2011


    【解决方案1】:

    查看此网页。我们遇到了同样的问题,最终导致 IIS 7.0 安装不正确。我们需要重新安装 RewriteModule(包含在 CRM 安装 CD 中) http://blogs.msdn.com/b/emeadcrmsupport/archive/2011/08/31/crm-2011-form-errors-when-opening-non-customised-forms-object-doesn-t-support-property-or-method-form-load.aspx

    【讨论】:

      【解决方案2】:

      这是一个服务器端问题。我不知道为什么会这样。我们还尝试进行安装修复,但没有解决。最后,我们在新服务器上安装了新的 CRM 2011 副本,导入数据库并运行数据迁移管理器。错误消失了。

      【讨论】:

        【解决方案3】:

        打开表单后,转到顶部的自定义选项卡并选择自定义表单。在表单自定义页面上,单击表单属性。您是否看到第一个网格中列出了任何库?如果是这样,那么可能有一些您不知道的为 4.0 环境编写的自定义 JavaScript。您可以编辑库或删除它们。保存,然后发布。

        【讨论】:

        • 不,那里没有库,除了这不会以一种形式发生...例如,当我在自定义部分打开 Customize This System 对话框时,它也会出现,或者当我点击价目表查找时。
        • 如果您有可用的 IE8 或 IE9,请打开一个抛出错误之一的页面 -> 按 F12 打开开发工具 -> 单击脚本选项卡 -> 单击开始调试 -> 刷新页。如果存在某种类型的脚本错误,开发工具将停止它,您可以对其进行检查。如果开发工具没有因错误而停止,这通常意味着某处存在语法错误。在这种情况下,我建议您将您的 web.config 与 CRM 的开箱即用 web.config 进行比较,以查看是否有任何正在运行的注入器模块可能导致问题。
        • 我实际上尝试使用开发工具调试器来获取幕后发生的实际错误,但没有运气。它不会因为任何地方的错误而停止......我会按照你的建议尝试检查网络配置。
        • 关闭IE,在你的机器上安装Fiddler,打开Fiddler,在IE中打开CRM。当您看到有关脚本错误的提示时,将其保留并翻转到 Fiddler。左侧窗格中列出的任何会话是否为红色?如果是这样,请对这些请求进行故障排除。如果没有,当您切换到 Fiddler 时,检查左侧列出的最后几个会话。对这些请求的响应是否看起来具有正常的内容? (记住,不要忽略 IE 中的错误消息)。
        • 好的,我得到以下文件的一些 404 结果:{url}/%7B634374628890000000%7D/WebResources/Application_ribbon.js {url}/%7B634374628890000000%7D/WebResources/Ribbon_main_system_library.js 和因为它是新的任务表单,所以我得到了这个:{url}/%7B634374628890000000%7D/WebResources/Task_main_system_library.js
        【解决方案4】:

        您是否清除了浏览器的缓存? 也许 Dynamics CRM 4 的旧脚本仍被缓存并使用新脚本。

        【讨论】:

        • 我确实多次清除缓存,还删除了所有浏览器历史记录和临时文件。这个问题不仅仅发生在我的笔记本电脑上……它发生在公司的所有员工身上。
        【解决方案5】:

        通过 Rhett Clinton 的 this tool 运行您的代码可能会有所帮助。它在我的第一个 4.0 到 2011 项目中运行良好,并且转换是未来 JavaScript 迁移的一个很好的参考。

        【讨论】:

        • dpii,没有代码可以运行它...系统没有自定义,如果您打开实体表单,您将在其中找不到任何js库或代码,此外,错误也发生在系统表单中,例如 Customize this system 表单。
        猜你喜欢
        • 2017-08-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多