Nota
L'accés a aquesta pàgina requereix autorització. Podeu provar d'iniciar la sessió o de canviar els directoris.
L'accés a aquesta pàgina requereix autorització. Podeu provar de canviar els directoris.
El addCustomFilter mètode afegeix filtres als resultats que es mostren en un control de cerca en aplicacions basades en models. Cada filtre es combina amb qualsevol filtre afegit prèviament com a AND condició.
Tipus de control admesos
Cerca
Sintaxi
formContext.getControl(arg).addCustomFilter(filter, entityLogicalName)
Paràmetres
| Nom | Type | Descripció |
|---|---|---|
filter |
Corda | L'element de filtre FetchXML que s'ha d'aplicar. |
entityLogicalName |
Corda | Opcional. Si configures aquest paràmetre, el filtre només s'aplica a aquest tipus de taula. En cas contrari, s'aplica a tots els tipus de taules retornades. |
Per exemple, utilitza el següent XML per al filter paràmetre:
<filter type="and">
<condition attribute="address1_city" operator="eq" value="Redmond" />
</filter>
Observacions
Utilitza aquest mètode en una funció d'un gestor d'esdeveniments per a l'Esdeveniment Pre-Cerca del Control de Cerca.
Exemple
El següent exemple de codi és per a la cerca de compte (parentaccountid) del formulari d'oportunitat. Quan configuris la Sdk.setParentAccountIdFilter funció al gestor d'esdeveniments del formulari Onload , afegeix la Sdk.filterCustomerAccounts funció a l'esdeveniment PreSearch per a aquesta consulta. Recorda seleccionar l'opció de passar en el context d'execució quan configuris la funció al gestor d'esdeveniments de formulari Onload . El resultat és que només es retornen els comptes amb el valor de Categoria (accountcategorycode) de Client Preferent (1).
// A namespace defined for SDK sample code
// You should define a unique namespace for your libraries
const Sdk = (window.Sdk ??= {});
// set 'Sdk.setParentAccountIdFilter' in the Opportunity form onload event handler
Sdk.setParentAccountIdFilter = (executionContext) => {
const formContext = executionContext.getFormContext();
formContext.getControl("parentaccountid").addPreSearch(Sdk.filterCustomerAccounts);
};
Sdk.filterCustomerAccounts = (executionContext) => {
const control = executionContext.getEventSource();
const customerAccountFilter = `
<filter type="and">
<condition attribute="accountcategorycode" operator="eq" value="1" />
</filter>`;
control.addCustomFilter(customerAccountFilter, "account");
};