This question has been flagged

need to override account_invoice model default value of  journal_id field. I'm trying to do it like this:

class
account_invoice(models.Model):      _inherit = 'account.invoice'
    @api.model

    def _default_journal(self): 
        return None                   
    @api.model
    def _default_currency(self):
        inv_type = self._context.get('type', 'out_invoice')        

         inv_types = inv_type  if isinstance(inv_type, list) else [inv_type]         
        company_id = self._context.get('company_id', self.env.user.company_id.id)         
        domain = [ ('type', 'in', filter(None, map(TYPE2JOURNAL.get, inv_types))), ('company_id', '=', company_id), ]       

        journal = self.env['account.journal'].search(domain, limit=1) 

       return journal.currency or journal.company_id.currency_id.


But  def _default_currency is never override and its call from the odoo native model

Avatar
Discard

Can you please try by defining journal_id field in account.invoice model again with that default function ?