I think we should argue a bit, about the intented use of this module and the shortcomings, if one use it. I'm afraid - with this module name - we will get tons of people how didn't understand the really complex drupal commerce (products, product types, product display) world and think, here they get the shortcut to product options - like 'Shirt, XL, green', but didn't understand, that they may miss some needed functionality - like stock tracking and maybe coming ERP features (how knows). So I think, we should document a little bit, when you should use this module, and when you should avoid it.

Thoughts?

Comments

hunziker’s picture

I think we should create something. If you want I can write some blog post on our webpage and add a link to the project. In the blog post I could describe:

  • Which types of complex products (products, attributes, variants, options etc.) exist. This is general and independent of the shop system. This can help people to understand the whole topic.
  • How to tackle this types of complex products in Drupal Commerce. Describe a bit of the different modules and the core functionality.
  • Describe some use cases.

Do you think this would help people to understand this? I think the name is ok, because it describes exactly the functionality. I agree with you that the name can be misunderstand, but this is usually because the people have not enough domain specific knowhow.

olafkarsten’s picture

Yepp, such a blog post would really be cool!!!

joachim’s picture

Yup, some help on this module's intended use would be very useful.

As far as I can tell:

A. with Commerce OOTB, you'd add fields on product types for variations such as size and colour, and then create one product for each possible combination. Your product node then needs to reference all the products you created that fit together to provide a single 'product' as perceived by the customer.

B. with commerce option... from what I can tell, you create option set entities, which then have multiple fields. (In most cases, you'd probably want just one field per option set maybe?) You then add an option set reference field to your product. This then means that when you see the product 'add to cart' form on the product display node, you get the fields from the option set(s) applied to the product displayed.
In other words:

- make an option set 'size'
- add a field on it 'size' (the names get repetitive...)
- add select options S, M, X, XL etc
- add an option set ref field to your product type(s)
- the product display node now shows the 'size' field.

I think that the really important distinction to make in documentation for this module is how it will affect product stock control.
If you go with route A, then you have one product entity per combination, so red t-shirts can run out of stock while you still sell blue t-shirts.
With route B, you don't have that distinction, so it's only suitable for aspects of products where stock control doesn't need to distinguish between options.

drupalninja99’s picture

Your explanation really helped. I wonder if you are supposed to create 'Rules' for adjusting the price based on an option selected? As for stock I have no idea how you would manage stock levels with this.

olafkarsten’s picture

Yeah. Good explanation. Thanks very much.

I added a readme.txt with some basic documentation and modified the project page.

olafkarsten’s picture

Status: Active » Fixed

We added a documentation page with the intendend use.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

pixelsweatshop’s picture

Just to pipe in on an old thread to point other they may come across this later. Managing stock using this module is no longer an issue if you use http://drupal.org/project/commerce_options_stock

odisey’s picture

Category: task » support
Status: Closed (fixed) » Active

I am creating a product type called "Farm in a Box." It is a product that has 3 sizes and prices associated with each size, let's say Small = 1.00, Med = 2.00, and Large = 3.00. Each size has an option to add 7 vegetables out of a total of 10.

My take on this modules is as follows. Commerce core: I can create three products, one small, one medium, one large; and subsequently create a product display type to combine them in one display for the user to select [SIZE] from. This is the basic variations approach in Commerce. Perfect

Now, on each size though I would like to have a check box field that allows the user to check 7 and only 7 out of 10 vegetables listed for the product they wish to purchase. Make sense? They are purchasing a SIZE and then choosing which vegetables to fill it with.

So as example, I may purchase a medium box and check off carrots, onions, beets, cabbage, corn, tomatoes, and potatoes; but cannot select squash or any other vegetables because I met my limit of choices [7]. Make sense?

Question 1: Will this module enable me to create this check box field on the product (node) entity?
Question 2: If YES above, will the selected options be passed to the order invoice, etc ... so that processing of the product can be handled?
Question 3: Can customers edit their product check box field choices after adding to cart, but before checking out?
---- If NO to 3, a work around would be to have them DELETE from cart and re-add with correct selections.

You see my utility of the module as described above is using it in conjunction with the Drupal Commerce approach to product variations, which should help others understand what it is for; if I am correct in assuming I may be able to use it for the above as described.

Thank you,
Odisey

olafkarsten’s picture

Category: support » task
Status: Active » Closed (fixed)

Unfortunatly, this module can't do that out of the box.

And please, for the next time: Open your own issues for support request's and don't hijack other issues.

odisey’s picture

I believe discussing what this module can and can't do is pretty much in line with a discussion of its intended use - since it seems the genius of your docs are clearly vague enough to inspire such a thread ... Thanks!!!