2

I'm working on Magento 1.9. Let the product Qty in the admin area is 1. And I ordered the product from frontend and now the qty became 0. Then the item completely disappears from the back end. On refreshing the product page in the admin area which I have already taken in my browser, will show the message "This product no longer exists". Product is not appearing in frontend too when I search the same. I can't access the item in the backend. Anyone has the solution for this?

The product can't be found in 'catalog_product_entity' table. But it's there in the 'sales_flat_order_item' table

2
  • check again after clearing cache and reindexing. Commented Mar 9, 2017 at 15:47
  • @AbhishekPanchal Already cleared the cache and re-indexed. Any other solution? Commented Mar 10, 2017 at 3:02

2 Answers 2

1

I think this issue happens because of your custom module.

This is not default bug. If I were on your place I would find event observer

and check the codes while they are deleting something or not.

In your case I think the problem is with the sales_order_place_after event(I think)

find this event in your custom module (Community or local) code pool and check the codes for that..

May be this is the only way you can get the solution

4
  • The product found in the sales_flat_order_item table. Commented Mar 10, 2017 at 8:11
  • @sree becuase order is placed after that item is deleted. Commented Mar 10, 2017 at 8:12
  • But I didn't create any custom module. It was properly working before. The event you are telling found in the MDN module inside community folder. and also in the Ebay import Commented Mar 10, 2017 at 8:36
  • OK so please check those modules code if they delete product or not Commented Mar 10, 2017 at 8:36
1

This may cause due to any extensions or module used that relates with Order. When you place order the event <sales_order_place_after> calls the observer with certain function that writes product delete code.

What you can do is:

  1. Search <sales_order_place_after> event in config.xml of your module or extension used.
  2. Check the method which is dispatched by observer of <sales_order_place_after> event.
  3. var_dump what that method returns.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.