我正在自定义Dynamics CRM 4,并希望修改Case实体的Form,以便为知识库文章查找字段(kbarticleid_ledit)的onchange事件添加一些JavaScript。但是,当我单击该字段的更改属性时,我收到一条错误消息:
此字段属于已锁定的部分,无法修改其属性。
我如何解决这个问题并进行编辑?是否有与customizing the Article view类似的解决方法?或者,我可以以某种方式破解数据库以“解锁”该字段吗?
答案 0 :(得分:2)
好的,我明白了 - 发布在这里以防万一其他人遇到同样的问题。您需要将Case实体的自定义项导出到XML并编辑XML。您可以通过查找XML中的相应元素并将属性 locklevel =“1”更改为 locklevel =“0”来“解锁”该部分。
然而,解锁它并没有帮助我编辑onchange事件代码。 CRM已经为该事件提供了一些代码,当我在UI中添加我的代码时,它向XML添加了第二个“onchange”事件!因此,我被迫手动编辑XML中的代码(当然使用正确的XML编码),然后重新导入并发布自定义项。
答案 1 :(得分:2)
您还可以从onload事件添加onchange代码。例如,如果锁定字段的id是lockedField,则可以执行类似的操作。
var field = crmForm.all.lockedField;
if (field)
field.attachEvent('onchange', onChangeEventHandler);
function onChangeEventHandler()
{
// do something
}