Excel/CSV export/import for the product inventory page

Discussion in 'Shapeways Shops' started by kontor_apart, May 8, 2011.

  1. kontor_apart
    kontor_apart New Member
    I would like to propose an Excel/CSV export/import (download/upload) functionality for the product inventory page.

    Questions and comments in this thread, please. You may vote for this proposal here.


    The product inventory page is basically a primitive spreadsheet with VERY limited functionality. As repeatedly mentioned in the forums, maintaining more than a few items in this pseudo-spreadsheet is a nightmare.

    The proposed export/import functionality would allow show owners to download their product inventory and load into an Excel spreadsheet for offline use, enabling all well-established spreadsheet functionality, like

    - calculations (USD <-> EUR, ex. VAT <-> incl. VAT, etc.)
    - sorting (move shop items from the bottom to the top)
    - bulk enabling/disabling materials or products
    - what-have-you ...

    The modified spreadsheet file would then be saved (in CSV-format), re-uploaded and the shop with all products would be updated in one shot.

    Possible import errors would be reported in real time after upload (no email, please!!!)


    This very un-cool solution
    - is comparably easy to implement and does not require a lot of fancy web-site/AJAX-programming
    - is easy to use for the majority of people who do not have API-programming skills
    - enables every shop owner to maintain his products in his preferred manner

    Discussions over slowness, markup calculation weirdness, scrollbars etc. pp. would become obsolete.
    Community members may even start sharing some of their Excel macros or alike.

  2. woody64
    woody64 Well-Known Member
    Yes, as very quick workaround that can save a lot of discussion and give shapeways time to search for a good solution.

    Would be glad if the csv import/export also includes
    - sorting (both interfaces are not usable)
    - adding/removing from shop sections

    Last edited: May 8, 2011
  3. tebee
    tebee Well-Known Member
    yes, I think this would be an excellent idea - it would also give us the opportunity to work out thing like percentage margins easily.

  4. stonysmith
    stonysmith Well-Known Member Moderator
    Export - excellent Idea... +1

    Import - very troublesome. If someone adds an unexpected column or row, it could break the upload. I deal with these all the time in my day job, and the users never seem to listen to "do not add columns!"
  5. mctrivia
    mctrivia Member
    adding columns should be fine as long as after expected data. however using a second sheet for intermediate fields is better way to go.

    i really like this idea. would take me minutes instead of hours to make changes and excel is very powerful letting us use all kinds of functions to automate pricing.

    can i suggest adding view state, and tags to the sheat. though tags need to be made pipe separated to not break columns.
  6. kontor_apart
    kontor_apart New Member
    - all of the shop owners here (who need such a feature) have very decent computer knowledge. I trust that they can handle it.

    - nowadays, there are saver and more powerful ex-/imports than just CSV. That kind of evaluation and decision can easily be left to the developers.

    - the current product edit page is already overloaded with all kind of cool and fancy features, half a dozen of different [Save] buttons etc. etc. There are several requests out there to add more buttons and stuff which will not make it any better.

    - this proposal can be seen as an intermediate pain reliever, fairly easy to do, would give Shapeways the time to dream up a more workable shop system.

    Ever heard of Waiting for Godot ?

  7. mctrivia
    mctrivia Member
    I don't think this is necessarily a intermediate step. Import export to excel gives the most powerful options to people that are not willing to hack there own interface. And even for those of us who are it is the most convenient option. The current system needs to be changed but import/export should stay.
  8. tebee
    tebee Well-Known Member
    Yes, would agree it is a long term necessity, not just short term fix.

  9. stonysmith
    stonysmith Well-Known Member Moderator
    I wasn't saying don't do it.. I was merely trying to express that the coding for the import feature will take signifcantly more time than the export.
  10. horst
    horst New Member
    Hey all,

    Very good input here, and I appreciate the time and creative thought being put forth!

    My developers and new designer will be working on the product markup page in the near future, right after we finish two prior tasks (an upgrade to the user experience of My Shapeways, and an upgrade to the model upload page). I think we can make major improvements to the current web page with less difficulty than this spreadsheet approach, but I'll get some specific scoping from them to be sure.

  11. mctrivia
    mctrivia Member
    spread sheet is second best option. API is best but most won't want to use.
  12. horst
    horst New Member
    API is good, but what I think will have the greatest impact is improving the core web interface to be clear, logical and fast. That should help the most people, among any of the alternatives!
  13. mctrivia
    mctrivia Member
    you can not make an interface that can do everything for everyone.

    for example what if i want the sale price of all my dice to be $9.99 or $1 profit rounded up to the nearest dollar -$0.01?

    or if i wanted the markup to be equal to cos($cost)+$cost*0.5 don't know why i would want that but i could in excel or php easily.

    api handles the php. but most i am sure would prefer excel.

    yes you need to fix the interface but the excel/csv interface is a easy implementable interface that gives the user infinit power.
    Last edited: May 12, 2011
  14. horst
    horst New Member
    That's certainly true. For maximum flexibility, you need different tools and approaches than you need for maximum usability...
  15. mctrivia
    mctrivia Member
    SO hopefully you will strangely consider having 3 interface options.

    1) API
    2) CSV
    3) Improve the current interface

    My vote is to get them done in that order.
  16. mctrivia
    mctrivia Member
    please make this top priority.

    I am slowly going through all my models and placing them in sub sections so I can make it easier for people to find.

    I have 324(+-4) models at present and with the current page architecture and really slow shapeways.com ajax scripts it takes me aproximently 2 minutes per model to load, add 1 to 4 sub sections, possibly mark as visible if it was not already done and add a category if not already done. That is over 10 hours for something that with an excel interface could tke as little as 10minutes.

    This is not even changing prices on anything. Every time shapeways adds a new material it takes me ruffly 30sec per model per new material with the current architecture. That is 3 hours of my time per material added. This literly would take me only 30 seconds if the excel format was in place as I could just type in a formula and it would update every model.

    Please implement an excel interface or give me the ability to execute mySQL commands(I know you will never do that as I could do a lot of harm)

    In PHP which this site is writen in an excel interface would be so easy to implement. The fgetcsv, and fputcsv commands will easily let you convert comma delimeted values to an array and back again and handles all tricky situations like fields with comas in it for you. Taking the coma delimeted values and reinserting into the database can be relitevely easily done by having an array of what fields go where. You just need to be careful that you execute mysql_real_escape_string on all array functions before entering in database and typecast any variables that should be of a specific type. all of which can be extremely easily done with a few loops and a few arrays.

    Just make sure the CSV file contains all data on a model. On import some fields can be ignored if the data is duplicated(I.E. model price, profit margine ignore model price and use as human referance only). If you forget anything you can always add to the end of the items list. So long as you do not add to the middle it will not mess peoples templates up.
    Last edited: Jun 15, 2011
  17. horst
    horst New Member
    Hi Mctrivia,

    It is a very interesting concept and I can understand the appeal. We will improve this user experience, but I cannot fit it into our top priorities right now.

    Side note--due to the slow Excel libraries for PHP, we are looking into moving to CSV for all spreadsheet functionalities on the site.

  18. mctrivia
    mctrivia Member
    If you can give me your database structure it would take me less time to write the functions then to finish going through the rest of my models. I don't need any of the data in the database that is private just an empty mysql dump of the structure.
    Last edited: Jun 15, 2011
  19. woody64
    woody64 Well-Known Member
    I have to agree that going through the models is a nightmare.

    I had to do that for the default material. It was hours(!) of work.
    I'm often wondering that only a few shop owners have this problem. In my terms it's a prio 1-2 topic (that's nearby: functionality broken in an acceptance test) since I can't spend hours maintainig the shop.

    And sorry guys if I mention that the x-th time: please try to iterate trough 50 pieces of your gallery and change the default material.

    As result I hope you will agree that there's an interface needed where such changes can be done quickly and easily.

    I VOTE FOR CSV download/upload !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    @mctrivia: maybe this can help you

    Last edited: Jun 15, 2011
  20. tebee
    tebee Well-Known Member
    The reason is probably that there aren't a lot of shop owners with a large numbers of models in their shops - though it would be interesting to know what percentage of Shapeways sales those shop owners represent.

    Anybody want to tell us how many shop owners have more than say 20 modes in their shops?

    And do those people represent a large portion of total sales ?