@api.multi
def action_undo_history(self):
history_obj = self.env['membership.history']
for reg in self:
history_ids = history_obj.search([('name_id', '=', reg.name_id.id)], history_ids[0].date)
history_ids = self.env['membership.history'].search([('name_id', '=', reg.name_id.id)], order='date desc')
current_state = reg.name_id.state
history_state = reg.state_new
if history_ids[0] == reg and current_state == history_state:
reg.name_id.state == reg.state_old
else :
message = _("Only the latest history can be cancelled !")
mess= {
'title': _('Error : Cancelling State'),
'message' : message
}
return {'warning': mess}
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Buchhaltung
- Lager
- PoS
- Project
- MRP
Diese Frage wurde gekennzeichnet
1
Antworten
12213
Ansichten
Hi,
You are getting this error because you are accessing the value from the field named history_ids in this line of the code before defining the field.
history_ids = history_obj.search([('name_id', '=', reg.name_id.id)], history_ids[0].date)
but, you haven't assigned what value should that variable hold. You should update your code such a way that you have to define the variable before using it.
for reg in self:
history_ids = ?
history_ids = history_obj.search([('name_id', '=', reg.name_id.id)], history_ids[0].date)
history_ids = self.env['membership.history'].search([('name_id', '=', reg.name_id.id)], order='date desc')
Thanks
Diskutieren Sie gerne? Treten Sie bei, statt nur zu lesen!
Erstellen Sie heute ein Konto, um exklusive Funktionen zu nutzen und mit unserer tollen Community zu interagieren!
RegistrierenVerknüpfte Beiträge | Antworten | Ansichten | Aktivität | |
---|---|---|---|---|
|
1
Juli 23
|
3007 | ||
|
2
Juli 22
|
9163 | ||
|
1
Mai 22
|
3125 | ||
|
1
Juni 21
|
2449 | ||
[SOLVED] Get related field
Gelöst
|
|
2
Feb. 21
|
299 |