diff --git a/addons/pos_sale/report/sale_report.py b/addons/pos_sale/report/sale_report.py index cf3ec8f4723..d8399ee4b78 100644 --- a/addons/pos_sale/report/sale_report.py +++ b/addons/pos_sale/report/sale_report.py @@ -24,7 +24,7 @@ class SaleReport(models.Model): def _select_pos(self): select_ = """ - MIN(l.id) AS id, + -MIN(l.id) AS id, l.product_id AS product_id, t.uom_id AS product_uom, SUM(l.qty) AS product_uom_qty, diff --git a/addons/pos_sale/tests/test_pos_sale_report.py b/addons/pos_sale/tests/test_pos_sale_report.py index 1c1509ca4d4..2f27d3e9723 100644 --- a/addons/pos_sale/tests/test_pos_sale_report.py +++ b/addons/pos_sale/tests/test_pos_sale_report.py @@ -31,8 +31,8 @@ class TestPoSSaleReport(TestPoSCommon): session.action_pos_session_closing_control() - # Orders are reversed, so reports[0] will correspond to the second order - reports = self.env['sale.report'].sudo().search([('product_id', '=', self.product0.id)], order='id desc', limit=2) + # PoS Orders have negative IDs to avoid conflict, so reports[0] will correspond to the newest order + reports = self.env['sale.report'].sudo().search([('product_id', '=', self.product0.id)], order='id', limit=2) self.assertEqual(reports[0].weight, 3) self.assertEqual(reports[0].volume, 4) self.assertEqual(reports[1].weight, 18)