0

我需要计算并显示项目的数量,例如 apurchase.order.line并将它们显示在integer类型字段上。

例如,在purchase.order我添加 13 个项目或产品;此字段,将存储然后显示在purchase.order.line此购买的项目数量之外。

我查看了 stackexchange 和 openerp 书籍,但没有找到此类函数的示例。

我应该寻找任何模块或现有功能吗?

提前致谢

4

1 回答 1

1

我不完全确定你在问什么。您的意思是,如果您有一个包含 13 行的采购订单,您希望采购订单上的一个字段显示 13 个订单行上数量字段的总和?

如果是这样,您需要扩展 purchase.order 模型并添加一个函数字段,该字段将遍历订单行并汇总数量。

您的专栏将是:

'total_quantity': fields.function(_get_total_quantity, type='float', method = True, string = 'Total Quantity', readonly = True),

你的方法是:

def _get_total_quantity(self, cr, uid, ids, field, args, context = None):
    res = {}
    for po in self.browse(cr, uid, ids, context = context):
        res[po.id] = sum([x.quantity for x in po.order_line])

    return res

请检查采购订单行的 purchase.order 上 one2many 的名称是否为“order_line”。我是凭记忆这样做的,我不记得列名。

于 2013-07-14T09:37:18.993 回答