diff --git a/addons/mrp/models/mrp_production.py b/addons/mrp/models/mrp_production.py index 7682a2c03b1..5e3aac36594 100644 --- a/addons/mrp/models/mrp_production.py +++ b/addons/mrp/models/mrp_production.py @@ -762,14 +762,14 @@ class MrpProduction(models.Model): order_exceptions.update(order_exception) visited_objects += visited visited_objects = self.env[visited_objects[0]._name].concat(*visited_objects) - visited_objects |= visited_objects.mapped('move_orig_ids') - impacted_pickings = [] - if visited_objects._name == 'stock.move': - impacted_pickings = visited_objects.filtered(lambda m: m.state not in ('done', 'cancel')).mapped('picking_id') + impacted_object = [] + if visited_objects and visited_objects._name == 'stock.move': + visited_objects |= visited_objects.mapped('move_orig_ids') + impacted_object = visited_objects.filtered(lambda m: m.state not in ('done', 'cancel')).mapped('picking_id') values = { 'production_order': self, 'order_exceptions': order_exceptions, - 'impacted_pickings': impacted_pickings, + 'impacted_object': impacted_object, 'cancel': cancel } return self.env.ref('mrp.exception_on_mo').render(values=values) diff --git a/addons/stock/models/stock_picking.py b/addons/stock/models/stock_picking.py index fec28f96de1..a3b7f71aa81 100644 --- a/addons/stock/models/stock_picking.py +++ b/addons/stock/models/stock_picking.py @@ -4,6 +4,7 @@ from collections import namedtuple import json import time +from datetime import date from itertools import groupby from odoo import api, fields, models, _ @@ -919,14 +920,12 @@ class Picking(models.Model): """ for (parent, responsible), rendering_context in documents.items(): note = render_method(rendering_context) - - self.env['mail.activity'].create({ - 'activity_type_id': self.env.ref('mail.mail_activity_data_warning').id, - 'note': note, - 'user_id': responsible.id, - 'res_id': parent.id, - 'res_model_id': self.env['ir.model'].search([('model', '=', parent._name)], limit=1).id, - }) + parent.activity_schedule( + 'mail.mail_activity_data_warning', + date.today(), + note=note, + user_id=responsible.id + ) def _log_less_quantities_than_expected(self, moves): """ Log an activity on picking that follow moves. The note