Freigeben über


addCustomFilter (Client-API-Referenz)

Fügt weitere Filter zu den Ergebnissen, die in der Suche angezeigt werden, hinzu. Jeder Filter wird mit zuvor hinzugefügten Filtern als AND Bedingung kombiniert.

Unterstützte Steuerelementtypen

Suche

Syntax

formContext.getControl(arg).addCustomFilter(filter, entityLogicalName)

Parameter

  • filter: Zeichenfolge. Das anzuwendende fetchXml-Filterelement. Beispiel:

    <filter type="and">
      <condition attribute="address1_city" operator="eq" value="Redmond" />
    </filter>
    
  • entityLogicalName: (Optional) Zeichenfolge. Wenn dies festgelegt ist, gilt der Filter nur für diesen Tabellentyp. Andernfalls gilt dies für alle Arten von zurückgegebenen Tabellen.

Anmerkungen

Diese Methode kann nur in einer Funktion in einem Ereignishandler für das Lookup Control PreSearch Event verwendet werden.

Beispiel

Das folgende Codebeispiel wird für die Suche des Verkaufschance-Formulars Firma Firma (parentaccountid) bereitgestellt. Wenn die Sdk.setParentAccountIdFilter-Funktion im Formular Onload-Ereignishandler festgelegt ist, wird die Sdk.filterCustomAccounts-Funktion zum PreSearch-Ereignis für diese Suche hinzugefügt. Vergessen Sie nicht, die Option auszuwählen, um im Ausführungssinne anzumelden, wenn die Funktion im Formular Onload-Ereignishandler festgelegt wird. Das Ergebnis ist, dass nur Firmen mit dem Kategorie (accountcategorycode)-Wert vom Bevorzugten Kunden (1) zurückgegeben werden.

// A namespace defined for SDK sample code
// You should define a unique namespace for your libraries
var Sdk = window.Sdk || {};

// set 'Sdk.setParentAccountIdFilter' in the Opportunity form onload event handler
Sdk.setParentAccountIdFilter = function (executionContext) {

    // get the form context
    formContext = executionContext.getFormContext();
    formContext.getControl("parentaccountid").addPreSearch(Sdk.filterCustomerAccounts);
}

Sdk.filterCustomerAccounts = function () {

    // Only show accounts with the type 'Preferred Customer'
    var customerAccountFilter = "<filter type='and'><condition attribute='accountcategorycode' operator='eq' value='1'/></filter>";
    formContext.getControl("parentaccountid").addCustomFilter(customerAccountFilter, "account");
}

addPreSearch
formContext

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).