Dalintis per


addCustomFilter (kliento API nuoroda)

Įtraukia filtrus į peržvalgoje rodomus rezultatus. Kiekvienas filtras bus sujungtas su anksčiau įtrauktais filtrais kaip AND sąlyga.

Palaikomi valdiklių tipai

Peržvalga

Sintaksė

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

Parametrai

  • filtras: eilutė. Taikomas "fetchXml" filtro elementas. Pavyzdžiui:

    <filter type="and">
      <condition attribute="address1_city" operator="eq" value="Redmond" />
    </filter>
    
  • entityLogicalName: (pasirinktinai) eilutė. Jei tai nustatyta, filtras taikomas tik tam lentelės tipui. Kitu atveju jis taikomas visų tipų pateikiamų lentelių.

Pastabos

Šį metodą galima naudoti tik funkcijoje, kuri yra įvykių apdorojimo programoje , skirtoje peržvalgos valdiklio preSearch įvykiui.

Pavyzdžiui

Šis kodo pavyzdys yra galimybės formos abonemento (parentaccountid) peržvalgai. Kai Sdk.setParentAccountIdFilter funkcija nustatoma formos įvykio apdorojimo programoje Įkeliant , sdk.filterCustomAccounts funkcija įtraukiama į tos peržvalgos įvykį PreSearch . Nustatydami funkciją formos įvykio apdorojimo programoje Onload , nepamirškite pasirinkti parinkties, kad būtų perduodama vykdymo kontekste. Gautasis rezultatas yra tas, kad bus grąžintos tik paskyros, kurių kategorijos (accountcategorycode) reikšmė yra Pageidaujamas klientas (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
formContext