Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
1 Odpowiedz
12201 Widoki

@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}

Awatar
Odrzuć
Najlepsza odpowiedź

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

Awatar
Odrzuć
Powiązane posty Odpowiedzi Widoki Czynność
1
lip 23
3005
2
lip 22
9155
1
maj 22
3118
1
cze 21
2448
2
lut 21
299