From bb2d6bd0d03f4dc3bbd0333d3e5aedd51e8d234e Mon Sep 17 00:00:00 2001 From: "David (dafr)" Date: Tue, 19 Apr 2022 08:22:17 +0000 Subject: [PATCH] [FIX] mrp: fix double document creation on mrp.document copy This PR fix the "This attachment is already a document" Error when clicking on the "Apply Changes" button of a mrp.eco (Engineering Change Orders) in the PLM App. With the Documents App installed and the "Product: Centralize files attached to products" document setting activated, copying the attachment will also copy the document. Then when we try to copy the current document and link it to the new attachment, the above mentioned error appear. The context no_document=True prevent the document copy during the attachment copy. OPW-2762448 closes odoo/odoo#89324 X-original-commit: ed306afc0e812c1e42984f1b6cb94e61409f0144 Signed-off-by: Simon Goffin Signed-off-by: DavidFesquet --- addons/mrp/models/mrp_document.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/mrp/models/mrp_document.py b/addons/mrp/models/mrp_document.py index c9323620756..3dccc2f7fe6 100644 --- a/addons/mrp/models/mrp_document.py +++ b/addons/mrp/models/mrp_document.py @@ -20,7 +20,7 @@ class MrpDocument(models.Model): if ir_default: ir_fields = list(self.env['ir.attachment']._fields) ir_default = {field : default[field] for field in default.keys() if field in ir_fields} - new_attach = self.ir_attachment_id.copy(ir_default) + new_attach = self.ir_attachment_id.with_context(no_document=True).copy(ir_default) return super().copy(dict(default, ir_attachment_id=new_attach.id)) ir_attachment_id = fields.Many2one('ir.attachment', string='Related attachment', required=True, ondelete='cascade')