From 88b9c025779a5bccd9c4ea62dda60c6fedfe081f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Fri, 11 Apr 2025 13:24:16 +0200 Subject: [PATCH] Prevent to revise multiple times the same asset with the same invoice line Closes #13970 --- modules/account_asset/asset.py | 5 +++++ modules/account_asset/message.xml | 3 +++ 2 files changed, 8 insertions(+) diff --git a/modules/account_asset/asset.py b/modules/account_asset/asset.py index 39db924d3a..c3cc954294 100644 --- a/modules/account_asset/asset.py +++ b/modules/account_asset/asset.py @@ -948,6 +948,11 @@ class AssetRevision(ModelSQL, ModelView): @classmethod def __setup__(cls): super().__setup__() + table = cls.__table__() + cls._sql_constraints += [ + ('asset_origin_unique', Unique(table, table.asset, table.origin), + 'account_asset.msg_revision_asset_origin_unique'), + ] cls.__access__.add('asset') @fields.depends('asset', '_parent_asset.currency') diff --git a/modules/account_asset/message.xml b/modules/account_asset/message.xml index d588844f9a..1816424ac0 100644 --- a/modules/account_asset/message.xml +++ b/modules/account_asset/message.xml @@ -24,5 +24,8 @@ this repository contains the full copyright notices and license terms. --> There is no started asset. + + A revision origin can be used only once per asset. +