ESK的个人空间

鞋服行业、系统架构、ERP性能分析、Java技术、工作流、商业智能

  博客园 :: :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2011年6月5日

摘要: TranstionInstance.java /* 触发弧线 * @see org.fireflow.kernel.IEdgeInstance#take(org.fireflow.kernel.IToken) */ public boolean take(IToken token) throws KernelException { //触发弧线taking事件 EdgeInstanceEvent e = new EdgeInstanceEvent(this); e.setToken(token); e.setEventType(EdgeInstanceEvent.ON_TAKING_THE_T 阅读全文
posted @ 2011-06-05 07:54 ESK 阅读(926) 评论(0) 推荐(0) 编辑

2011年6月4日

摘要: Netinstance.java/* 运行流程 * @see org.fireflow.kernel.INetInstance#run(org.fireflow.engine.IProcessInstance) */ public void run(IProcessInstance processInstance) throws KernelException { if (startNodeInstance == null) { KernelException exception = new KernelException(processInstance, this.getWorkflowPr 阅读全文
posted @ 2011-06-04 21:58 ESK 阅读(678) 评论(0) 推荐(0) 编辑

摘要: KernelManager.java /** * 在获取工作流网实例的时候,调用createNetInstance方法,创建实例 * @param processId 流程定义ID * @param version 流程版本号 * @return * @throws KernelException */ public INetInstance getNetInstance(String processId, Integer version) throws KernelException { INetInstance netInstance = this.netInstanceMap.get( 阅读全文
posted @ 2011-06-04 21:26 ESK 阅读(746) 评论(0) 推荐(0) 编辑

摘要: //这里使用了回调函数,这里手工处理事务的一种方法 currentProcessInstance = (IProcessInstance) transactionTemplate.execute(new TransactionCallback() { public Object doInTransaction(TransactionStatus arg0) { try { //IWorkflowSession是流程操作的入口,需要从runtimeContext获得。 IWorkflowSession workflowSession = runtimeContext.getWorkflowSes 阅读全文
posted @ 2011-06-04 21:22 ESK 阅读(1581) 评论(0) 推荐(0) 编辑

摘要: 使用sqlserver作为数据库的应用系统,都避免不了有时候会产生死锁, 死锁出现以后,维护人员或者开发人员大多只会通过sp_who来查找死锁的进程,然后用sp_kill杀掉。利用sp_who_lock这个存储过程,可以很方便的知道哪个进程出现了死锁,出现死锁的问题在哪里.创建sp_who_lock存储过程CREATE procedure sp_who_lock as begin declare @spid int declare @blk int declare @count int declare @index int declare @lock tinyint set @lock=0 . 阅读全文
posted @ 2011-06-04 17:39 ESK 阅读(21589) 评论(4) 推荐(12) 编辑

摘要: Java要解析xml并不困难,fireflow的作者是采用dom4j来解析.具体解析的类为:Dom4JPDLParser,另外还有一个类Dom4JFPDLSerializer,它的作用是将工作流模型写成Xml. 1):如何配置xml解析器的,作者提供了两个模式,一个是开发阶段用的definitionService4FileSystem,一个是实施阶段的definitionService4DBMS <bean id="definitionService4FileSystem" class="org.fireflow.engine.definition.Defi 阅读全文
posted @ 2011-06-04 15:29 ESK 阅读(3229) 评论(0) 推荐(0) 编辑

摘要: 事件驱动在fireflow用的频率很高.比如:StartNodeInstance,TransitionInstance,ActivityInstance,LoopInstance,EndNodeInstance 1):定义事件监听器接口模型package org.fireflow.kernel.event;import org.fireflow.kernel.KernelException;/** *定义事件监听器模型 * */public interface INodeInstanceEventListener { /** * 节点实例监听器 * @param e * @throws Ke. 阅读全文
posted @ 2011-06-04 11:14 ESK 阅读(1604) 评论(0) 推荐(1) 编辑

摘要: 鞋服行业的信息化,最能听到的词就是:速度很慢,性能不行.根据我对这个行业的了解,目前国内鞋服行业信软件的架构,开发大多在2004以前,刚开始针对的模式都是代理商的模式,现在慢慢软件从代理商实施到总部,自然而然的出现问题。最突出的就是性能,因为总部和代理商的组织架构,数据量的大小是不能一概而论的。最近有幸拜读了一下taobao的数据库架构师丹林/赵林写的<<淘宝数据库架构演进历程>>,很有认知感。 1):数据库的设计要有变化,一些查询要从多表关联过渡到单表复杂查询. 现在鞋服行业信息化软件,大多还停留在第一步,即多表关联Join阶段,也就是属于taobao初级阶段。是否有 阅读全文
posted @ 2011-06-04 09:32 ESK 阅读(3575) 评论(3) 推荐(2) 编辑

2011年6月3日

摘要: 首先解释两个概念: 工作流,将工作分解成几段不同的任务,然后通过一定的规则和过程来执行这些任务并对它们进行监控,达到提高工作效率,降低生产成本,提高企业竞争力等目的.它大多应用于办公自动化领域. 业务流:它是企业内部资源之间的数据流动,一般通过企业资源计划系统(ERP)对企业中的物流、资金流和信息流进行全面集成管理.但是在实际的企业中,常常有些需求,需要在OA系统和ERP系统中来回切换,比如:采购用款申请,付款,做凭证则是ERP系统中的功能(如下图)。 此外,企业在利用oa系统进行工作流审批后,会产生一些业务数据,而这些业务数据又可能是ERP系统中的外部数据源,比如上图的采购费用申请的数据。为 阅读全文
posted @ 2011-06-03 09:59 ESK 阅读(5750) 评论(2) 推荐(4) 编辑

2011年6月2日

摘要: 刚刚写完<<关于oracle的闪回技术>>,行业群内的一个朋友告诉我,sqlserver也是可以恢复的。无论是用delete,还是truncate.并且发给我一个工具叫:Log Explorer for SQL Serverv.要使用log Exploer,有个前堤,数据库故障还原模型必须为:完全. 中午没事测试了一下。把log文件备份下来,将数据库表的数据删除一些后。进入log explorer.注意:LogExplore不支持直接修改数据库.他可以生成事物的逆操作脚本。通过Undo user Tranactions或redo user Transactions就可以 阅读全文
posted @ 2011-06-02 14:46 ESK 阅读(13891) 评论(1) 推荐(1) 编辑