Как переопределить кнопку "подтвердить заказ" в модуле "Покупка Odoo"
Я пытаюсь переопределить кнопку "Подтвердить заказ" в модуле "Покупка". Эта кнопка преобразует предложение в заказ на покупку (состояние: Покупка подтверждена), одновременно автоматически создавая новую квитанцию в модуле "Склад", поэтому, когда я нажимаю кнопку "Получить товары", я вижу квитанцию.
Я попытался использовать много разных функций, но когда я нажал кнопку, он просто изменил состояние, а не создал новую квитанцию. Кроме того, я обнаружил, что эта кнопка из рабочего процесса, и ее функция может быть "wkf_confirm_order", но она не работает.
@api.multi
def purchase_confirm(self):
#super(purchase_order,self).wkf_bid_received()
super(purchase_order,self).wkf_confirm_order()
#super(purchase_order,self).wkf_approve_order()
return True
Пожалуйста, помогите мне найти правильную функцию. Я действительно ценю твою помощь. Заранее спасибо.
2 ответа
Чтобы узнать, какая функция этой модели будет вызываться при нажатии на эту кнопку, необходимо выполнить следующие действия.
- Запустить режим разработчика
- Нажмите на меню " Заказы на покупку".
- Нажмите на EDIT WORKFLOW в меню отладки.
- Затем откройте эту запись рабочего процесса в виде диаграммы, нажав на представление диаграммы.
- Затем откроется весь рабочий процесс заказа на покупку.
- Нажмите "Подтвердить действие заказа", откроется мастер действий, из которого вы сможете увидеть, какое действие было выполнено, пока вы нажимаете эту кнопку.
Нажмите здесь, чтобы узнать больше о рабочем процессе.
Это правильный синтаксис переопределения метода в Python
def my_method(self):
#do task before my_method
result=super(MyClass,self).my_method()
#do task after my_method by using result
return result
попробуйте этот код:
@api.multi
def purchase_confirm(self):
#do task before confirm
res=super(purchase_order,self).purchase_confirm()
#do task after confirm by using res
return res