Reputation: 714
Domino Version: 9.0.1
ExtLib Version: 9.0.1v00_04_20140226-1506
For many reasons, I like using the NamePicker control to allow the users to select people for field input. But I have stumbled onto a problem that I cannot immediately solve.
The NamePicker control defaults to allow only a certain number of names to be shown at once. As far as I can tell, this is done to prevent performance issues. My issue is this: if we have a large corporate phone book, and that phone book contains 600 people with the last name Smith, then only a fraction of those people will be selectable when we perform a search for that last name. As far as I can tell, there is no way to search for the name "Smith, William" which should be one of the last names on the list.
I know that you can change this maximum by adding the Dojo Property "maxRowCount" and selecting the number of rows you want to have displayed, but I do not see this as a good solution. First off, my tests show that this comes with a performance hit if too many rows are shown at one time, and I also do not want the users to have to go through all of the Smith's just to find one name. The main issue is that I see no way to select any name that comes after the 'maxRowCount' + 1.
My questions are these:
1. Is there a way to tell the NamePicker ExtLib control that it should search both last and first names?
2. Is there a way to activate paging in the NamePicker ExtLib control that I just failed to see as of yet?
My only other option is to build my own name picker which I would rather not do.
Upvotes: 3
Views: 227
Reputation: 15729
DominoNABNamePickerData extends AbstractDominoViewPickerData. The readEntries() method of that does check for the searchType property, which is available on the DominoViewValuePickerData dataProvider. The options are defined in AbsgtractDominoViewPickerData:
public static final String SEARCH_STARTFROM = "startFrom"; // default //$NON-NLS-1$
public static final String SEARCH_MATCH = "match"; //$NON-NLS-1$
public static final String SEARCH_FTSEARCH = "ftSearch"; //$NON-NLS-1$
It looks like it's just not exposed for the Name Picker. I've not tested, but it may work if it's added to the xsp-config of the Name Picker Data Provider, and subsequently serialized.
Upvotes: 1