View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000470||OXID eShop (all versions)||2. ----- eShop backend (admin) -----||public||2008-12-22 16:46||2009-08-27 13:05|
|Product Version||22.214.171.124 revision 14842|
|Target Version||Fixed in Version||4.1.0 revision 17976|
|Summary||0000470: "Not found" error in orders_main|
|Description||After upgrading an old 3.0 shop we discovered a very strange "Not Found" Error in the admin area - in order_main.|
After debugging we found out, that there was an exception thrown in oxBasket::addToBasket(). BTW: this exception was not logged in Execption.log ...
The exception thrown is an oxOutOfStockException - probably because in the meanwhile some of the ordered articles are actualy out of stock - but this must not influence calling an order in admin!
So if called from admin the addToBasket method should not check any stock apart from editing an order an e. g. realy adding articles.
As a hotfix a just commented line 321.
|Additional Information||The case is reported by our partner. Localy we cannot reproduce it. But please check if there is checking for stock in this place and if it is - maybe this is not necessarry and may be removed.|
|Tags||No tags attached.|
|has duplicate||0000763||closed||order => main tab throws exception, if bought article has got an out-of-stock-status|
|has duplicate||0000778||closed||admin/order_main.php gives 404 File not Found if product out of stock|
|has duplicate||0001252||resolved||dainius.bigelis||admin/order_main.php gives 404 File not Found if product out of stock|
This was reported by me and I can reproduce it even in the official OXID Demoshop (PE). Do the following:
Make an order.
Go to the admin interface an set the stock amount of the just ordered article to "0" AND the stock status to "wenn ausverkauft nicht bestellbar" (oxstockflag = 3).
Then look at the order in admin order_overview and klick on "Stamm".
It is caused in oxbasketitem::setAmount() and depends on oxarticle::checkForStock().
There's no reason that the actual stock is checked here because the stock value of the time of order is relevant - not the actual stock.
It does happen always if the stock value is "0" and oxstockflag is "2" or "3".
And even IF there's an exception thrown, it should not lead to a page not found error.