根据选项集字段值创建新记录
Create new record depending option set field value
我有一个包含一些必填字段的自定义实体。其中之一是 record type
字段,它的值可以是 internal
、external type 1
、external type 2
。还有很多 Subgrids
和字段,每个字段仅对 record type
个值之一可见。
有没有办法为一个实体制作一些表单,一些基本表单只包含 record type
字段,这会根据所选 record type
将我重定向到所选表单。该表单将仅包含 record type
所需的组件。如果有办法做到这一点,这是最好的做法,还是最好将所有内容保持在相同的形式并使用 JavaScript 设置可见性?
取决于表格的复杂程度。如果表单上发生的事情不多,show/hide 选项卡将是最佳选择。但是如果有很多字段和很多逻辑,最好使用不同的表单并使用表单选择器的 Navigate 属性 来强制用户根据选择使用不同的表单。让事情变得更干净。
如果表单有未保存的值,您可能还必须执行 Save 并导航。
function recordType_OnChange() {
Xrm.Page.data.save().then(function() {
Xrm.Page.ui.formSelector.items.get(formId).navigate(); //switch formId based on record type value
}, function(error) {
console.log(error);
});
}
我有一个包含一些必填字段的自定义实体。其中之一是 record type
字段,它的值可以是 internal
、external type 1
、external type 2
。还有很多 Subgrids
和字段,每个字段仅对 record type
个值之一可见。
有没有办法为一个实体制作一些表单,一些基本表单只包含 record type
字段,这会根据所选 record type
将我重定向到所选表单。该表单将仅包含 record type
所需的组件。如果有办法做到这一点,这是最好的做法,还是最好将所有内容保持在相同的形式并使用 JavaScript 设置可见性?
取决于表格的复杂程度。如果表单上发生的事情不多,show/hide 选项卡将是最佳选择。但是如果有很多字段和很多逻辑,最好使用不同的表单并使用表单选择器的 Navigate 属性 来强制用户根据选择使用不同的表单。让事情变得更干净。
如果表单有未保存的值,您可能还必须执行 Save 并导航。
function recordType_OnChange() {
Xrm.Page.data.save().then(function() {
Xrm.Page.ui.formSelector.items.get(formId).navigate(); //switch formId based on record type value
}, function(error) {
console.log(error);
});
}