fix: get workflow_state_fieldname instead of setting workflow_state to none
This commit is contained in:
parent
5cc6daa713
commit
ee9cb43835
1 changed files with 6 additions and 2 deletions
|
|
@ -7,6 +7,7 @@ import frappe
|
|||
from frappe import _
|
||||
from frappe.desk.doctype.bulk_update.bulk_update import show_progress
|
||||
from frappe.model.document import Document
|
||||
from frappe.model.workflow import get_workflow_name
|
||||
|
||||
|
||||
class DeletedDocument(Document):
|
||||
|
|
@ -27,8 +28,11 @@ def restore(name, alert=True):
|
|||
except frappe.DocstatusTransitionError:
|
||||
frappe.msgprint(_("Cancelled Document restored as Draft"))
|
||||
doc.docstatus = 0
|
||||
if doc.workflow_state:
|
||||
doc.workflow_state = None
|
||||
active_workflow = get_workflow_name(doc.doctype)
|
||||
if active_workflow:
|
||||
workflow_state_fieldname = frappe.get_value("Workflow", active_workflow, "workflow_state_field")
|
||||
if doc.get(workflow_state_fieldname):
|
||||
doc.set(workflow_state_fieldname, None)
|
||||
doc.insert()
|
||||
|
||||
doc.add_comment("Edit", _("restored {0} as {1}").format(deleted.deleted_name, doc.name))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue