我创建流程并且task.setAssignee(selfUserId)把任务分配给自己,这时候JBPM4_TASK表的ASSIGNEE_字段的值为6。
“经理审批”环节,如果不同意又回到“创建流程”环节,这时候我发现JBPM4_TASK表的ASSIGNEE_字段为空了,我第一个设的值没有了,roleId为6的人待办任务里都能看见了,请问各位大侠此问题如何解决。
流程图如下:
下面是XML内容:
<?xml version="1.0" encoding="UTF-8"?>
<process xmlns="http://jbpm.org/4.4/jpdl" name="请假流程">
<task candidate-groups="6" form="askForLeaveController.do?askForLeave" g="239,119,92,52" name="创建流程">
<transition to="经理审批"/>
</task>
<start form="askForLeaveController.do?askForLeave" g="259,10,48,48" name="开始">
<transition to="创建流程"/>
</start>
<task candidate-groups="6" form="askForLeaveController.do?approve" g="242,236,92,52" name="经理审批">
<transition to="审批结果"/>
</task>
<decision g="269,342,48,48" name="审批结果">
<transition g="-38,-12" name="同意" to="结束">
<condition expr="#{result=='1'}"/>
</transition>
<transition g="401,367;399,146:-67,91" name="不同意" to="创建流程">
<condition expr="#{result=='0'}"/>
</transition>
</decision>
<end g="270,430,48,48" name="结束"/>
</process>
3 个解决方案
#1
怎么没有人回复呢?这个问题郁闷我好几天了,求求各位帮帮我吧!
#2
因为手头没有jbpm所以也不知道数据库是什么样子。也就没有听懂你的问题。
你的意思是现在你创建了一个流程。经理审批驳回以后然后就是那些为6的候选人就能看见了。然后你不见了么。
如果是这样的话,一切都是正常情况没有什么不对的地方啊。
你的意思是现在你创建了一个流程。经理审批驳回以后然后就是那些为6的候选人就能看见了。然后你不见了么。
如果是这样的话,一切都是正常情况没有什么不对的地方啊。
#3
就是驳回后,环节的参与者又恢复了默认(candidate-groups="6"),我需要的是只有发起流程的人的待办里才能看到,而不是roleId=6的所有人都能看到。
走第一遍流程的时候我明明把参与者设置成发起人的userId了呀。
EnvironmentImpl env = ((EnvironmentFactory)processEngine).openEnvironment();
try {
Task t = processEngine.getTaskService().createTaskQuery().assignee(userId).uniqueResult();
t.setAssignee(userId2);
} catch (Exception e) {
} finally{
env.close();
}
走第一遍流程的时候我明明把参与者设置成发起人的userId了呀。
EnvironmentImpl env = ((EnvironmentFactory)processEngine).openEnvironment();
try {
Task t = processEngine.getTaskService().createTaskQuery().assignee(userId).uniqueResult();
t.setAssignee(userId2);
} catch (Exception e) {
} finally{
env.close();
}
#1
怎么没有人回复呢?这个问题郁闷我好几天了,求求各位帮帮我吧!
#2
因为手头没有jbpm所以也不知道数据库是什么样子。也就没有听懂你的问题。
你的意思是现在你创建了一个流程。经理审批驳回以后然后就是那些为6的候选人就能看见了。然后你不见了么。
如果是这样的话,一切都是正常情况没有什么不对的地方啊。
你的意思是现在你创建了一个流程。经理审批驳回以后然后就是那些为6的候选人就能看见了。然后你不见了么。
如果是这样的话,一切都是正常情况没有什么不对的地方啊。
#3
就是驳回后,环节的参与者又恢复了默认(candidate-groups="6"),我需要的是只有发起流程的人的待办里才能看到,而不是roleId=6的所有人都能看到。
走第一遍流程的时候我明明把参与者设置成发起人的userId了呀。
EnvironmentImpl env = ((EnvironmentFactory)processEngine).openEnvironment();
try {
Task t = processEngine.getTaskService().createTaskQuery().assignee(userId).uniqueResult();
t.setAssignee(userId2);
} catch (Exception e) {
} finally{
env.close();
}
走第一遍流程的时候我明明把参与者设置成发起人的userId了呀。
EnvironmentImpl env = ((EnvironmentFactory)processEngine).openEnvironment();
try {
Task t = processEngine.getTaskService().createTaskQuery().assignee(userId).uniqueResult();
t.setAssignee(userId2);
} catch (Exception e) {
} finally{
env.close();
}