簡體   English   中英

如何編輯計算字段 [Odoo 15]

[英]How to edit a computed field [Odoo 15]

我希望 reservation_amount 是 sale_total 的一半,但它必須是一個可編輯的字段,所以我可以隨時更改它。 我現在的問題是當我更改字段的值時,它重置為 sale_total 的一半,我認為這是因為計算值。 我該怎么做才能改變它? 或者我如何設置為 reservation_amount 的第一個值,即 sale_total 的一半,這樣它就可以更改了?

這是我的實際代碼

sale_total = fields.Float(
    string="Total Sale", compute='_onchange_calculate_total')
reservation_amount = fields.Float(
    string="Reservation amount", readonly=False,
    store=True, compute="_onchange_reservation_amount")

@api.onchange('sale_total')
def _onchange_reservation_amount(self):
    for rec in self:
        rec.reservation_amount = rec.sale_total / 2

@api.onchange('reservation_line')
def _onchange_calculate_total(self):
    count = 0
    for line in self.reservation_line:
        count += line.subtotal

    self.sale_total = count

reservation_amount中刪除compute="_onchange_reservation_amount" ,您將能夠根據需要編輯該字段,而無需重置該字段。 sale_total改變時,它只會重置為sale_total的一半。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM