from openerp import api, fields, models class AccountJournal(models.Model): _inherit = 'account.journal' @api.model def get_journals(self): domain = [ ('active', '=', True), ('type', 'in', ['bank', 'cash']), ('default_credit_account_id.currency_id', '=', False) ] journals = [] for journal in self.env['account.journal'].search(domain, order='id'): if not (journal.store_ids >= self.env.user.store_ids): continue journals.append({ 'id': journal.id, 'name': journal.name, 'display_name': journal.display_name, 'code': journal.code, 'cash_control': journal.cash_control, 'type': journal.type, 'currency': { 'id': journal.currency.id, 'name': journal.currency.name, 'display_name': journal.currency.display_name }, 'default_credit_account': { 'id': journal.default_credit_account_id.id, 'name': journal.default_credit_account_id.name, 'display_name': journal.default_credit_account_id.display_name, 'code': journal.default_credit_account_id.code, 'exchange_rate': journal.default_credit_account_id.exchange_rate, 'foreign_balance': journal.default_credit_account_id.foreign_balance, 'reconcile': journal.default_credit_account_id.reconcile, 'debit': journal.default_credit_account_id.debit, 'credit': journal.default_credit_account_id.credit, 'currency_mode': journal.default_credit_account_id.currency_mode, 'company_currency': { 'id': journal.default_credit_account_id.company_currency_id.id, 'name': journal.default_credit_account_id.company_currency_id.name, 'display_name': journal.default_credit_account_id.company_currency_id.display_name, }, 'currency': { 'id': journal.default_credit_account_id.currency_id.id, 'name': journal.default_credit_account_id.currency_id.name, 'display_name': journal.default_credit_account_id.currency_id.display_name } }, 'default_debit_account': { 'id': journal.default_debit_account_id.id, 'name': journal.default_debit_account_id.name, 'display_name': journal.default_debit_account_id.display_name, 'code': journal.default_debit_account_id.code, 'exchange_rate': journal.default_credit_account_id.exchange_rate, 'foreign_balance': journal.default_credit_account_id.foreign_balance, 'reconcile': journal.default_credit_account_id.reconcile, 'debit': journal.default_credit_account_id.debit, 'credit': journal.default_credit_account_id.credit, 'currency_mode': journal.default_credit_account_id.currency_mode, 'company_currency': { 'id': journal.default_credit_account_id.company_currency_id.id, 'name': journal.default_credit_account_id.company_currency_id.name, 'display_name': journal.default_credit_account_id.company_currency_id.display_name, }, 'currency': { 'id': journal.default_credit_account_id.currency_id.id, 'name': journal.default_credit_account_id.currency_id.name, 'display_name': journal.default_credit_account_id.currency_id.display_name } } }) return journals