crm2013 - как отфильтровать поиск клиента по конкретной сущности

Я ищу решение, чтобы добавить специальный фильтр на новый поиск QuickFind.

проблема специфична для типа поиска customerid, потому что при этом использовались типы "client", которые включали учетную запись и контакт в одном поиске (это новый поиск нескольких объектов)

Я попал в эту поисковую учетную запись и контакт и хочу отфильтровать только контакты из определенной учетной записи.

я пытаюсь другой способ изменить это, чтобы изменить объект HTML, но безуспешно.

Вот HTML-данные конкретного поиска.

lookuptypesnames и createpermissiondictionary содержат учетную запись и контакт, если я изменю lookuptype=1, который дает мне только контакт.

Затем я ищу нативный способ изменить обычный поиск для конкретной сущности (только для контакта), не хочу использовать функцию jquery.

2 ответа

Вы должны использовать setLookupTypes.

Что-то вроде этого:

 var owner = Xrm.Page.getAttribute("ownerid").getLookupDataAttribute();        
 owner.setLookupTypes(["systemuser"]); 

Это то, что я сделал, чтобы настроить поиск клиентов так, чтобы отображались только записи контактов.

function Form_OnLoad()
...
preFilterLookup();
..
}


function preFilterLookup() {
Xrm.Page.getControl("customerid").addPreSearch(addLookupFilter);
}

function addLookupFilter() {

document.getElementById("customerid_i").setAttribute("lookuptypenames", "contact:2:Contact");
document.getElementById("customerid_i").setAttribute("lookuptypes", "2");

var account = Xrm.Page.getAttribute("aux_account").getValue();

if (account != null) {

    var filter = "<filter type='and'>" + "<condition attribute='parentcustomerid' operator='eq' value='" + account[0].id + "' /></filter>";
    Xrm.Page.getControl("customerid").addCustomFilter(filter);
}

Если контроль учетной записи является поиском, то ваш fetchXml должен быть

fetchXml = "<filter type='and'><condition attribute='parentcustumerid' operator='eq' uitype='contact' value='" + account[0].id + "' /></filter>";

Другие вопросы по тегам