There is a bug in the current 4.6.1 distribution which prevents multiple-attribute product stock values working correctly.
In catalog/includes/functions/general.php - line 116:
$track_stock_query=tep_db_query("select products_options_id, products_options_track_stock from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id in ($options_list) and language_id= '" . (int)$languages_id . "order by products_options_id'");
..should be..
$track_stock_query=tep_db_query("select products_options_id, products_options_track_stock from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id in ($options_list) and language_id= '" . (int)$languages_id . "' order by products_options_id");
Note: The errant ' on the end of product_options_id, what this means is the SQL checks to see that language_id = '1 order by products_options_id', instead of: language_id = '1' order by products_options_id.
What this error basically means is that the "order by product_options_id" bit doesn't work, which is critical to the subsequent product stock check SQL.
I've attached an amended general.php which replaces the file from the 9 Aug 2009 contribution.
More...





LinkBack URL
About LinkBacks









Bookmarks