APP下载

基于Web环境的可定制流程的电子公文系统

2010-06-11李永燕张风民杨云国

城市轨道交通研究 2010年9期
关键词:控件绘制图形

李永燕 张风民 杨云国

(上海铁大电信设备有限公司,200331,上海∥第一作者,工程师)

随着城市轨道交通的网络化发展,站点迅速增多,运营公司与车站,以及车站与车站之间的联系日益频繁,急需建立一套快速、有效、安全的电子公文系统。基于B/S(浏览器/服务器)结构的、可定制工作流程的电子公文系统,适用于任何需要电子公文系统的行业,能够有效地解决城市轨道交通行业所面临的问题。

电子公文是“以数字形式存储于磁带、磁盘、光盘等载体,依赖计算机系统阅读、处理并可在通信网络上传输的公文”。电子公文应具有真实性、可靠性、完整性、可用性。使用电子公文系统可以完成公文的拟稿、核稿、签发、签收、批示等工作,可实现无纸化公文流转、异地办公,能极大地提高日常管理工作的质量和效率,同时又便于存储、查询和归类。

1 电子公文现状

电子公文最重要的功能就是确保信息完整、可靠地流转。公文流转过程通常有两种实现方法:①通过编程来固化流程逻辑。采用这种方法不需要借助于专业的软件就能实现;其缺点是:当工作流程发生变化时,需要修改程序、编译和重新部署系统,用户难以自己完成这项工作。②使用工作流软件建立流程模型。其流程的驱动由工作流完成,当工作流程发生变化时,只需要修改流程描述文件就可完成。该方式克服了用程序控制流程的复杂性,但是工作流软件复杂,对使用者的专业技术要求高,同样需要程序员才能完成。

2 工作流

工作流是一类能够完全或者部分自动执行的过程,它根据一系列过程规则、文档、信息或任务,能够在不同的执行者之间进行传递与执行。使用工作流可以改进和优化业务流程,提高业务工作效率;并具有更好的业务过程控制,提高服务质量,提高业务流程的柔性。

目前的工作流产品有很多种,既有商业版本的又有开源组织支持的免费软件。本系统采用Jboss组织支持的开源软件jBPM(Java Business Process Management)。jBPM是一个支持复杂企业级应用、可扩展的工作流管理系统,支持直观的XML(可扩展标记语言)来表示商业流程图的术语。比如,任务、异步通信的等待状态、定时器、自动操作等。将这些操作组合在一起,jBPM就有了强大的和易扩展的控制流程机制。对于企业应用来说,jBPM对运行环境的依赖性较小,既可作为Java库来使用,也可用在吞吐量极为关键的J2EE集群应用服务器环境中。jBPM可以同任何关系型数据库配置,可以部署在任何应用服务器上。jBPM提供了开发流程、发布流程、执行流程、管理角色任务、协调Web Service等功能。

3 软件结构

电子公文的软件结构一般可分为C/S(客户机/服务器)和B/S(浏览器/服务器)两种结构。二者相比,B/S结构在数据的安全性、一致性、实时性、溯源性,以及服务响应及时性、网络应用限制、投入成本、硬件投资保护等方面,都有比较大的优势。另外,电子公文系统一般与办公网同时使用,而办公网基本上都使用B/S结构,所以本系统选用B/S结构。

4 工作流可定制的实现方法

jBPM本身没有提供可视化软件编写流程,但由于jBPM采用XML描述流程,所以可以使用文本编辑器来编写XML程序。这对用户的要求非常高,需要用户掌握jBPM的语法及流程发布方法,普通用户自己不能完成。电子公文系统是基于 B/S架构的网页程序,可以在网页上以所见即所得的方式编写流程,对用户屏蔽XML的复杂性。

要实现流程的可视化编写,必须提供描述流程的各种基本元素。这些元素应该以直观的方式绘制,也就是自定义的图形。浏览器只支持用HTML(超文本标记语言)描述的对象,而这些对象与工作流的要求相去甚远,所以必须使用其它技术来绘制图形。目前在网页上绘制流程有3种可行的方法,它们分别是ActiveX控件、Java Applet及基于 XML的 VML(Vector Markup Language,矢量可标记)语言。

