2016-11-01 2 views
0

Ich habe N: N-Beziehung zwischen Konto und Beziehungstyp (eine benutzerdefinierte Entität). Jetzt auf Recording entity (Eine weitere benutzerdefinierte Entität) Ich habe eine Account-Suche und möchte Presearch-Kriterien hinzufügen, so dass die Suche nur die spezifischen anzeigen kann, die eine 'Vendor'-Beziehung im Beziehungstyp haben. Bis jetzt habe ich folgendes Snippet, um den Lookup-Pre-Search zu machen, aber es zeigt alle Datensätze. Ich bin mir nicht sicher, wo ich falsch liege. Irgendeine Idee/Vorschlag?Zeigen Sie bestimmte Kontoeinträge in Account-Lookup in Dynamics CRM

function filterAccounts() { 
    try { 
     debugger; 
     var accountLookup = Xrm.Page.getControl("new_accountid"); 
     if (accountLookup == null && accountLookup == 'undefined') { } 
     else { 
      accountLookup.addPreSearch(function() { 

       CustomFilter(accountLookup); 
      }); 
     } 

    } catch (e) { 
     alert("Error: " + e.message); 
    } 

} 

function CustomFilter(accountLookup) { 
    try { 
     debugger; 
     var fetchXml = "<link-entity name='new_account_new_relationshiptype' from='accountid' to='accountid' visible='false' intersect='true'>" + 
         "  <link-entity name='new_relationshiptype' from='new_relationshiptypeid' to='new_relationshiptypeid' alias='ak'>" + 
         "  <filter type='and'>" + 
         "   <condition attribute='new_name' operator='eq' value='Vendor' />" + 
         "  </filter>" + 
         "  </link-entity>" + 
         " </link-entity>"; 

      accountLookup.addCustomFilter(fetchXml); 
    } catch (e) { 
     alert("Error: " + e.message); 

    } 
} 

Antwort

1

Die FetchXML Sie in addCustomFilter angeben soll nur die <filter> -Teil sein. Sie können keine Verbindungsentitäten angeben, wenn Sie addCustomFilter verwenden.

Wenn Sie Ihre Abfrage nicht so vereinfachen können, dass Sie nur Felder in der Account-Entität berücksichtigen müssen, müssen Sie addCustomView anstelle von addCustomFilter verwenden.