Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
33320 Представления

i have pos_order_total field in contact tree view , and it's calculates perfecly if store=False , but if store=True it doesnt calculates if i make another pos order for client. how can i make this work with store=True. 
Maybe i need to add some depends fields. i tryed

from odoo import api, fields, models


class ResPartner(models.Model):
    _inherit = 'res.partner'
    
    order_id = fields.One2many('pos.order', 'amount_total') pos_order_total = fields.Monetary( string='POS Order Total', compute='_compute_pos_order_total', store=True)

    @api.depends('order_id') def _compute_pos_order_total(self): Order = self.env['pos.order'] for partner in self: total = 0.0 domain = [('partner_id', '=', partner.id)] for o in Order.search(domain): total += o.amount_total partner.pos_order_total = total
Аватар
Отменить

When you keep store=True, your compute function will be only called when the depends field value is changed.

In your above code, if store=True

_compute_pos_order_total will only be called if order_id field is changed in partner.

Hope this helps.

Thank You

Related Posts Ответы Просмотры Активность
1
сент. 19
8525
9
мар. 20
42108
1
мая 19
3832
2
окт. 18
4016
1
окт. 17
4256