From a09dfc0538d58a7ea714ffa16b6645aab04f1f3f Mon Sep 17 00:00:00 2001 From: Raimon Esteve Date: Mon, 6 Dec 2021 23:21:49 +0100 Subject: [PATCH] Prevent division by zero when migrating effort into progress issue10990 review370341002 (grafted from a7422b368042e9ce7666b55428cce24d8cb8826e) --HG-- branch : 6.0 --- project.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/project.py b/project.py index f366d88f29..d3efe1aa8b 100644 --- a/project.py +++ b/project.py @@ -11,6 +11,7 @@ from sql import Null from sql.aggregate import Sum from sql.functions import Extract from sql.operators import Concat +from sql.conditionals import NullIf from trytond.i18n import gettext from trytond.model import ModelSQL, ModelView, fields @@ -684,7 +685,7 @@ class WorkInvoicedProgress(ModelView, ModelSQL): # Don't use UPDATE FROM because SQLite does not support it. value = work.select( (Extract('EPOCH', sql_table.effort_duration) - / Extract('EPOCH', work.effort_duration)), + / NullIf(Extract('EPOCH', work.effort_duration), 0)), where=work.id == sql_table.work) cursor.execute(*sql_table.update([sql_table.progress], [value]))