Function: MnOnPreSearch
▸ MnOnPreSearch(controlName
): (target
: any
, key
: any
, descriptor
: PropertyDescriptor
) => void
Decorator that marks a method as an event handler for pre-search event.
This event is fired when a lookup column search is executed. It allows to modify the search query by adding filters.
Remarks
Available on pages: Record only.
Registration: Automatic registration at runtime.
For more information, see Microsoft Client API Reference
Example
Filter a multi-lookup of type customer
(specific D365 lookup type)
to only allow accounts and disable the search of contacts.
@MnComponent({
scope: {
pageType: "record"
}
})
export class AccountOnlyInCustomerLookupComponent {
@MnInput()
input: {
customerLookup: string;
}
@MnConfig(i => i)
config: {
customerLookup: string
}
@MnOnPreSearch(c => c.config.customerLookup)
disallowContactSearch(eventArg: FormEventArg) {
const customerCtrl = eventArg.formCtx.getControl<Xrm.Controls.LookupControl>('customer');
customerCtrl.addCustomFilter('<filter type="and"><condition attribute="contactid" operator="null"/></filter>', 'contact');
}
}
Parameters
Name | Type | Description |
---|---|---|
controlName | ValueOrConfigPropertyMapper <string > | Name of the lookup control or callback function that returns the name of the lookup control from the component configuration. |
Returns
fn
▸ (target
, key
, descriptor
): void
Parameters
Name | Type |
---|---|
target | any |
key | any |
descriptor | PropertyDescriptor |
Returns
void