3

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.

Greg
  • 714
  • 4
  • 16
  • My temporary solution is just to build my own search control. I think it will be quicker and easier than messing with the ExtLibs themselves while also being able to quickly install ExtLibs updates without worrying about whether or not my changes are present. My hope is that this is a change that can be added to a future ExtLib version as a possible option. – Greg Feb 06 '15 at 10:50

1 Answers1

1

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.

Paul Stephen Withers
  • 15,699
  • 1
  • 15
  • 33
  • Thank you, I will take a look at this and get back to you. – Greg Jan 20 '15 at 09:22
  • I would be interested to see if this works. I have been looking for something similar as the ext Lib name picker is lacking just as you described. I found a project at openntf.org (http://openntf.org/main.nsf/project.xsp?r=project/Dojo%20Name%20Picker/releases/90A375E58ACA278086257D200069AF27) that also looks like a possible answer. – Eric Tomenga Jan 20 '15 at 21:09
  • I'll try to give it a go over the next few days. I've already submitted a pull request to add returnNameFormat to ExtLib NamePicker. – Paul Stephen Withers Jan 20 '15 at 23:23
  • As a follow up. The project Dojo Name Picker from Openntf.org does indeed use specific views in the DIrectory and does search on the complete or partial name. I have replaced the Ext Lib Namepicker with the Dojo Name Picker in the current project after testing. I do like the fact that the CSS, SSJS and CSJS libraries can be viewed and modified /customized if needed. – Eric Tomenga Jan 23 '15 at 18:04