Dijeli putem


addCustomFilter (referenca klijentskog API-ja)

Dodaje filtre u rezultate prikazane u pretraživanju. Svaki će se filtar kombinirati s prethodno dodanim filtrima kao AND uvjetom.

Podržane vrste kontrola

Pretraživanje

Sintaksa

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

Parametri

  • filtar: Niz. Element filtra fetchXml koji će se primijeniti. Na primjer:

    <filter type="and">
      <condition attribute="address1_city" operator="eq" value="Redmond" />
    </filter>
    
  • entityLogicalName: (neobavezno) Niz. Ako je postavljeno, filtar se primjenjuje samo na tu vrstu tablice. U suprotnom se primjenjuje na sve vrste vraćenih tablica.

Primjedbe

Ta se metoda može koristiti samo u funkciji u rukovatelj događajima za događaj pretraživanja kontrole pretraživanja prije pretraživanja.

Primjer

Sljedeći je uzorak koda za pretraživanje računa obrasca poslovne prilike (parentaccountid). Kada je funkcija Sdk.setParentAccountIdFilter postavljena u obrascu Rukovatelj događajima Prilikom učitavanja, funkcija Sdk.filterCustomAccounts dodaje se događaju PreSearch za to pretraživanje. Ne zaboravite odabrati mogućnost prosljeđivanja u kontekstu izvršavanja prilikom postavljanja funkcije u obrascu Rukovatelj događajima Prilikom učitavanja. Rezultat je da će se vratiti samo računi s vrijednošću Kategorija (accountcategorycode) preferiranog klijenta (1 ).

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