details:   https://code.tryton.org/tryton/commit/2970b7a17df8
branch:    default
user:      Cédric Krier <[email protected]>
date:      Sat Nov 01 13:04:15 2025 +0100
description:
        Use list price used of product to calculate the dunning fee

        Since 117e51123978 the multi-value list price field is also defined on 
variant
        and it may be None. The list price used must be used instead.

        Closes #14344
diffstat:

 modules/account_dunning_fee/dunning.py |  9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diffs (19 lines):

diff -r 4329aec140b0 -r 2970b7a17df8 modules/account_dunning_fee/dunning.py
--- a/modules/account_dunning_fee/dunning.py    Sat Nov 01 11:10:56 2025 +0100
+++ b/modules/account_dunning_fee/dunning.py    Sat Nov 01 13:04:15 2025 +0100
@@ -30,9 +30,12 @@
             'required': Eval('compute_method') == 'percentage',
             })
 
-    def get_list_price(self, dunning, **pattern):
-        pattern.setdefault('company', dunning.company.id)
-        return self.product.get_multivalue('list_price', **pattern)
+    def get_list_price(self, dunning):
+        pool = Pool()
+        Product = pool.get('product.product')
+        with Transaction().set_context(company=dunning.company.id):
+            product = Product(self.product)
+            return product.list_price_used
 
     def get_amount(self, dunning):
         'Return fee amount and currency'

Reply via email to