Defining minimum search criteria for a contact
There is a plugin class in the base configuration of ContactManager in which you can define the minimum criteria required to find a contact, gw.plugin.contact.ValidateABContactSearchCriteriaPluginImpl. Settings in this class affect both local searches and searches from Guidewire core applications. You can add new, required search fields by editing this class. Because the class is written in Gosu, you have considerable flexibility in how you specify which fields to require for a search.
The following code snippet from the parent class, ValidateABContactSearchCriteriaPluginBase, shows the default search criteria defined for an ABPerson entity, which you can override:
protected function abPersonCanSearch(searchCriteria : ABContactSearchCriteria) : boolean {
if (searchCriteria.FirstName != null or searchCriteria.FirstNameKanji != null) {
if (searchCriteria.Keyword == null and searchCriteria.KeywordKanji == null) {
return false
}
}
if (searchCriteria.Keyword == null
and searchCriteria.KeywordKanji == null
and searchCriteria.FirstName == null
and searchCriteria.FirstNameKanji == null
and searchCriteria.TaxID == null
and satisfiesNoLocaleSpecificCriteriaRequirements(searchCriteria)
and searchCriteria.Address.PostalCode == null
and not searchCriteria.isValidProximitySearch()) {
return false
}
return true
}
