How do I solve psycopg2.ProgrammingError: column reference "account_analytic_id" is ambiguous in odoo
How do I solve psycopg2.ProgrammingError: column reference "account_analytic_id" is ambiguous in odoo
我正在尝试将模块从 odoo 8 移动到 odoo 12,但在 odoo 12 环境中尝试安装 odoo 8 模块时出现此错误。
psycopg2.ProgrammingError: column reference "account_analytic_id" is ambiguous
LINE 18: ..., sub.product_id, sub.partner_id, sub.country_id, sub.accoun...
这是我怀疑错误来自的代码块
class AccountInvoiceReport(models.Model):
_inherit = 'account.invoice.report'
cost_center_id = fields.Many2one(
'account.cost.center',
string='Cost Center',
readonly=True
)
account_analytic_id = fields.Many2one(
'account.analytic.account',
string='Analytic Account',
readonly=True
)
def _select(self):
return super(AccountInvoiceReport, self)._select() + \
", sub.cost_center_id as cost_center_id, " + \
"sub.account_analytic_id as account_analytic_id"
def _sub_select(self):
return super(AccountInvoiceReport, self)._sub_select() + \
", ail.cost_center_id as cost_center_id, " + \
"ail.account_analytic_id as account_analytic_id"
def _group_by(self):
return super(AccountInvoiceReport, self)._group_by() + \
", ail.cost_center_id, " + \
"ail.account_analytic_id"
只需删除带有 account_analytic_id
的查询部分,因为它已经在 Odoo 12 的 account.invoice.report
中。
可以看到here
我正在尝试将模块从 odoo 8 移动到 odoo 12,但在 odoo 12 环境中尝试安装 odoo 8 模块时出现此错误。
psycopg2.ProgrammingError: column reference "account_analytic_id" is ambiguous
LINE 18: ..., sub.product_id, sub.partner_id, sub.country_id, sub.accoun...
这是我怀疑错误来自的代码块
class AccountInvoiceReport(models.Model):
_inherit = 'account.invoice.report'
cost_center_id = fields.Many2one(
'account.cost.center',
string='Cost Center',
readonly=True
)
account_analytic_id = fields.Many2one(
'account.analytic.account',
string='Analytic Account',
readonly=True
)
def _select(self):
return super(AccountInvoiceReport, self)._select() + \
", sub.cost_center_id as cost_center_id, " + \
"sub.account_analytic_id as account_analytic_id"
def _sub_select(self):
return super(AccountInvoiceReport, self)._sub_select() + \
", ail.cost_center_id as cost_center_id, " + \
"ail.account_analytic_id as account_analytic_id"
def _group_by(self):
return super(AccountInvoiceReport, self)._group_by() + \
", ail.cost_center_id, " + \
"ail.account_analytic_id"
只需删除带有 account_analytic_id
的查询部分,因为它已经在 Odoo 12 的 account.invoice.report
中。
可以看到here