diff --git a/rma/models/rma_order.py b/rma/models/rma_order.py index 253f968a..54134542 100644 --- a/rma/models/rma_order.py +++ b/rma/models/rma_order.py @@ -109,9 +109,9 @@ class RmaOrder(models.Model): for move in line.move_ids: if move.picking_id.location_id == suppliers: picking_ids.append(move.picking_id.id) - shipments = list(set(picking_ids)) - # choose the view_mode accordingly - if shipments: + if picking_ids: + shipments = list(set(picking_ids)) + # choose the view_mode accordingly if len(shipments) > 1: result['domain'] = [('id', 'in', shipments)] else: @@ -136,14 +136,15 @@ class RmaOrder(models.Model): for move in line.move_ids: if move.picking_id.location_id != suppliers: picking_ids.append(move.picking_id.id) - shipments = list(set(picking_ids)) - # choose the view_mode accordingly - if len(shipments) != 1: - result['domain'] = [('id', 'in', shipments)] - else: - res = self.env.ref('stock.view_picking_form', False) - result['views'] = [(res and res.id or False, 'form')] - result['res_id'] = shipments[0] + if picking_ids: + shipments = list(set(picking_ids)) + # choose the view_mode accordingly + if len(shipments) != 1: + result['domain'] = [('id', 'in', shipments)] + else: + res = self.env.ref('stock.view_picking_form', False) + result['views'] = [(res and res.id or False, 'form')] + result['res_id'] = shipments[0] return result @api.multi diff --git a/rma/models/rma_order_line.py b/rma/models/rma_order_line.py index 454af5cc..58287ba7 100644 --- a/rma/models/rma_order_line.py +++ b/rma/models/rma_order_line.py @@ -519,13 +519,14 @@ class RmaOrderLine(models.Model): ('rma_line_id', 'in', self.ids)]) picking_ids = moves.mapped('picking_id').filtered( lambda p: p.picking_type_code == 'incoming').ids - # choose the view_mode accordingly - if len(picking_ids) > 1: - result['domain'] = [('id', 'in', picking_ids)] - else: - res = self.env.ref('stock.view_picking_form', False) - result['views'] = [(res and res.id or False, 'form')] - result['res_id'] = picking_ids and picking_ids[0] + if picking_ids: + # choose the view_mode accordingly + if len(picking_ids) > 1: + result['domain'] = [('id', 'in', picking_ids)] + else: + res = self.env.ref('stock.view_picking_form', False) + result['views'] = [(res and res.id or False, 'form')] + result['res_id'] = picking_ids and picking_ids[0] return result @api.multi @@ -536,11 +537,12 @@ class RmaOrderLine(models.Model): ('rma_line_id', 'in', self.ids)]) picking_ids = moves.mapped('picking_id').filtered( lambda p: p.picking_type_code == 'outgoing').ids - # choose the view_mode accordingly - if len(picking_ids) > 1: - result['domain'] = [('id', 'in', picking_ids)] - else: - res = self.env.ref('stock.view_picking_form', False) - result['views'] = [(res and res.id or False, 'form')] - result['res_id'] = picking_ids and picking_ids[0] + if picking_ids: + # choose the view_mode accordingly + if len(picking_ids) > 1: + result['domain'] = [('id', 'in', picking_ids)] + else: + res = self.env.ref('stock.view_picking_form', False) + result['views'] = [(res and res.id or False, 'form')] + result['res_id'] = picking_ids and picking_ids[0] return result diff --git a/rma/wizards/rma_make_picking.py b/rma/wizards/rma_make_picking.py index db785c2f..dfbac614 100644 --- a/rma/wizards/rma_make_picking.py +++ b/rma/wizards/rma_make_picking.py @@ -187,7 +187,7 @@ class RmaMakePicking(models.TransientModel): @api.model def _get_action(self, pickings, procurements): - if pickings: + if pickings and procurements: action = procurements.do_view_pickings() else: action = self.env.ref(