无法将值设置为自定义字段Dynamics 365

Aji*_* O. 1 javascript dynamics-crm dynamics-crm-365

背景

  • 我在Dynamics 365中创建了一个名为的自定义字段new_statecode.
  • 我正在使用HTML webresource来获取用户的输入,我后来打算将其传递给上面提到的自定义字段.

    <input id="statecode" type="text" placeholder="">

  • 我编写了一个Java脚本来获取用户输入的值并在自定义字段中设置值.

这是脚本的代码.

document.getElementById("submitButton").addEventListener("click", function (event) {
    var strstatecode = document.getElementById("statecode").value;
    window.parent.Xrm.Page.data.entity.attributes.get("new_statecode").setValue(strstatecode);
});
Run Code Online (Sandbox Code Playgroud)

问题

这是我在控制台中遇到的错误.

Unable to get property 'setValue' of undefined or null reference
Run Code Online (Sandbox Code Playgroud)

我在尝试使用getValue属性时也遇到了类似的错误.

显然这是一个非常常见的问题,但其他解决方案都不适用于我.

到目前为止我做了什么

  • 我看过这里,这里,这里和其他很多帖子.

  • 我检查了自定义字段名称.没有拼写错误或拼写错误.

  • 我试过用 window.parent.Xrm.Page.getAttribute("new_statecode").setValue(strstatecode);

  • 我尝试创建一个新的自定义字段,并尝试将值设置为它.那也行不通.它给出了同样的错误.

注1:我认为值得一提的是,我发布的代码已经过编辑和缩短,以符合SO 的mcve标准.我的HTML网络资源中还有6个其他输入(街道地址,城市等),我成功地将数据保存到CRM中各自的字段中.唯一的区别是那些不是自定义字段.

注意2:我使用的是Dynamics 365版本1612(8.2.1.410).

我该如何解决这个问题?还有什么我应该看的吗?也许在创建自定义字段时我应该注意什么?

原谅我在CRM术语上缺乏知识.

jcj*_*cjr 5

属性/字段需要存在于要访问的表单Xrm.Page.getAttribute(attributeName).

但是,它可以隐藏,也可以放在隐藏的部分或标签中.