diff --git a/erpnext/accounts/doctype/dunning/dunning.py b/erpnext/accounts/doctype/dunning/dunning.py index 36c517a4782cb36a2b1cbead5fd9cd8d0da7abf7..b466e02026a27f2d1f352a486a97fb4b19510ad1 100644 --- a/erpnext/accounts/doctype/dunning/dunning.py +++ b/erpnext/accounts/doctype/dunning/dunning.py @@ -193,10 +193,13 @@ def resolve_dunning(doc, state): outstanding_ps = frappe.get_value( "Payment Schedule", overdue_payment.payment_schedule, "outstanding" ) - resolve = False if (outstanding_ps > 0 and outstanding_inv > 0) else True + resolve = resolve and (False if (outstanding_ps > 0 and outstanding_inv > 0) else True) - dunning.status = "Resolved" if resolve else "Unresolved" - dunning.save() + new_status = "Resolved" if resolve else "Unresolved" + + if dunning.status != new_status: + dunning.status = new_status + dunning.save() def get_linked_dunnings_as_per_state(sales_invoice, state):