Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.

Module: Invoicing

Entity: account.analytic.applicability

Compute Method: _compute_prefix_placeholder

Inputs Method Outputs
account_expense = self.env['account.account'].search([('account_type', '=', 'expense')], limit=1)
account_income = self.env['account.account'].search([('account_type', '=', 'income')], limit=1)
for applicability in self:
            if applicability.business_domain == 'bill':
                account = account_expense
                account_prefixes = "60, 61, 62"
            else:
                account = account_income
                account_prefixes = "40, 41, 42"

            if account and account.code:
                prefix_base = account.code[:2]
                try:
                    # Convert prefix_base to an integer for numerical manipulation
                    prefix_num = int(prefix_base)
                    account_prefixes = f"{prefix_num}, {prefix_num + 1}, {prefix_num + 2}"

                except ValueError:
                    pass

            applicability.account_prefix_placeholder = _("e.g. %(prefix)s", prefix=account_prefixes)

Back to entity