首页 > 解决方案 > 如何在树视图中对检查记录进行计数和求和,然后在表单字段中设置此结果。奥多 8

问题描述

我需要从树形视图中计算和汇总检查记录。

我有树视图: 米树视图

我的代码是:

class summary_bidding_group(models.Model):
    _name = 'summary.bidding.group'
    _description = 'Summary Bidding Group'

    check_contract = fields.Boolean("Check Contract", store = 
    True)
    bidding_amount = fields.Float("plan.bidding", related = 
    'bidding_id.amount', store = True)

class plan_group(models.Model):
    _inherit = 'plan.group'
    summary_bidding_group_id = 
    fields.One2many('summary.bidding.group','group_id',store = True)

    award_bidding = fields.Integer('award bidding', store = True) 
    total_bidding = fields.Float('total bidding', store = True) 

标签: odooodoo-8

解决方案


不要只是寻求解决方案,尝试提供到目前为止您所做的事情以及您遇到的问题。

award_bidding = fields.Integer('award bidding', store = True, compute='_compute_total_biddings') 
total_bidding = fields.Float('total bidding', store = True, compute='_compute_total_biddings')

@api.depends('summary_bidding_group_id')
@api.multi
def _compute_total_biddings(self):
  for record in self:
    selected_bid_lines = record.summary_bidding_group_id.filtered(lambda l: l.check_contract)
    record.update({
      'award_bidding': len(selected_bid_lines),
      'total_bidding': sum(selected_bid_lines.mapped(bidding_amount))
    })

推荐阅读