if context is None: context = {}
result = super(invoice_directly, self).do_partial(cr, uid, ids, context)
partial = self.browse(cr, uid, ids[0], context)
++ if partial.picking_id.state != 'done' and partial.picking_id.backorder_id:
++ # delivery is not finished, opening invoice on backorder
++ picking = partial.picking_id.backorder_id
++ else:
++ picking = partial.picking_id
context.update(active_model='stock.picking',
- active_ids=[partial.picking_id.id])
- if partial.picking_id.invoice_state == '2binvoiced':
- active_ids=[partial.picking_id.backorder_id.id])
- if partial.picking_id.backorder_id.invoice_state == '2binvoiced':
++ active_ids=[picking.id])
++ if picking.invoice_state == '2binvoiced':
return {
'name': 'Create Invoice',
'view_type': 'form',