odoo 13 中树视图上的计算字段
Computed field on a tree view in odoo 13
在odoo中自定义模块
我添加计算字段 transactions_count
该字段在表单视图中正确显示
但是在树视图中显示不正确(如果它的值为零,则显示前一条记录的值)
这是我的代码:
transactions_count = fields.Float(string='Total Amount', compute='_compute_transactions_ids')
@api.depends('transactions_ids')
def _compute_transactions_ids(self):
amount = 0.0
for order in self:
for line in order.transactions_ids:
amount = amount+ line.amount_total
order.transactions_count = amount
我认为你应该为每个 order in self
重新启动 amount = 0.0
,所以你应该将 amount = 0.0
放在你的第一个 for
.
中
希望这个回答能对您有所帮助。
可能需要在第一个循环中设置 amount=0,如下所示。
transactions_count = fields.Float(string='Total Amount', compute='_compute_transactions_ids')
@api.depends('transactions_ids')
def _compute_transactions_ids(self):
for order in self:
amount = 0.0
for line in order.transactions_ids:
amount = amount+ line.amount_total
order.transactions_count = amount
请检查并告诉我是否适合您。
谢谢。
在odoo中自定义模块 我添加计算字段 transactions_count 该字段在表单视图中正确显示 但是在树视图中显示不正确(如果它的值为零,则显示前一条记录的值)
这是我的代码:
transactions_count = fields.Float(string='Total Amount', compute='_compute_transactions_ids')
@api.depends('transactions_ids')
def _compute_transactions_ids(self):
amount = 0.0
for order in self:
for line in order.transactions_ids:
amount = amount+ line.amount_total
order.transactions_count = amount
我认为你应该为每个 order in self
重新启动 amount = 0.0
,所以你应该将 amount = 0.0
放在你的第一个 for
.
希望这个回答能对您有所帮助。
可能需要在第一个循环中设置 amount=0,如下所示。
transactions_count = fields.Float(string='Total Amount', compute='_compute_transactions_ids')
@api.depends('transactions_ids')
def _compute_transactions_ids(self):
for order in self:
amount = 0.0
for line in order.transactions_ids:
amount = amount+ line.amount_total
order.transactions_count = amount
请检查并告诉我是否适合您。
谢谢。