[IMP] account: add invoice_id in account invoice report
Purpose is to be able to have invoice_id information on accounting report. It allows notably to filter reporting result by invoice. This will be used notably to have reporting information about invoiced amount linked to UTM-based sale order subset. This commit is linked to task ID 1872198 and PR #26188.
This commit is contained in:
@@ -47,6 +47,7 @@ class AccountInvoiceReport(models.Model):
|
||||
user_currency_price_average = fields.Float(string="Average Price in Currency", compute='_compute_amounts_in_user_currency', digits=0)
|
||||
currency_rate = fields.Float(string='Currency Rate', readonly=True, group_operator="avg", groups="base.group_multi_currency")
|
||||
nbr = fields.Integer(string='Line Count', readonly=True) # TDE FIXME master: rename into nbr_lines
|
||||
invoice_id = fields.Many2one('account.invoice', readonly=True)
|
||||
type = fields.Selection([
|
||||
('out_invoice', 'Customer Invoice'),
|
||||
('in_invoice', 'Vendor Bill'),
|
||||
@@ -92,7 +93,7 @@ class AccountInvoiceReport(models.Model):
|
||||
select_str = """
|
||||
SELECT sub.id, sub.number, sub.date, sub.product_id, sub.partner_id, sub.country_id, sub.account_analytic_id,
|
||||
sub.payment_term_id, sub.uom_name, sub.currency_id, sub.journal_id,
|
||||
sub.fiscal_position_id, sub.user_id, sub.company_id, sub.nbr, sub.type, sub.state,
|
||||
sub.fiscal_position_id, sub.user_id, sub.company_id, sub.nbr, sub.invoice_id, sub.type, sub.state,
|
||||
sub.categ_id, sub.date_due, sub.account_id, sub.account_line_id, sub.partner_bank_id,
|
||||
sub.product_qty, sub.price_total as price_total, sub.price_average as price_average,
|
||||
COALESCE(cr.rate, 1) as currency_rate, sub.residual as residual, sub.commercial_partner_id as commercial_partner_id
|
||||
@@ -108,7 +109,7 @@ class AccountInvoiceReport(models.Model):
|
||||
u2.name AS uom_name,
|
||||
ai.currency_id, ai.journal_id, ai.fiscal_position_id, ai.user_id, ai.company_id,
|
||||
1 AS nbr,
|
||||
ai.type, ai.state, pt.categ_id, ai.date_due, ai.account_id, ail.account_id AS account_line_id,
|
||||
ai.id AS invoice_id, ai.type, ai.state, pt.categ_id, ai.date_due, ai.account_id, ail.account_id AS account_line_id,
|
||||
ai.partner_bank_id,
|
||||
SUM ((invoice_type.sign * ail.quantity) / u.factor * u2.factor) AS product_qty,
|
||||
SUM(ail.price_subtotal_signed * invoice_type.sign) AS price_total,
|
||||
@@ -149,7 +150,7 @@ class AccountInvoiceReport(models.Model):
|
||||
group_by_str = """
|
||||
GROUP BY ail.id, ail.product_id, ail.account_analytic_id, ai.date_invoice, ai.id,
|
||||
ai.partner_id, ai.payment_term_id, u2.name, u2.id, ai.currency_id, ai.journal_id,
|
||||
ai.fiscal_position_id, ai.user_id, ai.company_id, ai.type, invoice_type.sign, ai.state, pt.categ_id,
|
||||
ai.fiscal_position_id, ai.user_id, ai.company_id, ai.id, ai.type, invoice_type.sign, ai.state, pt.categ_id,
|
||||
ai.date_due, ai.account_id, ail.account_id, ai.partner_bank_id, ai.residual_company_signed,
|
||||
ai.amount_total_company_signed, ai.commercial_partner_id, partner.country_id
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user