Currently, the process for adding products to an offline order is:

  • Click "Add Product"
  • Select your product from the list and click "Select"
  • Verify/change your quantity and click "Add to order"

This is all AJAX so it works fairly well. But considering this offline order entry is really meant for the sales people (read: rapid-fire order takers), this is a pretty clumsy and inefficient interface. It has proven quite confusing to new-comers, as well.

I believe it would be a great improvement to have a grid-style products pane. The columns would be SKU, Name, Quantity, Weight, Cost, Price, and Extended Price, with a remove button for each row. All of the columns would be editable except Extended Price, which is calculated automatically from Price * Quantity.

Ideally, one could start typing into either the SKU or the Name field and have an auto-fill hint box show up after the user enters a few characters and pauses. The rest of the fields would update when a part has been chosen, and the quantity field would update the "Extended Price" field appropriately. When one uses the TAB key or the mouse to get to a different row than they are currently on, AJAX would fire to save the current state of the order (no need to hit submit changes at the bottom). In order to help newer employees, we can have a little magnifying glass "search" button between SKU and Name to pull up a pane similar to the current setup allowing one to choose products from a list and/or search for them. As products are added, simply keep adding one empty row at the bottom of the list to add more.

Another good addition would be a "Remove all products" button (with confirmation) to clear the order. This is handy when one adds a product kit that is set "As individual products" and needs to pick a different one.

This would turn the offline order entry page into a lean mean order-takin machine. One could just type and TAB to get all of the products into the order.

Anyone have any comments about this?

Comments

SilviuChingaru’s picture

The ideea is indeed very good. I'll look into it when I'll have a little time.
I also think that current form is not taking any advantages of ajax and is a time consuming form.