Commit 841d300a authored by wenjie.zheng's avatar wenjie.zheng

WorkflowTool.py: an unknown reason that edit workflow isn't converted during...

WorkflowTool.py: an unknown reason that edit workflow isn't converted during the workflow conversion, to resolve this , now forcedly convert edit workflow.
parent 7cbad2a2
......@@ -924,11 +924,12 @@ class ERP5TypeCommandLineTestCase(ERP5TypeTestCaseMixin):
def dynamicalWorkflowConversion(self):
# Converting DCWorkflow dynamically
workflow_tool = self.portal.portal_workflow
type_value_list = []
if workflow_tool.getPortalType() == "Workflow Tool":
type_workflow_dict = workflow_tool.getChainsByType()
for workflow_id in workflow_tool:
for workflow_id in workflow_tool.objectIds():
workflow = workflow_tool._getOb(workflow_id)
if workflow.getPortalType() not in ['Workflow', 'Interaction Workflow', 'Configuration Workflow']:
if workflow.getPortalType() not in ['Workflow', 'Interaction Workflow']:
new_workflow = workflow_tool.dc_workflow_asERP5Object(workflow_tool, workflow, temp=0)
for ptype_id in type_workflow_dict:
ptype = getattr(self.portal.portal_types, ptype_id, None)
......@@ -938,6 +939,22 @@ class ERP5TypeCommandLineTestCase(ERP5TypeTestCaseMixin):
# 2. assign ERP5 Workflow to portal type:
if workflow_id not in ptype.getTypeWorkflowList():
ptype.addTypeWorkflowList(workflow_id)
if ptype not in type_value_list:
type_value_list.append(ptype)
# force convert edit_workflow: Why have to load edit_workflow this way?
edit_workflow = workflow_tool._getOb('edit_workflow', None)
if edit_workflow is not None:
new_workflow = workflow_tool.dc_workflow_asERP5Object(workflow_tool, workflow, temp=0)
for ptype_id in type_workflow_dict:
ptype = getattr(self.portal.portal_types, ptype_id, None)
if ptype is not None and 'edit_workflow' in workflow_tool.getChainsByType()[ptype_id]:
workflow_tool.delTypeCBT(ptype_id, 'edit_workflow')
if 'edit_workflow' not in ptype.getTypeWorkflowList():
ptype.addTypeWorkflowList('edit_workflow')
# respect the original workflow order
for type_value in type_value_list:
type_value.workflow_list = tuple(reversed(type_value.workflow_list))
self.commit()
def setUpERP5Site(self,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment