versión 1.2.1: la diferencia de importes con SAP se redondea a 2 decimales

La comparación abs(a - b) < 0.01 no era fiable por la coma flotante: el mismo
céntimo se aceptaba o rechazaba según el importe (431.41 contra 431.40 se
rechazaba y 624.39 contra 624.38 se aceptaba). pipeline_utils.importes_coinciden
redondea la diferencia a 2 decimales, lo que muestra un comprobante, y admite
hasta 1 céntimo. Se usa en la validación de precios y en la comparación del
valor referencial. Con datos reales de SAP (49 líneas) ningún resultado cambió.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
GeorgeandClaude Sonnet 5.5 committed 2026-10-22 13:07:28 -05:00
1 parent cdcecc2b56
commit 3b5400018c
11 files changed
+95 -17

No files matched your search

+7
View File
@@ -44,3 +44,10 @@ def test_valor_referencial_no_coincide():
factura = {"lineas": [{"valor_referencial": 10.0}]}
html = n.build_valor_referencial_html(factura, [{"serie": "T001", "numero": "1", "valor_sap": 9.0}])
assert "❌ No coincide" in html
def test_valor_referencial_con_un_centimo_de_diferencia_coincide():
factura = {"lineas": [{"valor_referencial": 624.38}]}
html = n.build_valor_referencial_html(factura, [{"serie": "T001", "numero": "1", "valor_sap": 624.39}])
assert "✅ Coincide" in html