Невозможно скрыть связанные объекты из списка.Но мы можем запретить пользователям выбирать любые другие записи нежелательных сущностей в этом поиске.
Мы должны использовать addPreSearch
и addCustomFilter
.Например, чтобы разрешить пользователям выбирать только контакт, но не учетную запись или системного пользователя, см. Следующий фрагмент.Это отфильтрует записи учетной записи и системного пользователя из представления, и пользователи могут двигаться вперед, только выбрав контакт.
var contactFilter = "<filter type='and'><condition attribute='contactid' operator='not-null' /></filter>";
//remove accounts
var accountFilter = "<filter type='and'><condition attribute='accountid' operator='null' /></filter>";
//remove system users
var systemUserFilter = "<filter type='and'><condition attribute='systemuserid' operator='null' /></filter>";
Xrm.Page.getControl('requiredattendees').addCustomFilter(contactFilter, "contact");
Xrm.Page.getControl('requiredattendees').addCustomFilter(accountFilter, "account");
Xrm.Page.getControl('requiredattendees').addCustomFilter(systemUserFilter, "systemuser");
Подробнее
Редактировать :
Добавление еще одного недокументированного (следовательно, неподдерживаемого) до 8.x
Xrm.Page.getAttribute('your_field').setLookupTypes(['contact']);
9.x документированного и поддерживаемого способа:
Xrm.Page.getControl('your_field').setEntityTypes(['contact']);
Обновление : (замена устаревшего синтаксиса)
function onFormLoad(executionContext) {
var formContext = executionContext.getFormContext();
formContext.getControl('your_field').setEntityTypes(['contact']);
}
Подробнее