有没有办法确定任务是否已重新分配?
Is there a way to determine if the task was reassigned?
我有多实例并行工作流。
通过使用 Activiti ScriptTaskListener
我写了 workflow-model.xml
业务流程的一些细节。例如,如果 start
我写下所有受让人:
...
var assigneesNodeRefs = '';
for(var i = 0; i < bpm_assignees.size(); i++) {
var assignee = bpm_assignees.get(i);
assigneesNodeRefs += ' separator ' + assignee.nodeRef;
}
execution.setVariable('mswf_participants', assigneesNodeRefs);
...
在活动中complete
我再写一些细节:
...
var reviewDate = new Date();
var bpmComment = task.getVariable('bpm_comment');
var result;
if(task.getVariableLocal('mswf_reviewOutcome') == 'Approve') {
result = 'Approve';
}
...
等等
然后,将 Alfresco Content Services REST API (tasks) I can get the list of variables 用于 JSON 格式的任务。接下来,通过使用JavaScript,我可以解析它并在不同的地方显示各种数据表。
我对重新分配受让人的能力很感兴趣。
假设,如果 assignee_1
将他的任务重新分配给 assignee_2
,我想将这个事实写在 Activiti ScriptTaskListener
.
可能吗?
是的,您可以使用赋值事件
示例:
<userTask id="test" name="Assignb" activiti:assignee="userName" activiti:formKey="<<formKey>>">
<extensionElements>
<activiti:taskListener event="assignment" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string><![CDATA[
var currAssignee = task.assignee;
//gives current task assignee
logger.log(currAssignee );
]]></activiti:string>
</activiti:field>
</activiti:taskListener>
<activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string><![CDATA[
var currAssignee = task.assignee;
]]></activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
</userTask>
我有多实例并行工作流。
通过使用 Activiti ScriptTaskListener
我写了 workflow-model.xml
业务流程的一些细节。例如,如果 start
我写下所有受让人:
...
var assigneesNodeRefs = '';
for(var i = 0; i < bpm_assignees.size(); i++) {
var assignee = bpm_assignees.get(i);
assigneesNodeRefs += ' separator ' + assignee.nodeRef;
}
execution.setVariable('mswf_participants', assigneesNodeRefs);
...
在活动中complete
我再写一些细节:
...
var reviewDate = new Date();
var bpmComment = task.getVariable('bpm_comment');
var result;
if(task.getVariableLocal('mswf_reviewOutcome') == 'Approve') {
result = 'Approve';
}
...
等等
然后,将 Alfresco Content Services REST API (tasks) I can get the list of variables 用于 JSON 格式的任务。接下来,通过使用JavaScript,我可以解析它并在不同的地方显示各种数据表。
我对重新分配受让人的能力很感兴趣。
假设,如果 assignee_1
将他的任务重新分配给 assignee_2
,我想将这个事实写在 Activiti ScriptTaskListener
.
可能吗?
是的,您可以使用赋值事件
示例:
<userTask id="test" name="Assignb" activiti:assignee="userName" activiti:formKey="<<formKey>>">
<extensionElements>
<activiti:taskListener event="assignment" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string><![CDATA[
var currAssignee = task.assignee;
//gives current task assignee
logger.log(currAssignee );
]]></activiti:string>
</activiti:field>
</activiti:taskListener>
<activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string><![CDATA[
var currAssignee = task.assignee;
]]></activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
</userTask>