我需要计算并显示项目的数量,例如 apurchase.order.line
并将它们显示在integer
类型字段上。
例如,在purchase.order
我添加 13 个项目或产品;此字段,将存储然后显示在purchase.order.line
此购买的项目数量之外。
我查看了 stackexchange 和 openerp 书籍,但没有找到此类函数的示例。
我应该寻找任何模块或现有功能吗?
提前致谢
我不完全确定你在问什么。您的意思是,如果您有一个包含 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”。我是凭记忆这样做的,我不记得列名。