details: https://code.tryton.org/tryton/commit/cfb1a0f2add2
branch: 7.8
user: Cédric Krier <[email protected]>
date: Sat Mar 14 09:58:22 2026 +0100
description:
Do not divide LineExtensionAmount by a quantity of zero from UBL invoice
The unit price of such line can be the LineExtensionAmount.
Closes #14673
(grafted from 6cbd5ee8bd570898b24ff1ad7f9158e6dc770318)
diffstat:
modules/edocument_ubl/edocument.py | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diffs (21 lines):
diff -r 463521825fef -r cfb1a0f2add2 modules/edocument_ubl/edocument.py
--- a/modules/edocument_ubl/edocument.py Wed Mar 04 12:36:33 2026 +0100
+++ b/modules/edocument_ubl/edocument.py Sat Mar 14 09:58:22 2026 +0100
@@ -438,7 +438,7 @@
line.unit_price = round_price(
Decimal(invoice_line.findtext('./{*}LineExtensionAmount'))
- / Decimal(str(line.quantity)))
+ / Decimal(str(line.quantity or 1)))
if invoice_line.find('./{*}Item/{*}ClassifiedTaxCategory') is not None:
tax_categories = invoice_line.iterfind(
@@ -669,7 +669,7 @@
line.unit_price = round_price(
-Decimal(credit_note_line.findtext('./{*}LineExtensionAmount'))
- / Decimal(str(line.quantity)))
+ / Decimal(str(line.quantity or -1)))
if (credit_note_line.find('./{*}Item/{*}ClassifiedTaxCategory')
is not None):