HS
Reported
If I add a purchase of any product and then delete the product from "Products", I can no longer edit the purchase. The "Edit Purchase" module crashes.
Please see the screenshot where I have added a purchase of FFR01 and then deleted the product.
Ideally, the system must not delete the product. Product can only be "Deactivated" so that data consistency is maintained.
Please see the screenshot where I have added a purchase of FFR01 and then deleted the product.
Ideally, the system must not delete the product. Product can only be "Deactivated" so that data consistency is maintained.
- HSAnsweredSorry, forgot to attach screenshot.Attachments
- MSAnsweredThere is no such option but will check in future updates. Thank you
- HSAnsweredThanks.
In the mean time, anybody looking for a solution, I have created a MySQL trigger to prevent deletion if there are any purchases of the product.
```
DELIMITER $$
CREATE TRIGGER AKA_Prevent_Delete
BEFORE DELETE ON sma_products
FOR EACH ROW
BEGIN
IF OLD.id IN (SELECT `sma_purchase_items`.`product_id` FROM `sma_purchase_items` WHERE `sma_purchase_items`.`product_id` = OLD.id) THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Cannot delete purchased product. Delete purchase first.';
END IF;
END
$$
DELIMITER ;
```
> PS: Review the code before using. - Login to Reply