4.1 ActiveX控件

ActiveX控件是一个开放的集成平台,为开发人员、用户和Web生产商提供了一个快速而简便的在Internet和Intranet创建程序集成和内容的方法。使用ActiveX编写工作流控件,可以做到界面美观、功能强大;缺点是ActiveX控件需要在客户端安装程序,需要降低浏览器的安全设置,存在安全隐患。

4.2 Java Applet

Applet是用Java语言编写的程序组件,可以在任何支持Java程序的浏览器中运行。其优点是功能操作方便;缺点是客户端需要下载并安装Java Runtime Environment(JRE)和工作流 Applet,并且不同的JRE版本容易出现冲突,运行速度较慢,与网页界面风格不统一。

4.3 VML

VML是由微软公司开发的XML词表,表示方法简单,易于扩展;支持广泛的矢量图形特征,基于相连接的直线和曲线描述路径。在VM L中,shape和group是两个基本的元素。这两个元素定义了VML的全部结构。shape描述一个矢量图形元素,而group用来将这些图形结合起来,这样它们就可以作为一个整体进行处理。VM L对客户端要求很低,IE5.0以上版本都可以支持,不需要安装任何插件,运行速度非常快。

4.4 实现方法

根据上述分析,决定在本系统中选用VM L绘制流程。用VML绘制流程的图示例见图1。实现方法如下。

(1)定义图形库。根据电子公文需要的节点类型和连接线,选择不同形状的图形,定义不同类型的图形的颜色。

(2)定义不同类型的节点的鼠标事件,实现图形拖曳及设定任务的属性等功能。

(3)对用户绘制的流程进行合理性检查,不合理的要提示用户修改。

(4)使用jPDL(Java工作流定义语言)描述图形之间的关系,并提交到应用服务器。

(5)服务器端在接收到客户端的jPDL后,经过解析、分解结点、转换格式、更新数据库等几个步骤,即可将流程发布成功。

在图1的流程图示例中,圆形标识(序号1)是整个流程的开始结点,椭圆形标识(序号8)是流程的结束结点,见图1所示。

图1 用VML绘制流程的图示例

5 系统模型

电子公文功能模型图见图2。图中详细描述了电子公文和工作流之间的数据交换过程。工作流引擎是整个系统的核心。过程定义工具绘制的流程经过引擎的处理,转化为工作流能识别的格式,达到驱动流程流转的目的。jBPM工作流可以使用各种关系型数据库存储数据,业务上的表单数据也可以交由jBPM存储,减少开发的工作量。系统的超级管理员可以为不同的用户赋予不同的角色来控制权限,保护数据的安全。公文中的各种待办任务可以通过手机短信或即时通信(IM)软件通知用户,这样用户无需登录系统即可知道需要做的工作。

图2 电子公文功能模型图

6 系统特点

(1)采用Web界面、面向对象的语言以及模块化的程序设计,操作简单方便。

(2)采用表示层、逻辑层和数据层3层结构模型,系统结构清晰、分工明确,有利于后期的维护和升级。

(3)采用图形化的流程设计器,可以实现流程的灵活定制修改,可以定制节点不同用户的权限,而无需修改源程序。设计器简单、直观,可以形象地描述出流程的走向,自动与程序逻辑建立关联。

(4)系统运行无需第三方插件支持,使得整套系统易于部署、迁移,对客户机也无特殊要求。

7 结语

可定制流程的电子公文系统,能够适应内部组织架构的变动和临时调整。电子公文系统的应用,有助于城市轨道交通运营公司提高日常工作效率,对城市轨道交通运营公司的管理创新工作能够起到更大的支持作用。

[1]GB/T 19667.1—2005基于XM L的电子公文格式规范[S].

猜你喜欢

控件绘制图形
超萌小鹿课程表
关于.net控件数组的探讨
放学后
分图形
找图形
图形变变变
在转变中绘制新蓝图
ASP.NET服务器端验证控件的使用
图形配对
基于嵌入式MINIGUI控件子类化技术的深入研究与应用