From e4cc346dfe21caf4542850e227070db1aa332d29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phan=20Sainl=C3=A9ger?= Date: Fri, 29 May 2026 23:16:32 +0200 Subject: [PATCH] [MIG] timesheet_timesheet_analysis_report: migrate to 18.0 --- timesheet_timesheet_analysis_report/README.md | 19 ++++++++++++++----- .../__init__.py | 2 +- .../__manifest__.py | 7 ++++--- .../models/__init__.py | 2 +- .../models/timesheet_analysis_report.py | 15 ++++++++++++--- 5 files changed, 32 insertions(+), 13 deletions(-) diff --git a/timesheet_timesheet_analysis_report/README.md b/timesheet_timesheet_analysis_report/README.md index f12269d..4c26b9a 100644 --- a/timesheet_timesheet_analysis_report/README.md +++ b/timesheet_timesheet_analysis_report/README.md @@ -1,20 +1,26 @@ # timesheet_timesheet_analysis_report -Add a `timesheet_id` Many2one relation to the `timesheets.analysis.report` model, linking each analysis report line back to its source `account.analytic.line` record. This allows filtering and grouping the Timesheet Analysis Report by individual timesheet entry. +Add a `timesheet_id` Many2one relation to the `timesheets.analysis.report` model, +linking each analysis report line back to its source `account.analytic.line` record. +This allows filtering and grouping the Timesheet Analysis Report by individual timesheet +entry. ## Installation -Use the standard Odoo module installation procedure to install `timesheet_timesheet_analysis_report`. +Use the standard Odoo module installation procedure to install +`timesheet_timesheet_analysis_report`. **Dependencies:** `base`, `hr_timesheet` ## Configuration -No specific configuration is required. The `timesheet_id` field is automatically available on the Timesheet Analysis Report once the module is installed. +No specific configuration is required. The `timesheet_id` field is automatically +available on the Timesheet Analysis Report once the module is installed. ## Usage -After installation, the Timesheet Analysis Report (`timesheets.analysis.report`) includes a new **Timesheet** field. You can use it to: +After installation, the Timesheet Analysis Report (`timesheets.analysis.report`) +includes a new **Timesheet** field. You can use it to: - **Filter** the analysis report by specific timesheet entries. - **Group by** timesheet to aggregate data per individual time entry. @@ -26,7 +32,10 @@ None yet. ## Bug Tracker -Bugs are tracked on [our issues website](https://git.elabore.coop/Elabore/hr-tools/issues). In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smash it by providing detailed feedback. +Bugs are tracked on +[our issues website](https://git.elabore.coop/Elabore/hr-tools/issues). In case of +trouble, please check there if your issue has already been reported. If you spotted it +first, help us smash it by providing detailed feedback. ## Credits diff --git a/timesheet_timesheet_analysis_report/__init__.py b/timesheet_timesheet_analysis_report/__init__.py index 9a7e03e..0650744 100644 --- a/timesheet_timesheet_analysis_report/__init__.py +++ b/timesheet_timesheet_analysis_report/__init__.py @@ -1 +1 @@ -from . import models \ No newline at end of file +from . import models diff --git a/timesheet_timesheet_analysis_report/__manifest__.py b/timesheet_timesheet_analysis_report/__manifest__.py index f5e9f22..52b127e 100644 --- a/timesheet_timesheet_analysis_report/__manifest__.py +++ b/timesheet_timesheet_analysis_report/__manifest__.py @@ -5,14 +5,15 @@ "name": "timesheet_timesheet_analysis_report", "version": "18.0.1.0.0", "author": "Elabore", - "website": "https://elabore.coop", + "website": "https://git.elabore.coop/elabore/hr-tools", "maintainer": "Elabore", "license": "AGPL-3", "category": "HR", "summary": "add a timesheet_id relation to timesheet.analysis.report model", # any module necessary for this one to work correctly "depends": [ - "base","hr_timesheet", + "base", + "hr_timesheet", ], "qweb": [], "external_dependencies": { @@ -29,4 +30,4 @@ # and independently installed. Used for synergetic or glue modules. "auto_install": False, "application": False, -} \ No newline at end of file +} diff --git a/timesheet_timesheet_analysis_report/models/__init__.py b/timesheet_timesheet_analysis_report/models/__init__.py index 5ef14e0..2e30f14 100644 --- a/timesheet_timesheet_analysis_report/models/__init__.py +++ b/timesheet_timesheet_analysis_report/models/__init__.py @@ -1 +1 @@ -from . import timesheet_analysis_report \ No newline at end of file +from . import timesheet_analysis_report diff --git a/timesheet_timesheet_analysis_report/models/timesheet_analysis_report.py b/timesheet_timesheet_analysis_report/models/timesheet_analysis_report.py index 432350e..36f8dca 100644 --- a/timesheet_timesheet_analysis_report/models/timesheet_analysis_report.py +++ b/timesheet_timesheet_analysis_report/models/timesheet_analysis_report.py @@ -1,12 +1,21 @@ -from odoo import fields, models, api +from odoo import api, fields, models + class TimesheetsAnalysisReport(models.Model): _inherit = "timesheets.analysis.report" - timesheet_id = fields.Many2one("account.analytic.line", string="Timesheet", readonly=True, help="Feuille de temps") + timesheet_id = fields.Many2one( + "account.analytic.line", + string="Timesheet", + readonly=True, + help="Feuille de temps", + ) @api.model def _select(self): - return super()._select() + """, + return ( + super()._select() + + """, A.id AS timesheet_id """ + )