JWFDV0.96开源工作流系统文档JWFD开源工作流系统开发包简易说明(v0.96.3版本)四川成都市bycomsci2011.10(第二次编辑)四川成都市bycomsci2012.09(第三次编辑)JWFD官方logoJWFDITEYE官方博客说明:JWFD流程设计器采用的是JGRAPH5.03的源代码模块本文档分为两个部分:第一部分为JWFD开源工作流二次开发包GUI图形界面模块与代码简要说明第二部分为JWFD开源工作流二次开发包工作流引擎和基础SQL操作API函数说明(第二次编辑)第三部分为JWFD开源工作流二次开发包主GUI界面的工作区按钮说明(bycomsci第三次编辑)请大家在CSDN或者博客园下载中下载JWFD的其它文档和资料地址1:地址2:开源工作流系统文档第一部分JWFD开源工作流二次开发包GUI图形界面模块与代码简要说明JWFD二次开发包GUI图形界面模块与代码简要说明===========================================================图1-1org.jwfd.workflowDesigner.mainUI.UIComponents.MainJgraphModule.java流程设计器的核心操作功能类(图1-1)重点代码位置说明JWFDV0.96开源工作流系统文档==========================================================流程设计器工作区鼠标弹出功能代码在上述类的第958-1016行(下图)==========================================================流程设计器工作区浮动按钮区代码在上述类的第1031-1204行(下图)本工作区的每个按钮的使用说明在本文最后部分==========================================================第356行设计过程中在源和目的节点之间插入一条连接线功能代码段(点击这个图标,就可以在两个节点之间拉出一条线)===========================================================第250行设计过程中插入一个新节点(insert())功能代码===========================================================第227到240行流程设计器XML文档实时编辑功能代码的导入区(下图)点击Example01.gxl就可以进入XML编辑器===============================================================org.jwfd.workflowDesigner.mainUI.UIComponents.MainJgraphinfoModule.java用于显示和管理主流程设计窗口左下方的流程图节点实时信息(下图)org.jwfd.workflowDesigner.mainUI.UIComponents.MainTreeModule.javaJWFD流程设计器显示和管理流程的左边树形列表窗口功能类(下图)JWFDV0.96开源工作流系统文档在org.jwfd.workflowDesigner.mainUI.UIComponents.MainTreeModule.java类里面的317-395行,这段代码是实现流程图提交入数据库中的实现代码段(下图-提交流程)org.jwfd.workflowDesigner.mainUI.UIComponents.MainWinMenu.javaJWFD流程设计器主菜单栏功能模块类(主窗口菜单栏目仅仅只有文件和关于属性有功能代码,其它都是空模块,由用户自行添加)org.jwfd.workflowDesigner.mainUI.UIComponents.MainWinStatusBar.javaJWFD流程设计器主窗口底部状态栏模块类(下图)org.jwfd.workflowDesigner.mainUI.UIComponents.MainWinToolBar.javaJWFD流程设计器窗口上部TOOLBAR功能模块类(下图)org.jwfd.workflowDesigner.mainUI.UIComponents.XmlEditUI.java流程XML代码与流程图同步编辑类(本类在MainJgraphModule.java中被调用)(下图)JWFDV0.96开源工作流系统文档org.jwfd.workflowDesigner.UItools.NodeAttributeChangeDialog.javaJWFD流程设计器流程节点属性修改功能模块(在GraphEd类中调用的对流程拓扑图节点属性进行编辑的弹出窗口类,修改图的节点ICON和名称,添加流程节点的嵌入条件公式)点击编辑条件公式,出现下面的界面,用户可以在这里面自定义嵌入公式这个界面所对应的代码是org.jwfd.workflowDesigner.UItools.SwingTools.ExpressEditor.javaJWFDV0.96开源工作流系统文档如果用户要自定义XML文档的附加属性,比如说JOIN等事项,请在org.jwfd.workflowDesigner.FLCLs.Gxl.JgraphGxlCodec.java这个类的第439行开始的encodeCondition()这个方法是我后面自定义添加的属性,用户可以自行添加任何附加的XML属性=================JWFD设计器MYSQL数据库模块类包==================================org.jwfd.workflowDesigner.UItools.Database.mysqlorg.jwfd.workflowDesigner.UItools.Database.mysql.MysqlDBconnection.javaJWFD流程系统MYSQL数据库连接配置功能模块(本类通过一个外部param.ini配置文件来连接MYSQL数据库)org.jwfd.workflowDesigner.UItools.Database.mysql.connectionUI.java本类用于流程设计器主菜单“文件”数据库管理“功能模块JWFDV0.96开源工作流系统文档org.jwfd.workflowDesigner.UItools.Database.mysql.FlowsSqlControlModule.javaMYSQL数据库SQL原子操作方法类(本类是JWFD流程引擎算法的基础操作模块类,不同的数据库的SQL操作语句会有冲突)=================JWFD流程设计器XML(GXL)数据操作方法类包=============================org.jwfd.workflowDesigner.FLCLs.Gxl(GXL就是XML,只是文件后缀名不同而已,用户可以根据自己的需要修改为任何后缀名的文件)org.jwfd.workflowDesigner.FLCLs.Gxl.AbstractActionDefault.javaXML(GXL)文件操作接口类(未实现具体的功能)org.jwfd.workflowDesigner.FLCLs.Gxl.ConvertGraphToGxl.java调用本包中的JGraphGXLCodec类将绘制的流程图编码为XML(GXL)文件(本类的方法是其它操作主调用方法)org.jwfd.workflowDesigner.FLCLs.Gxl.ConvertGxlToGraph.java读取XML(GXL)文件并将其显示在JGRAPH工作区中org.jwfd.workflowDesigner.FLCLs.Gxl.GxlToDatabase.javaorg.jwfd.workflowDesigner.FLCLs.Gxl.ParserGxl.java将XML(GXL)文件的流程数据转换成MYSQL数据库中表数据的SQL操作代码类(上面两个类是联合使用的)====================================================org.jwfd.workflowDesigner.FLCLs.Gxl.JgraphGxlCodec.java将设计器设计出的流程图数据解码为XML(GXL)数据的关键操作类(为流程节点添加新的属性也需要在这里编辑,我修改的地方在第416-454行)==========================对流程设计器进行界面修饰的SWING组件包==========================JWFDV0.96开源工作流系统文档org.jwfd.workflowDesigner.UItools.SwingToolsorg.jwfd.workflowDesigner.UItools.SwingTools.CellRender.java对流程设计器左边的流程树型列表进行修饰的类org.jwfd.workflowDesigner.UItools.SwingTools.CellRenderGINFO.java对流程设计器左边树型节点的ICON进行修饰的类org.jwfd.workflowDesigner.UItools.SwingTools.CloseTabIcon.javaorg.jwfd.workflowDesigner.UItools.SwingTools.JClosableTabbedPane.java(上述两个类)为每个打开的流程图工作区创建一个带关闭图标的TAB组件org.jwfd.workflowDesigner.UItools.SwingTools.ExpressEditor.javaJWFD流程设计器的节点嵌入式表达式编辑器的SWING界面模块org.jwfd.workflowDesigner.UItools.SwingTools.JTabbedPane1.java流程GXL(XML)代码与流程图同步显示和编辑的按键类(关联操作类为org.jwfd.workflowDesigner.mainUI.UIConponents下面的XmlEditUI.java)org.jwfd.workflowDesigner.UItools.SwingTools.ProgressBarModule.javaJWFD流程设计器中提交流程图入库中显示的进度控制条SWING模块org.jwfd.workflowDesigner.UItools.SwingTools.UserTreeModule.java从数据库中提取用户和部门信息生成一棵树(v0.94版本以后已经未使用)===============================嵌入式公式引擎模块==============================================org.jwfd.workflowEngines.GrammarAnalysisorg.jwfd.workflowEngines.GrammarAnalysis.GrammarInterface.java嵌入式脚本公式引擎的主接口工作类,另外三个类均是由antlr的结构文件自动生成的用于处理节点嵌入公式(antrl的语法文件在JWFD官网上面有下载),如果需要自己修改嵌入公式结构,就需要这个结构文档===========J