This question has been flagged
1 Reply
3287 Views

Hello,

I dont know how to change many2one field in onchange method.

What i need to do is: when someone is creating a new invoice and changing currency, bank account changing in the same time. I'm using exception to have a look at the value of partner_bank_account.

@api.onchange('currency_id')
	def currency_id_change(self):
		if self.currency_id:
			return {
                            'value': {
                                'partner_bank_id': ????????????????,
                                    }
                                }
			raise except_orm(('Warning!'), (self.partner_bank_id))

Avatar
Discard
Best Answer

Hi,

You may try like this,  if you use single partner bank account for one currency:

@api.onchange('currency_id')
def _currency_id_change(self):
     
     if self.currency_id:
         bank_account_rec = self.env['res.partner.bank'].search(['currency_id','=',self.currency_id.id])
         self.partner_bank_id = bank_account_rec.id
         

Hope this helps!

Avatar
Discard
Author

It works without changing anything. Thanks a lot Akhil p Sivan