- 浏览: 40756 次
- 性别:
- 来自: 广州
-
最新评论
-
yixihttppc:
我使用的是weblogic10,aix环境
Weblogic 8 14中远程数据源的BUG -
yixihttppc:
没太明白你的意思,我现在也有一个程序,这个程序是普通的java ...
Weblogic 8 14中远程数据源的BUG
在客户需求变化时,可能会碰到流程引擎中单工作项的数据拆分成多工作项,下面提供一种实现方式来达到多工作项的拆分.对于新流程是不需要拆分,只是对于流程实例中已运行到相应环节才需要处理。以下提到方法,不是通过EOS流程引擎修改,而是通过直接更新数据库实现。
单工作项的拆分成多工作为如下几步:
1.列出需要拆分工作项的流程实例,并更新流程图,发布时,不要生成新的版本。
2.工作项的循环拆分,并将以前的工作项表中记录的删除或者将工作项记录状态修改为12
3.删除工作项对应的参与者,并按多工作项要求增加参与者记录。
如下提供了一种拆分的实例:是通过ORACLE的存储过程实现。
create or replace procedure UPDATE_WORKITEM_INFO is
begin
declare
k number default - 5000000;---工作项ID
i number default - 1000000;---参与者ID
--每一次使用都需要调整这个值 这个值用来做参与者表主键
begin
--迭代所有需要修改的工作项
FOR each in (select *
from wfworkitem wf
where (wf.currentstate = 4)
and wf.activitydefid = "Provider"
and wf.processdefid = 15) LOOP
--删除与者表中参与者信息
update wfwiparticipant wfw
set wfw.wiparticid = 0 - wfw.wiparticid,
wfw.workitemid = 0 - wfw.workitemid
where wfw.workitemid = each.workitemid;
--根据工作项的流程实例找到相应的参与者
for tt in (select distinct busman
from t_mm_material tmm
where tmm.materialid in
(select t.materialid
from t_mm_orderinfodetail t
where t.orderid in
(select tm.orderid
from t_mm_orderinfo tm
where tm.processinstid = each.processinstid))) loop
i := i + 1;
k := k + 1;
--更新参与者表信息
insert into wfwiparticipant
(wiparticid,
workitemid,
participanttype,
participant,
participant2,
workitemstate,
partiintype,
extend1)
values
(i,
k,
"person",
tt.busman,
tt.busman,
"10",---工作项状态
"EXE",
"P{" || tt.busman || "}");----相应的参与才类型,根据实现业务的不同,会有区别
--更新工作项信息
insert into wfworkitem
(workitemid,
workitemname,
workitemtype,
workitemdesc,
currentstate,
participant,
priority,
istimeout,
limitnum,
limitnumdesc,
createtime,
starttime,
endtime,
finaltime,
actionurl,
processinstid,
activityinstid,
stateslist,
timeoutnum,
timeoutnumdesc,
extend1,
extend2,
processinstname,
activityinstname,
processdefid,
processdefname,
processchname,
activitydefid,
assistant,
bizstate,
allowagent
)
(select k as workitemid,
workitemname,
workitemtype,
workitemdesc,
"10" as currentstate,---多工作项的状态为10
tt.busman as participant,
priority,
istimeout,
limitnum,
limitnumdesc,
createtime,
starttime,
endtime,
finaltime,
actionurl,
each.processinstid as processinstid,
each.activityinstid as activityinstid,
stateslist,
timeoutnum,
timeoutnumdesc,
extend1,
"NPNYYNYNN" as extend2,-----多工作项与单工作项区别
processinstname,
activityinstname,
processdefid,
processdefname,
processchname,
activitydefid,
assistant,
bizstate,
allowagent
from wfworkitem wftp
where wftp.workitemid = each.workitemid);
end loop;
--更新工作项表信息
update wfworkitem wfwor
set wfwor.workitemid = 0 - each.workitemid,
wfwor.processinstid = 0 - each.processinstid ,
wfwor.currentstate= 12
where wfwor.workitemid = each.workitemid ;
END LOOP;
commit;
end;
end;
发表评论
-
EOS6 经验总结
2009-12-29 23:53 1174一、关于数据实体: 1、数据实体的数据类型有很大 ... -
EOS6 集群的原理介绍和配置
2009-05-15 20:11 1761集群中的节点的数据同 ... -
EOS6 集群功能介绍
2009-05-15 20:10 1617集群(Cluster),简单地说,就是用多个服务器或应用节点来 ... -
EOS6 多数据源配置
2009-05-15 20:05 3537EOS6中允许用户配置多个数据源,每个数据源都有引用名称,系统 ... -
EOS6 远程Java客户端调用服务的依赖jar列表
2009-05-15 20:02 2774当使用一个独立的Java客户端调用EOS提供的服务时,根据不同 ... -
EOS服务器和EOS应用
2009-05-15 19:54 4373EOS服务器(EOS Server)是支撑SOA应用和服务的运 ... -
EOS6 基本概念
2009-05-15 19:52 1332EOS Primeton EOSTM是SOA应用 ... -
EOS6 的产品介绍
2009-05-15 19:51 1114EOS基于J2EE、Eclipse等开放的技术和平台 ... -
EOS5 默认日志文件详解及生产问题定位规则
2009-04-22 00:38 1202在EOS5中,日志文件中记 ... -
EOS流程设计与开发总结
2009-04-15 00:01 1167在流程项目开发时,对于流程不复杂,可以按照一定的模式来快速开发 ... -
Web Services中客户端的实现
2009-04-14 23:56 920Axis 客户端的实现一 ... -
Axis服务端实现
2009-04-14 23:52 1334Axis服务端 服务端的实现比较简单,写任意一个类,并将他 ... -
EOS中使用Axis需要注意的一些细节
2009-04-14 23:48 929EOS中有Axis和 ... -
解决EOS因为程序引起系统宕机或者运行缓慢的快速定位方法
2009-04-14 23:45 1256应用中查询结果非常大时,会占用比较多的内存,造成系统内存不足, ... -
eos5.2 减少日志的处理方式
2009-04-14 23:44 898用NOHUP启动EOS时,查询NOHUP日志时,每调用一次WE ... -
使用EOS的价值.
2008-10-24 17:58 1100在这里看到很多关于EOS的评价.可能这里面很多的都是技 ...
相关推荐
在此基础上,进一步阐述了EOS工作流的机制,比如工作流引擎的工作方式、业务流程的生命周期管理等。为了让读者更好地融入到学习过程中,这部分内容的讲解会结合实际工作流应用的案例,使得理论知识能够与实践相结合...
综上所述,EOS流程设计是一个复杂而细致的过程,涉及到多个方面的考量。在实践中,应根据具体业务需求灵活调整设计方案,同时也要注重技术细节的把握。只有这样,才能构建出既符合业务需求又能提供优质用户体验的...
2. **流程引擎**:这是EOS工作流的核心部分,负责解析流程定义并执行流程实例。它能够根据流程图中的指令进行任务调度、状态跟踪和数据处理。 3. **数据库存储**:EOS工作流将流程实例、任务状态以及相关数据存储在...
【普元EOS工作流教程-案例部分】是一个逐步引导学习者掌握EOS工作流开发的教程,旨在通过实际案例,从入门到深入,演示如何利用EOS平台进行工作流的开发和集成。教程分为入门、进阶和深入三个阶段,每个阶段都以同一...
- **平台业务化能力**:通过业务支撑平台提供的引擎扩展能力,EOS Platform 7支持在线业务开发工具,帮助用户设计开发业务组件、业务向导、在线表单和在线流程。这使得用户能够更轻松地构建业务平台化的应用,具有更...
- 了解EOS 7.5 的工作流引擎。 - 设计并实现复杂的业务流程。 **2.2 HelloWorld案例描述** - **知识点概述:** - HelloWorld案例是初学者接触EOS 7.5 的第一个项目。 - 通过这个简单的案例,可以快速入门并...
在这里,C++可能被用来实现与Canon EOS相机的通信,创建用户界面,处理图像数据等。 5. **软件开发流程**:开发这样一个程序需要经历设计、编码、调试、测试等多个阶段。开发者需要理解Canon的API文档,根据需求...
EOS Workflow是一款与EOS平台无缝集成的工作流管理系统,特点在于可视化业务流程建模、灵活的参与者设置和任务分配策略,同时支持自由流和多种事件,适用于高并发、大数据量的企业级应用。 6. SynchroFLOW(西安...
01.03.01 BPS Process Server(BPS流程引擎) 01.03.02 BPS API & Component Library(BPS API和构件库) 01.03.03 BPS Studio(BPS流程设计建模工具) 01.03.04 BPS Governor(BPS引擎治理工具) 01.03.05 BPS ...