JBPM如何查待办列表(注意:待办需要关联相关业务信息)?
tobacco
2007-03-27
比较简单的作法是首先通过jbpm的findTaskInstance()方法得到待办,然后从环境变量或业务申请表中查到业务信息。
不过这样好象性能比较差,各位有什么好的办法没有? |
|
meluan
2007-03-27
同问,以前使用过采用实力视图的方式
|
|
yangzhan
2007-03-28
我现在工作中用的shark,得到待办就是自已写sql拿的
|
|
dreamax
2007-03-29
不知道这样是否可行,没测试过
创建一个actionHandle的基类,在里面可以拿到上下文节点,然后把这个节点的taskInstanceId插到业务表中 以后查待办直接按照条件查业务表,连接把taskInstanceId带上 |
|
dengzi725
2007-04-01
假如你的流程配置信息是用数据库方式的话,可以这样来得到代办工作列表:
下面是我写的SQL语句,你可以参考一下: select distinct a.* , e.*, b.*, c.*, z.* from JBPM_TASKINSTANCE a , tbl_wf_taskextend b, tbl_wf_taskinstance c, tbl_wf_dailyevent z, JBPM_NODE e where a.id_ = b.f_jbpm_taskinstanceid and b.fwf_te_pnode_id=e.id_ and b.fwf_ti_id = c.fwf_ti_id and z.fwf_ti_id = c.fwf_ti_id and a.actorid_ = '00000000000000000000' and a.iscancelled_ = '0' and a.end_ is null and a.issignalling_ = '1' order by a.create_ desc; 其中tbl_wf开头的表是我扩展的工作流中的表。可以取得当天登陆人的代办列表。 |
|
dengzi725
2007-04-01
select distinct a.* , b.* , c.* , d.* , e.* , z.*
from JBPM_TASKINSTANCE a, JBPM_TOKEN b, tbl_wf_taskextend c, JBPM_NODE d, tbl_wf_taskinstance e, tbl_wf_dailyevent z where a.token_ = b.id_ and a.id_ = c.f_jbpm_taskinstanceid and b.node_ = d.id_ and c.fwf_ti_id = e.fwf_ti_id and c.fwf_ti_id = z.fwf_ti_id and a.actorid_ = '111111111111111' and a.issignalling_ = '0' and a.iscancelled_ = '0' and a.end_ is not null order by a.create_ desc 这个是返回当前登陆人的已办工作列表。 |