This commit allows the user in charge of manufacturing products to split his production into different lots if this production is done via workorders. Using a lot in a workorder will adds constraint to all the other ones. It will also prefil the final lot field and matching quantity to produce for futur workorders. This commit uses workorder lines (in another one2many as standard workorder_line_ids) to register lot/serial number and produced quantity. Prefill lots and quantities are all read from those lines Task : 1891864
18 lines
834 B
Python
18 lines
834 B
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import models, _
|
|
from odoo.exceptions import UserError
|
|
|
|
|
|
class StockProductionLot(models.Model):
|
|
_inherit = 'stock.production.lot'
|
|
|
|
def _check_create(self):
|
|
active_mo_id = self.env.context.get('active_mo_id')
|
|
if active_mo_id:
|
|
active_mo = self.env['mrp.production'].browse(active_mo_id)
|
|
if not active_mo.picking_type_id.use_create_components_lots:
|
|
raise UserError(_('You are not allowed to create or edit a lot or serial number for the components with the operation type "Manufacturing". To change this, go on the operation type and tick the box "Create New Lots/Serial Numbers for Components".'))
|
|
return super(StockProductionLot, self)._check_create()
|