Have you tried clearing cache and rebuilding indexes? I would rebuild all indexes related to products (Product Attributes, Product Flat Data, Stock Status, etc).
In Magento strictly saying, a Configurable product(CP) is not a product in itself, but a collection of simple products. When you are choosing among 10 colors of a CP is nothing but choosing 10 different simple products of the same color.
Suppose a store have only one RED Ball and two magic boxes CP1 and CP2.
Now you can take out the RED Ball from any of the boxes,as it is a magic box. But when you take out the ball from one of the boxes(CP1), the RED Ball can't be taken out from the other box(CP2) or from the CP1 as there is only One RED Ball.
Now you can have hundreds of Magic Boxes and you can take the RED Ball from any of the boxes(if the magician allows it- in this case store owner), but when the stock of RED Ball is out then nobody can take out the RED Ball from any of the boxes.
And to make the product out of stock when the Quantity becomes zero, you have to go to
System->Configuration->Inventory(under catalog tab)
As shown in the image below, set the field marked in red to zero.
That's it. Hope I made your concept clear about Configurable Product.
Enjoy...
Best Answer
Here is the solution that worked for me:
the problem is with the code used in Simple Configurable Products (OrganicInternet)
I would like to note that I was having two seperate issues at once - the above, and the product price index refused to be indexed (I was recieving this message: Cannot intialize the indexer process, which was explained as SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1)
as it turned out both problems were related, and below solved them both ;)
change:
to:
and
to
source: main issue together with this (however please note that the correct code is 'base_group_price' => new Zend_Db_Expr('pi.group_price'), and not 'base_group_price' => new Zend_Db_Expr('pi.base_group_price'),
change
to
source: here
It took me several hours to figure this out so I wrote this post to help anyone else from wasting all that time.
best of luck!