【发布时间】:2018-01-15 18:12:00
【问题描述】:
我正在使用 CRM 2016,并且我有一个自定义实体。提交新记录后,我需要将大多数字段设为只读。
如何在提交表单后禁用对大多数字段记录的编辑?
【问题讨论】:
-
您使用的是 onPremise 还是 Online?到目前为止,您尝试过什么?
标签: javascript dynamics-crm crm dynamics-crm-2016
我正在使用 CRM 2016,并且我有一个自定义实体。提交新记录后,我需要将大多数字段设为只读。
如何在提交表单后禁用对大多数字段记录的编辑?
【问题讨论】:
标签: javascript dynamics-crm crm dynamics-crm-2016
如果表单只包含几个字段,您可以创建一个业务规则来禁用这些字段。
或者,如果您有很多字段,您可能想使用 JavaScript:
function onLoad(list) {
if (Xrm.Page.ui.getFormType() == 2) {
var list = ['field1', 'field2', 'field3', 'field4'];
disableFields(list);
}
}
function disableFields(list) {
for (var i = 0; i < list.length; i++) {
Xrm.Page.getControl(list[i]).setDisabled(true);
}
}
而且,现场级安全性是另一个值得探索的选项。
如果您想禁用所有字段,您可以配置安全角色,以便当您将记录分配给其他用户或团队时,它对您想要的用户变为只读。
此外,为了记录,此 JavaScript 命令将禁用所有字段:
Xrm.Page.ui.controls.forEach(function (a) { a.setDisabled(true) });
【讨论】: