2016-11-14 4 views
0

У меня есть настраиваемая сущность с несколькими обязательными полями. Одним из них является поле record type, которое может иметь значение internal, external type 1, external type 2. Существует также много Subgrids и полей, и каждый из них виден только для одного из значений record type.Создать новую запись в зависимости от заданного значения поля установки

Есть ли способ сделать несколько форм для одного объекта с некоторой базовой формой, содержащей только поле record type, которое перенаправит меня на выбранную форму в зависимости от выбранного record type. Эта форма будет иметь только компоненты, необходимые для record type. И если есть способ сделать это, это лучшая практика, или было бы лучше сохранить все на одной и той же форме и установить видимость с помощью JavaScript?

+1

Вы пробовали? Если да, пожалуйста, поделитесь своей попыткой. Если нет, попробуйте сами и разделите эту попытку. –

+0

Я попытался использовать диалог с шагом «Создать запись», но он не позволил мне выбрать форму, которую я хочу создать, она открывает основную форму по умолчанию –

ответ

2

В зависимости от сложности формы. Если в форме мало что происходит, то показать/скрыть вкладки будет лучшим вариантом. Но если есть много полей и много логики, лучше использовать разные формы и использовать свойство Navigate формы selecter, чтобы заставить пользователей использовать другую форму на основе выбора. Сохраняет вещи намного чище.

Если у формы есть несохраненные значения, вам также может понадобиться сделать 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); 
    }); 
}