Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
6661 Lượt xem

I want to update the 'price_unit' of the 'recurring_invoice_line_ids' when a field in sale.subscription changes 


It works when you run whit a button, but doesn't trigger the depens


Here is my code:


class SubscriptionPlanes(models.Model):

_inherit = 'sale.subscription'

        pagadas_count = fields.Integer()



        @api.depends('pagadas_count')

def update_sub_line(self):

subline_aporte = self.env['sale.subscription.line'].search(['&', ('analytic_account_id', '=', self.id), ('product_id.default_code', '=', 'APORTE')])

subline_cmac = self.env['sale.subscription.line'].search(['&', ('analytic_account_id', '=', self.id), ('product_id.default_code', '=', 'CMAC')])

subline_aporte.write({'price_unit': 1000})

subline_cmac.write({'price_unit': 500})

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

DO update the computation in the comodel of one2many field.

Here is the format for updating one2many or many2many fields.

(0, 0, { values }) link to a new record that needs to be created with the given values dictionary

(1, ID, { values }) update the linked record with id = ID (write values on it)

(2, ID) remove and delete the linked record with id = ID (calls unlink on ID, that will delete the object completely, and the link to it as well)

(3, ID) cut the link to the linked record with id = ID (delete the relationship between the two objects but does not delete the target object itself)

(4, ID) link to existing record with id = ID (adds a relationship)

(5) unlink all (like using (3,ID) for all linked records)

(6, 0, [IDs]) replace the list of linked IDs (like using (5) then (4,ID) for each ID in the list of IDs)

https://hilarlive.wordpress.com/2017/04/22/one2many-or-many2many-flags/


Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
1
thg 12 22
13611
3
thg 9 21
5699
3
thg 3 20
2907
1
thg 3 20
2257
3
thg 3 20
4617