首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示odoo-12中组中的数字总和

显示odoo-12中组中的数字总和
EN

Stack Overflow用户
提问于 2021-09-12 08:06:47
回答 1查看 172关注 0票数 0

我已经创建了两个字段,并在树视图中定义了它们的视图。我将属性sum添加到字段视图以显示总和,但它只在树视图中有效,在组中不起作用。如何在组中也显示总和?

这是python部分:

代码语言:javascript
复制
quantity_in = fields.Float('Quantity In', compute='get_qty_in')
quantity_out = fields.Float('Quantity Out', compute='get_qty_in')

这是字段视图的xml部分:

代码语言:javascript
复制
<record id="stock_move_inherit_view" model="ir.ui.view">
  <field name="name">stock.move.inherit.view</field>
  <field name="model">stock.move.line</field>
  <field name="inherit_id" ref="stock.view_move_line_tree"/>
  <field name="arch" type="xml">
    <xpath expr="//field[@name='qty_done']" position="before">
      <field name="quantity_in" sum="Total In Quantity"/>
      <field name="quantity_out" sum="Total Out Quantity"/>
      <field name="quantity_total"/>
    </xpath>
  </field>
</record>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-13 17:15:44

您需要继承模型/类的read_group方法:例如,您的字段名称为quantity_in

代码语言:javascript
复制
class Your_class_name(models.Model):
    # ...        
    @api.model 
    def read_group(self, domain, fields, groupby, offset=0, limit=None, orderby=False, lazy=True):
        res = super(your_class, self).read_group(domain, fields, groupby, offset=offset, limit=limit, orderby=orderby, lazy=lazy)
        if 'quantity_in' in fields:
            for line in res:
                if '__domain' in line:
                    lines = self.search(line['__domain'])
                    in_quantity = 0.0
                    for record in lines:
                        in_quantity += record.quantity_in
                    line['quantity_in'] = in_quantity
        return res
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69149584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档