名柏表 2024-10-06 11:12 采纳率: 0%
浏览 20
已结题

odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据

odoo17的分包路线如何设置?可从销售订单中直接触发采购订单及相关单据
举例:FURN_8888办公台灯这个产品的物料清单是分包的,由A组件和B组件组成,如果销售订单中销售FURN_8888办公台灯,可否直接自动触发产生采购订单及分包重新供应,如果再供应产品需制造产生,A组件和B组件下面仍有物料清单子级,如何设置实时触发其对应的制造订单或其他单据,如何设置产品自动补货和实时补货,路线和路由应如何配置

  • 写回答

29条回答 默认 最新

  • 阿里嘎多学长 2024-10-06 11:13
    关注
    获得0.30元问题酬金

    AIGC生成:


    odoo17的分包重新供应路线如何设置?

    Odoo17提供了分包路线(BOM)和重新供应路线(MRP)两个功能,可以实现从销售订单中直接触发采购订单和相关单据。

    首先,需要在产品的物料清单中设置分包路线。例如,FURN_8888办公台灯的物料清单是分包的,由A组件和B组件组成,可以在物料清单中添加对应的组件。

    其次,需要在重新供应路线中设置触发采购订单的条件。可以在重新供应路线中添加一个触发器,例如,当销售订单中的产品数量大于或等于某个阈值时,触发采购订单。

    下面是一个示例代码,演示如何在重新供应路线中设置触发采购订单的条件:

    # 在重新供应路线中添加触发器
    class MRPRoute(models.Model):
        _inherit = 'mrp.route'
    
        def _generate_purchase_order(self, product, quantity):
            # 检查销售订单中的产品数量是否大于或等于某个阈值
            if product.sale_order_quantity >= 100:
                # 触发采购订单
                purchase_order = self.env['purchase.order'].create({
                    'partner_id': product.partner_id.id,
                    'date_order': fields.Date.today(),
                    'order_line': [(0, 0, {
                        'product_id': product.id,
                        'product_qty': quantity,
                        'price_unit': product.list_price,
                    })]
                })
                return purchase_order
            return super()._generate_purchase_order(product, quantity)
    

    在上面的代码中,我们添加了一个触发器,检查销售订单中的产品数量是否大于或等于100,如果是,则触发采购订单。


    评论

报告相同问题?

问题事件

  • 系统已结题 10月14日
  • 创建了问题 10月6日