addCustomFilter (klient-API-referens)

Lägger till filter i resultaten som visas i sökningen. Varje filter kombineras med eventuella tidigare tillagda filter som ett AND villkor.

Kontrolltyper som stöds

Sökning

Syntax

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

Parameterar

  • filter: Sträng. Filterelementet fetchXml som ska tillämpas. Till exempel:

    <filter type="and">
      <condition attribute="address1_city" operator="eq" value="Redmond" />
    </filter>
    
  • entityLogicalName: (valfritt) Sträng. Om detta anges gäller filtret endast för den tabelltypen. Annars gäller det för alla typer av tabeller som returneras.

Anmärkningar

Den här metoden kan endast användas i en funktion i en händelsehanterare för Lookup Control PreSearch-händelsen.

Example

Följande kodexempel är för sökningen Konto för affärsmöjlighetsformulär ( parentaccountid). När funktionen Sdk.setParentAccountIdFilter har angetts i formatet Onload-händelsehanterare läggs funktionen Sdk.filterCustomAccounts till i PreSearch-händelsen för sökningen. Kom ihåg att välja alternativet för att skicka in körningskontexten när du ställer in funktionen i formatet Onload-händelsehanterare . Resultatet är att endast konton med värdet Kategori (accountcategorycode) för önskad kund (1) returneras.

// 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