Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

как удалить заказ чтобы кол. товара в базе не изменилось


RAMIZ

Recommended Posts

помогите плиз--  работаю в админке-удаляю допустим заказ номер такой-то--при етом количество товаров в базе автоматом устанавливается на предыдушее знач. т.е. как было до покупки--я понимаю ето очен удобно- но иногда нужно удалять так чтобы в базе кол. тов. не менялись--неужели в опенкарт нет встроенных методов--помогите плиз -- благодарен заранее 

Надіслати
Поділитися на інших сайтах


Если в карточке товара указать: 'Вычитывать со склада = Да', то как при создании нового заказа, так и при удалении заказа количество данного товара на складе меняться не будет.

Надіслати
Поділитися на інших сайтах

Если в карточке товара указать: 'Вычитывать со склада = Да', то как при создании нового заказа, так и при удалении заказа количество данного товара на складе меняться не будет.

Спасибо за ответ--но ето не решение проблемы--допустим я удаляю заказы 5-летней давности в кол-ве 1000 штук-т.е. ети заказы уже история--в каждом заказе примерно по 5 товаров--следователно мне нужно найти каждый товар --ставить --Вычитывать со склада = Да -- удалить заказ -и после етого обратно ставить  -Вычитывать со склада =нет--согласитесь что достаточно трудоемко--проблема такая - допустим магазин работет уже 5 лет --как облегчать базу посредством опенкарт-через Mysql ето не очен интересно--неужели вариантов нет -ПОМОГИТЕ ПЛИЗ-благодарен заранее--рамиз 

Надіслати
Поділитися на інших сайтах


Как вариант, временно закомментировать строки в admin/model/sale/order.php в методе deleteOrder()

$this->db->query("UPDATE `" . DB_PREFIX . "product` SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_id = '" . (int)$product['product_id'] . "' AND subtract = '1'");

и

$this->db->query("UPDATE " . DB_PREFIX . "product_option_value SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_option_value_id = '" . (int)$option['product_option_value_id'] . "' AND subtract = '1'");

только после удаления не нужных заказов восстановите эти строки обратно, иначе товары не будут возвращаться на склад.

 

Это на ocStore 1.5.5.1.2, что было в более ранних версиях - надо смотреть.

Надіслати
Поділитися на інших сайтах

Как вариант, временно закомментировать строки в admin/model/sale/order.php в методе deleteOrder()





$this->db->query("UPDATE `" . DB_PREFIX . "product` SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_id = '" . (int)$product['product_id'] . "' AND subtract = '1'");

и





$this->db->query("UPDATE " . DB_PREFIX . "product_option_value SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_option_value_id = '" . (int)$option['product_option_value_id'] . "' AND subtract = '1'");

только после удаления не нужных заказов восстановите эти строки обратно, иначе товары не будут возвращаться на склад.

 

Это на ocStore 1.5.5.1.2, что было в более ранних версиях - надо смотреть.

Спасибо за я бы сказал за слишком квалифицированный ответ--я тоже программист-твой ответ для меня ОК !  но для простого ползователя ето слишком трудно --давай разрешим проблему по другому--через бекап \ ресторе -т.е. не выходя из опенкарт  1. сохранит базу на раб.стол. 2. сохранит базу на раб.стол-еще раз предварително удалив заказы. 3.на обычном текстовом редакторе редактировать обе базы -- склеить из 2-х баз одну  - с удаленными заказами и нетронутыми кол.товаров. 4. восстановить склленную базу с десктопа на сервер. Ето доступно любому--ты мне подскажи названия полей в базе-чтоб я знал какие строки убрать в каждой базе--ест еше подвариант -- когда  делаеш бекап можно выбрать соответствующие поля и потом плясать от етого---  и вообше как тебе идея-ест-ли другие варианты ? благодарю за внимание и помощ --Рамиз

 

Dobrogo vremeni sutok ! Da proboval svoyu ideyu--cherez textoviy redaktor ne poluchaetsya--vidimo nujno naverno chto-nibud vrode dbForge--Ramiz 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.