From 53f1accdeef7060a06914302a4bac666f3954987 Mon Sep 17 00:00:00 2001 From: Carlos Lopez Date: Tue, 25 Aug 2026 16:04:40 -0500 Subject: [PATCH] [OU-FIX] sale_timesheet: Add timesheet_product_id column only if it does not exist In the Enterprise edition, this field is added by the industry_fsm module. To prevent an SQL error when the column already exists, add the IF NOT EXISTS clause. --- .../scripts/sale_timesheet/14.0.1.0/post-migration.py | 3 ++- .../scripts/sale_timesheet/14.0.1.0/pre-migration.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/post-migration.py b/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/post-migration.py index 5d3572f4d2ab..23e2f7b389ae 100644 --- a/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/post-migration.py +++ b/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/post-migration.py @@ -22,7 +22,8 @@ def _fill_project_timesheet_product(env): env.cr, """UPDATE project_project pp SET timesheet_product_id = %s - WHERE pp.pricing_type IS NOT NULL AND pp.allow_timesheets""", + WHERE pp.pricing_type IS NOT NULL AND pp.allow_timesheets + AND timesheet_product_id IS NULL""", (product.id,), ) diff --git a/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/pre-migration.py b/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/pre-migration.py index 35162e779e49..b216c5c81330 100644 --- a/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/pre-migration.py +++ b/openupgrade_scripts/scripts/sale_timesheet/14.0.1.0/pre-migration.py @@ -35,5 +35,6 @@ def migrate(env, version): openupgrade.rename_fields(env, _field_renames) map_pricing_type(env) openupgrade.logged_query( - env.cr, "ALTER TABLE project_project ADD timesheet_product_id int4" + env.cr, + "ALTER TABLE project_project ADD COLUMN IF NOT EXISTS timesheet_product_id int4", )