picking_type_code=fields.Char(compute="_compute_picking_type_code_ANDtrasferANDpicking_type",store=True,help="field used as domain filter for picking_type_id and is based on type of invoice")
defonchange_invoice_type(self):
ifself.env.context.get('default_team_id',False)or(self._fields.get('team_id',False)andself.invoice_origin):# is a invoice from sale order
transfer_state='make_the_transfer_from_sale'
self.picking_type_id=False
self.transfer_state=transfer_state
return
ifself.env.context.get('default_purchase_id',False)or(self._fields.get('purchase_id',False)andself.purchase_id):# is a invoice from purchase order
if(record._context.get('active_model')=='sale.order')or(record.env.context.get('default_team_id',False))or(record._fields.get('team_id',False)andrecord.invoice_origin):# is a invoice from sale order
transfer_state='make_the_transfer_from_sale'
# record.picking_type_id = False
record.transfer_state=transfer_state
return
if(record._context.get('active_model')=='purchase.order')or(record.env.context.get('default_purchase_id',False))or(record._fields.get('purchase_id',False)andrecord.purchase_id):# is a invoice from purchase order
transfer_state='make_the_transfer_from_purchase'
# record.picking_type_id = False
record.transfer_state=transfer_state
return
ifrecord.invoice_picking_id:
record.transfer_state='transfer_created'
return
transfer_state='nothing_to_transfer'
forlineinrecord.invoice_line_ids:
ifline.product_id:
ifline.product_id.type=='product':
transfer_state='not_initiated'
break
record.transfer_state=transfer_state
defaction_stock_move(self):
defaction_stock_move(self):
"will be executed at the pressing of transfer button"
"will be executed at the pressing of transfer button"
fororderinself:# order is account.move meaning also invoice
fororderinself:# order is account.move meaning also invoice
@ -118,7 +103,7 @@ class InvoiceStockMove(models.Model):