Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

I have a desktop app form with a repeater control. It is a list of bank transactions that do a poor job of identifying the associated customer. Someone needs to assign the customer to each transaction. Most of the fields are read only but are necessary for someone to try and identify the existing customer from a list (Not typed freely). The customer list could get lengthy. The user can start typing the customer name move through the combo box list or scroll. Not sure performance will be a factor. Is one easier to use/more intuitive than the other?

Edit: the user will have several records to process, so data entry efficiency in primary. Anyone using it will get specific training. I just worry that the repeated combo boxes will have to many record and have to resort to lazy loading.

enter image description here Diagram 1

Use a combo box for each record with the client list.

enter image description here Diagram 2

Or a single List of customers, so when the user double-clicks on a customer from the list (on the right), the textbox is populated with the Customer Name. Like wise, if the currently selected customer is desired, double-click on the customer textbox to populate it.

share|improve this question
    
I'm curious as to why the form is repeating three times. Also, is this web-based or desktop app? –  Hisham Mar 9 '11 at 22:25
    
@Hisham - desktop - "I have a desktop app form with a repeater control." –  ChrisF Mar 9 '11 at 23:14
    
It's only a section of the form representing 3 different records displayed simultaneously. Desktop. –  JeffO Mar 9 '11 at 23:14
    
Sorry missed the desktop part. :-) –  Hisham Mar 10 '11 at 6:10
    
By "customer" do you mean payee of the bank transaction? –  NickC Mar 11 '11 at 16:39

3 Answers 3

up vote 2 down vote accepted

The first is definitely more usable. Type-ahead hinting is well-known and easy to use.

I would recommend doing something like what Facebook has for their Work Info section of edit profile:

  1. Start typing, and selections come up.

    enter image description here

  2. Once you click a selection, it "locks" in by changing color and adding an [X] to the right side of the box. It indicates that it's linked to an external record by displaying an icon - in the case of the Company, which works the same way, that icon is the company's Page's profile icon.

    enter image description here

If multiple selection is desired, it's basically exactly the same but the "locked" selection is a bubble wrapped around the words and not the whole box.


In the second solution, it sounds like you'd need to somehow maintain focus on two element — the customer textbox you are populating, and the customer list/item you clicked on. Even if you accomplish that, it would still be confusing, since multiple focus is rarely seen in forms.

In addition, the shortcut you suggest ("if the currently selected customer is desired, double-click on the customer textbox to populate it.") would be need to be explicitly taught, as there is no way of inferring its existence.

If you are seeing technical problems with type-ahead, strategies like caching, type-delays, smart searches (smarter than '%text%') should be able to help it perform just as well as a physically loaded UI element.

share|improve this answer
    
The type-ahead won't be an issue. It's all on a local network. There will be few users who get direct training, but I don't want that to be a crutch; there will be turnover. –  JeffO Mar 10 '11 at 2:11

Solution 2 will ruin your layout and demands more interaction to accomplish the task. To me, solution 1 seems easier and more focused on the task.

share|improve this answer
    
I think you are correct about the interaction, but not sure how #2 ruins the layout. There will be other items on the main part of the form. –  JeffO Mar 11 '11 at 13:23
    
Agreed, it depends on the layout, including the other items. The thing is that the single customer list ‘belongs’ to list of records but it's not inline. If you start filling up the space below or above with other elements, the relation might become unclear. A more complete screenshot might be useful to judge. –  Peter Frings Mar 15 '11 at 20:41

Does the user need to go through a number of customers, or just select one and go with that?

If the task is to choose one customer and then do something with that info, abandoning this screen, then the first solution is better.

However, if it's a number of customers, then I think that the second one is better. You basically have a master-detail relationship here, and to keep using the combo every time to populate the textbox is both uncommon and frustrating. It would feel similar to trying several different search terms in Google, and seeing the results below (which is a completely different task - it's a fine solution for searching). What you have is more like an email client, with a finite list of items and a "Details" pane.

What I would change in the second solution is the layout - the "master" needs to be on the left, and the "details" - on the right, that's the normal direction of workflow.

Another change - as @Renesis pointed out, the double-click is very problematic. It's both undiscoverable and it creates a perceived inconsistency - sometimes the selected item is displayed in the textbox, and sometimes it isn't. Single click should work just fine.

share|improve this answer
    
It's more of a list of bank transactions that individually need to be assigned a different with a customer (They could all be for the same customer, but that is not likely.). The example shows customer 1, 2,3. –  JeffO Mar 10 '11 at 13:10
1  
Oh, that changes things. In that case it definitely can't be a master-detail relationship. But to me a standard dropdown seems a bit too "light" and error-prone to be controlling something as important as assigning people to bank transactions. I'd go with something like the Facebook example that's been posted by @Renesis. It requires taking an explicit action to change the value, and it's more "solid"... I'm not sure exactly how to phrase this. Maybe in terms of layout as well - it shouldn't be placed after the date and time, but should probably be the first field in the block. –  Vitaly Mijiritsky Mar 10 '11 at 16:27

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.