@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
- Comptabilité
- Inventaire
- PoS
- Project
- MRP
Cette question a été signalée
1
Répondre
12231
Vues
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
Vous appréciez la discussion ? Ne vous contentez pas de lire, rejoignez-nous !
Créez un compte dès aujourd'hui pour profiter de fonctionnalités exclusives et échanger avec notre formidable communauté !
S'inscrirePublications associées | Réponses | Vues | Activité | |
---|---|---|---|---|
|
1
juil. 23
|
3012 | ||
|
2
juil. 22
|
9177 | ||
|
1
mai 22
|
3143 | ||
|
1
juin 21
|
2453 | ||
[SOLVED] Get related field
Résolu
|
|
2
févr. 21
|
299 |