From 3751379f1e9a4c215fb6eb898b4ccc67659b9ace Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 10 May 2022 21:51:50 +0700 Subject: initial commit 2 --- addons/sale_margin/report/__init__.py | 4 ++++ addons/sale_margin/report/sale_report.py | 14 ++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 addons/sale_margin/report/__init__.py create mode 100644 addons/sale_margin/report/sale_report.py (limited to 'addons/sale_margin/report') diff --git a/addons/sale_margin/report/__init__.py b/addons/sale_margin/report/__init__.py new file mode 100644 index 00000000..7b0761d5 --- /dev/null +++ b/addons/sale_margin/report/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from . import sale_report diff --git a/addons/sale_margin/report/sale_report.py b/addons/sale_margin/report/sale_report.py new file mode 100644 index 00000000..1ac87891 --- /dev/null +++ b/addons/sale_margin/report/sale_report.py @@ -0,0 +1,14 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import fields, models + + +class SaleReport(models.Model): + _inherit = 'sale.report' + + margin = fields.Float('Margin') + + def _query(self, with_clause='', fields={}, groupby='', from_clause=''): + fields['margin'] = ", SUM(l.margin / CASE COALESCE(s.currency_rate, 0) WHEN 0 THEN 1.0 ELSE s.currency_rate END) AS margin" + return super(SaleReport, self)._query(with_clause, fields, groupby, from_clause) -- cgit v1.2.3