免费文献传递   相关文献

Analysis of Workflow Based on Lotus Domino/Notes

基于Domino工作流技术分析


在分析工作流的概念及参考模型的基础上,介绍基于Domino工作流的实现技术,详细介绍工作流实现的问题,并给出完整的代码。对工作流中的安全问题提出更高的要求,实现在工作流中不可再被编辑的功能,保证工作流的准确性,实现高度的安全性。

Based on analysis of the concept of workflow and workflow reference model, this article not only introduced the implementation of workflow technology ground on Domino, particularly introduced the problem when design application, but also presented full code of application. For the more, the article put forward the higher standard about security, achieve the function of disabling editing document in workflow, ensure the veracity and security of workflow.


全 文 :第 wv卷 第 u期
u s s z年 u 月
林 业 科 学
≥≤Œ∞‘׌„ ≥Œ∂ „∞ ≥Œ‘Œ≤„∞
∂²¯1wv o‘²1u
ƒ ¥¨qou s s z
基于 ⁄²°¬±²工作流技术分析
赵 辉 周玉成 程 放 安 源 张亚勇
k中国林业科学研究院木材工业研究所 北京 tsss|tl
摘 要 } 在分析工作流的概念及参考模型的基础上 o介绍基于 ⁄²°¬±²工作流的实现技术 o详细介绍工作流实现的
问题 o并给出完整的代码 ∀对工作流中的安全问题提出更高的要求 o实现在工作流中不可再被编辑的功能 o保证工
作流的准确性 o实现高度的安全性 ∀
关键词 } 工作流 ~⁄²°¬±²~群件 ~办公自动化
中图分类号 }×°vsu1t 文献标识码 }„ 文章编号 }tsst p zw{{kusszlsu p ss{w p sx
收稿日期 }ussx p sy p sv ∀
基金项目 }/十五0国家科技攻关课题/木材加工企业计算机集成制造系统控制模块0kvux p yl ∀
Αναλψσισ οφ Ωορκφλοω Βασεδ ον Λοτυσ ∆οµινοΠΝοτεσ
«¤² ‹∏¬ «²∏≠∏¦«¨ ±ª ≤«¨ ±ªƒ¤±ª „± ≠∏¤± «¤±ª≠¤¼²±ª
k Ρεσεαρχη Ινστιτυτε οφ Ωοοδ Ινδυστρψo ΧΑΦ Βειϕινγ tsss|tl
Αβστραχτ} …¤¶¨§²± ¤±¤¯¼¶¬¶²©·«¨ ¦²±¦¨³·²© º²µ®©¯²º ¤±§ º²µ®©¯²º µ¨©¨µ¨±¦¨ °²§¨¯o·«¬¶¤µ·¬¦¯¨ ±²·²±¯¼ ¬±·µ²§∏¦¨§·«¨
¬°³¯ °¨¨ ±·¤·¬²± ²©º²µ®©¯²º ·¨¦«±²¯²ª¼ ªµ²∏±§²± ⁄²°¬±²o³¤µ·¬¦∏¯¤µ¯¼¬±·µ²§∏¦¨§·«¨ ³µ²¥¯ °¨ º«¨ ± §¨¶¬ª±¤³³¯¬¦¤·¬²±o¥∏·¤¯¶²
³µ¨¶¨±·¨§©∏¯¯ ¦²§¨ ²©¤³³¯¬¦¤·¬²±qƒ²µ·«¨ °²µ¨ o·«¨ ¤µ·¬¦¯¨ ³∏·©²µº¤µ§·«¨ «¬ª«¨µ¶·¤±§¤µ§¤¥²∏·¶¨¦∏µ¬·¼o¤¦«¬¨√¨ ·«¨ ©∏±¦·¬²±
²©§¬¶¤¥¯¬±ª §¨¬·¬±ª§²¦∏°¨ ±·¬± º²µ®©¯²º o ±¨¶∏µ¨ ·«¨ √¨ µ¤¦¬·¼ ¤±§¶¨¦∏µ¬·¼ ²©º²µ®©¯²º q
Κεψ ωορδσ} º²µ®©¯²º ~⁄²°¬±²~ªµ²∏³º¤µ¨ ~²©©¬¦¨ ¤∏·²°¤·¬²±k’„l
工作流就是业务流程的计算机化或自动化 ∀目前 o许多公司采用纸张表单 o手工传递的方式 o一级一级
审批签字 o工作效率非常低下 o对于统计报表功能则不能实现 ∀而采用工作流软件 o使用者只需在电脑上填
写有关表单 o会按照定义好的流程自动运行 o下一级审批者将会收到相关资料 o并可以根据需要修改 !跟踪 !
管理 !查询 !统计 !打印等 o大大提高了效率 o实现了知识管理 o提升了公司的核心竞争力 ∀工作流旨在改善
业务流程的自动处理 !跟踪及流程控制以实现协同工作 ∀工作流把人员配置 !工作流控制和工作流应用三者
完全分离 ∀用户可以根据工作需要对工作人员进行实时配置 o同时控制工作流的流向 o设置工作流属性 o并
根据人员配置情况分配流程中的人员属性 o管理工作流之间的信息交换 o根据用户的不同流程需要开发出相
应的物流和文件流应用系统k安庆文 ousswl ∀
t 工作流的概念及模型
工作流管理联盟k • ƒ≤ ) ) ) 一个致力于工作流管理标准化的国际性组织l给出的工作流定义是 }工作
流是一类能够完全或者部分自动执行的经营过程 o它根据一系列过程规则 o文档 !信息或任务能够在不同的
执行者之间进行传递与执行k⁄¤√¬§ot||{l ∀ • ƒ≤还提出有关工作流管理系统的一些规范 o定义工作流管理
系统的结构及其应用 !管理工具和其他工作流管理系统之间的应用编程接口 o其主要目的是为了实现工作流
技术的标准化和开放性 o从而支持异构工作流管理系统与产品之间的互操作 o并且使得其他的应用可以使用
该结构和定义好的通用 „°Œk应用编程接口l访问不同的工作流管理系统提供的服务 o实现与其他应用的快
速有效集成 ∀ • ƒ≤提出的工作流参考模型如图 t所示 ∀
• ƒ≤给出了 x类接口 ∀接口 t }工作流服务和工作流建模工具间接口 o包括工作流模型的解释和读写
访问 ~接口 u }工作流服务和客户应用之间的接口 o这是最主要的接口规范 o它约定所有客户方应用和工作流
服务之间的功能访问方式 ~接口 v }工作流机和应用间的直接接口 ~接口 w }工作流管理系统之间的互操作接
口 ~接口 x }工作流服务和工作流管理工具之间的接口 ∀
²·∏¶⁄²°¬±²Π‘²·¨¶作为一个工作流管理系统 o提供了一整套工作流管理方案 ∀ ⁄²°¬±² ⁄¨¶¬ª¨µ充当工作
流建模工具 o用于建立工作流模型 o其结果是一个工作流引擎能解释的过程定义 ∀ ⁄²°¬±²服务器充当工作
图 t 工作流参考模型
ƒ¬ªqt • ²µ®©¯²º µ¨©¨µ¨±¦¨ °²§¨¯
流执行服务器 o‘²·¨¶客户机充当工作流客户端应用程序 o⁄²°¬±² „§°¬±¬¶·µ¤·²µ充当工作流管理与监控工具 ∀
但是从标准化的角度分析 o²·∏¶⁄²°¬±²Π‘²·¨¶对于工作流的支持还不够十分完善 o接口 t !接口 u !接口 x都是
²·∏¶⁄²°¬±²Π‘²·¨¶独特的内部接口 o缺乏开放性 ~接口 v也只使用简单函数k¶«¨¯¯kll或公式命令k ¬¨¨ ¦≈ l来
调用外部应用程序 o而没有与被调用应用程序交互的标准协议 o很难从一个较高的层次与外部程序交互 ∀但
在与其他工作流管理系统互操作方面 o²·∏¶⁄²°¬±²Π‘²·¨¶已经支持了 ÷ o这为与其他工作流管理系统互操
作提供了途径k池炜成等 ousstl ∀
⁄²°¬±²服务器 !‘²·¨¶客户机 !⁄²°¬±² ⁄¨¶¬ª±¨ µ和 ⁄²°¬±² „§°¬±¬¶·µ¤·²µ组合成一个较为完整的工作流管理
系统 ∀ ⁄²°¬±²Π‘²·¨¶是面向新世纪的通讯基础设施 o是群件的第一个产品 o也是群件产品事实上的标准 o集企
业级通信 !协作 !工作流 !Œ±·µ¤±¨·和 Œ±·¨µ±¨·• ¥¨应用功能于一体的软件平台 ∀ ⁄²°¬±²内置的工作流引擎可
以按照用户应用所定义的流程分发 !传递和跟踪文档 ∀ ⁄²°¬±²强大 !灵活的工作流功能可以帮助企业实现
企业内部 !企业之间以及 Œ±·¨µ±¨·上的协同工作 o优化企业服务流程 ∀ ⁄²°¬±²的消息服务 !日历功能和开发工
具可以帮助用户快速构建企业级的工作流应用 ∀
²·∏¶⁄²°¬±²Π‘²·¨¶是以文档为中心 !以邮件为联系纽带的工作流产品 ∀它管理电子文档的生命周期 o把
文档库作为一种组织内共享的资源让组织成员访问 ~把文档甚至文档的一部分传递给个人 o让他作为文档中
指定的角色对文档信息进行阅读或更新操作 ∀传递过程主要以邮件为传输纽带 o用户可从邮件链接到文档
中 ∀该过程要求过程中独立活动的人按照一些过程规则对文档进行访问 ∀ ‘²·¨¶为实现文档型工作流提供
了多种文档管理功能 o主要有自动寻找路由传递文档以供批阅与发布 !跟踪传递文档的状态 !企业级与跨企
业级的文档分发 !文档存取可以有选择地控制 !组织文档及链接文档 !文档维护与归档 !全文检索等 ∀ ‘²·¨¶
根据工作流程的某种状态或数据库字段k域l的某种值 o决定是否向某人发出信息k如催办通知 !警示字句等l
及是否更新文档或某个数据库 ∀以客户服务为例 o一个客户发来服务请求 o‘²·¨¶将请求表k以文档形式l存
入数据库并自动向某个客户服务代表发出一封电子邮件 ~该代表在收到的电子邮件中单击文档链接即可调
出客户的请求报告 o进而决定处理方案 ∀ ‘²·¨¶将根据客户代表的处理情况自动安排下一步的行为 o如果一
定时间后 o数据库中客户情况处理状态仍未置成/处理完毕0 o‘²·¨¶将自动向客户代表的上一级领导发出电
子邮件 o以告知此事 ∀这个例子集中体现了 ‘²·¨¶通过文档与邮件的结合以实现工作流的技术k池炜成等 o
usstl ∀
x{ 第 u期 赵 辉等 }基于 ⁄²°¬±²工作流技术分析
u 工作流的设计
根据工作流的特性 o本文设计了一个包括文件起草 !上级来文 !下级来文 !催办 !复办 !承办 !归档 !查询等
功能的办公自动化系统 ∀以日常事务管理子系统中的公文管理k包括文件起草和上下级来文l为例 o设计工
作流程如图 u所示 ∀
图 u 公文管理工作流程
ƒ¬ªqu ⁄²¦∏° ±¨·°¤±¤ª¨ ° ±¨·º²µ®©¯²º
工作流程可以实现办公中正常流
转的公文处理 ∀以下是用一个工作流
实例的执行过程来介绍一下工作流引
擎的工作过程 }tl用户通过客户端浏
览器选择已定义好的工作流程并启动
后 o启动命令通过 • Œ调用工作流引
擎的 ¦µ¨¤·¨„±§≥·¤µ·°µ²¦¨¶¶方法来生成
一个新的工作流实例 ∀该实例的信息
以数据库形式保存 o便于查询 !监控 ∀
同时根据用户选择的流程 o查询该流
程的初始活动 o生成活动实例存储在
数据库中 o并给活动的执行者生成工
作项 ∀ul每一项活动提交后 o工作流引
擎调用µ∏±°µ²¦¨¶¶导航工作流的执行 o
查询后续活动 !判断活动开始条件 !生
成活动实例 o形成用户工作项列表 ∀vl
工作 流 执 行 结 束 后 o引 擎 调 用
¦²°³¯ ·¨¨°µ²¦¨¶¶结束整个流程 ∀wl对于
客户端应用 o用户通过浏览器获取自
己需要执行的活动后 o单击 / 处理0按
钮 o由嵌入到 • ¥¨页面上的 „³³¯ ·¨小
程 序 调 用 引 擎 的 ¦«¤±ª¨ „¦·¬√¬·¼
Œ±¶·¤±¦¨≥·¤·¨方法改变相应活动的状
态 o同时给该活动加锁以避免出现多
人同时处理一个活动的情况 ∀当活动
执行完毕后 o单击浏览器界面上的/提交0按钮 o同样由 „³³¯ ·¨小程序调用引擎的 ¦«¤±ª¨ „¦·¬√¬·¼Œ±¶·¤±¦¨≥·¤·¨方
法改变当前活动的状态 o并进行相关数据的维护 o然后由引擎根据活动定义继续推动流程进行k蔡馨庆等 o
usswl ∀
v 工作流的具体实现
以公文管理工作流中的拟办文稿为例 o来说明工作流的具体实现 ∀
在表单的上方k或者子表单中l设计如下域
拟办设置 }«¤±§¯ ¶¨¨·
提交拟办 }¶¨±§«¤±§¯¨
撤 回 }µ¨¦¤¯ t¯
完成拟办 }©¬±¬¶««¤±§¯¨
它们的初始值都为 s o总是隐藏 ∀主要作用是控制拟办意见是否可编辑 o在拟办意见中创建 u个域 o一
个是可编辑的 o用于输入拟办意见 o且当 ƒ¬±¬¶«‹¤±§¯¨€ / t0¿≥¨ ±§‹¤±§¯¨€ / s0¿ƒ ˜¶¨µ‘¤°¨ d € °¨ µ¶²±的值为
真时 o这个域是隐藏的 ~另外一个是计算域 o用于显示拟办意见 o且当 ƒ¬±¬¶«‹¤±§¯¨€ / s0的值为真时 o这个域
是隐藏的 ∀创建 w个操作k拟办设置 !提交拟办 !撤回 !完成拟办l o用于控制工作流的运行 ∀
y{ 林 业 科 学 wv卷
拟办设置操作主要实现的是从 • ²µ®ƒ¯ ²º≥¨ ·¬±ªt中获取经办人及办理时限 o拟办设置操作的代码如下 }
ƒŒ∞⁄ „∏·«²µ}€ ƒ²µ°„∏·«²µ~
ƒŒ∞⁄ • ¤¨§¨µ}€ ƒ²µ°„∏·«²µ~
ƒŒ∞⁄ × °¨³‘¨¬·}€ /拟办0 ~
¤}€ ƒ ⁄¬¤¯²ª…²¬k/ • ²µ®ƒ¯ ²º≥¨ ·¬±ªt0 ~≈„∏·²‹²µ½ƒ¬·  }≈„∏·²∂ µ¨·ƒ¬· l ~
ƒŒ©k°¨ µ¶²±€ / 0¿×¬°¨ ¬°¬·€ / 0 ~
ƒ °µ²°³·k≈’Ž  ~/警告 d0 ~/请输入经办人及办理时限0l ~
ƒŒ©k¤€ t ~ƒ ⁄²k ƒ ≥¨ ·ƒ¬¨ §¯k/ ‹¤±§¯ ≥¨¨ ·0 ~/ t0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ƒ¬¯¨ ≥·¤·∏¶0 ~/需要0 n × °¨³‘¨¬·l ~
ƒ ≤²°°¤±§k≈• ©¨µ¨¶«‹¬§¨ ƒ²µ°∏¯¤¶ l ~
ƒ °²¶·¨§≤²°°¤±§k≈ƒ¬¯¨ ≥¤√¨  l
l ~
/ 0ll
提交拟办操作实现的主要是给经办人发送邮件 o提交拟办操作的代码如下 }
·¬°¨ }€ ƒ × ¬¨·k ƒ „§­∏¶·k ƒ ‘²º ~s ~s ~ƒŒ±·¨ª¨µk׬°¨ ¬°¬·l ~s ~s ~sl ~/ ⁄s≥s0l ~
¶·µ¬±ªt }€ /请您填写0 n × °¨³‘¨¬·n /意见 o且请您于0 n·¬°¨ n /前将您的意见返回0 ~
¶·µ¬±ªu }€ /请您单击下面的图标 o填写0 n × °¨³‘¨¬·n /意见0 ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ • ¦¨¤¯ t¯0 ~/ s0l ~
ƒ ¤¬¯≥¨ ±§k°¨ µ¶²±~/ 0 ~/ 0 ~¶·µ¬±ªt ~¶·µ¬±ªu ~
/ 0 ~≈≥¬ª±  }≈⁄¨ ¬¯√¨ µ¼• ³¨²µ·≤²±©¬µ°¨ §  }≈Œ±¦¯∏§¨ ⁄²¦¯¬±® l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ „∏·«²µ0 ~°¨ µ¶²±l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ≥¨ ±§‹¤±§¯ 0¨ ~/ t0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ƒ¬¯¨ ≥·¤·∏¶0 ~/正在0 n × °¨³‘¨¬·l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ • √¨¬¨º≥·¤µ·×¬°¨ 0 ~ƒ ײ§¤¼l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ • √¨¬¨º∞±§×¬°¨ 0 ~·¬°¨ l ~
ƒ ≤²°°¤±§k≈• ©¨µ¨¶«‹¬§¨ ƒ²µ°∏¯¤¶ l ~
ƒ °²¶·¨§≤²°°¤±§k≈ƒ¬¯¨ ≥¤√¨  l ~
ƒ ≤²°°¤±§k≈ƒ¬¯¨ ≤¯ ²¶¨ •¬±§²º l
撤回操作实现的主要是撤回批办 o撤回操作的代码如下 }
ƒ ≤²°°¤±§k≈∞§¬·⁄²¦∏°¨ ±·  ~/ t0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ • ¦¨¤¯ t¯0 ~/ t0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ‹¤±§¯ ≥¨¨ ·0 ~/ s0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ≥¨ ±§‹¤±§¯ 0¨ ~/ s0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ƒ¬¯¨ ≥·¤·∏¶0 ~/批办已撤回 o请妥善处理0l ~
ƒ ≤²°°¤±§k≈ƒ¬¯¨ ≥¤√¨  l ~
ƒ ¤¬¯≥¨ ±§k°¨ µ¶²±~/ 0 ~/ 0 ~/撤回批办0 ~/批办已撤回 o你已无权办理0 ~/ 0 ~
≈≥¬ª±  }≈⁄¨ ¬¯√¨ µ¼• ³¨²µ·≤²±©¬µ°¨ §  }≈Œ±¦¯∏§¨ ⁄²¦¯¬±® l ~
ƒ °²¶·¨§≤²°°¤±§k≈• ©¨µ¨¶«‹¬§¨ ƒ²µ°∏¯¤¶ l ~
ƒ °²¶·¨§≤²°°¤±§k≈ƒ¬¯¨ ≥¤√¨  l
完成拟办操作实现的主要是拟办意见填写完成后 o给起草人返回邮件 o完成拟办操作的代码如下 }
¤}€ ≤²°°¨ ±·n ƒ ‘¨º¬±¨ n ƒ ‘¤°¨ k≈≤‘  ~ƒ ˜¶¨µ‘¤°¨ l n / k0 n ƒ × ¬¨·k ƒ ײ§¤¼~/ ⁄s¶s0l n / l0 ~
ƒŒ©k≤²°°¨ ±·€ / 0 ~ƒ °µ²°³·k≈’Ž  ~/警告 d0 ~/请您填写0 n × °¨³‘¨¬·n /意见0l ~
ƒ ⁄²k ƒ ¤¬¯≥¨ ±§kƒ²µ°„∏·«²µ~/ 0 ~/ 0 ~/完成0 n × °¨³‘¨¬·~/请您单击如下图标 o查收0 n × °¨³‘¨¬·n /意见 ∀0 ~
/ 0 ~≈≥¬ª±  }≈⁄¨ ¬¯√¨ µ¼• ³¨²µ·≤²±©¬µ°¨ §  }≈Œ±¦¯∏§¨ ⁄²¦¯¬±® l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ’√¨ µ⁄∏¨ • √¨¬¨º0 ~/ s0l ~
z{ 第 u期 赵 辉等 }基于 ⁄²°¬±²工作流技术分析
ƒ ≥¨ ·ƒ¬¨ §¯k/ × °¨³’√¨ µ⁄∏¨ • √¨¬¨º0 ~/ 0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ƒ¬±¬¶«‹¤±§¯ 0¨ ~/ t0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ „∏·«²µ0 ~ƒ²µ°„∏·«²µl ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ ƒ¬¯¨ ≥·¤·∏¶0 ~/完成0 n × °¨³‘¨¬·n /需要批示0l ~
ƒ ≥¨ ·ƒ¬¨ §¯k/ × °¨³≤²°°¨ ±·0 ~¤l ~
ƒ ≤²°°¤±§k≈• ©¨µ¨¶«‹¬§¨ ƒ²µ°∏¯¤¶ l ~
ƒ °²¶·¨§≤²°°¤±§k≈ƒ¬¯¨ ≥¤√¨  l ~
ƒ ≤²°°¤±§k≈ƒ¬¯¨ ≤¯ ²¶¨ •¬±§²º l
l
l
上面代码实现了整个拟办的工作流程 o其他如核稿 !审批 !承办等都可以根据拟办的思路来进行设计 ∀
这样就可以建立起完整的工作流 o这个工作流不仅具有完成公文管理的能力 o而且具有相当高的安全性 o再
结合 „≤!文档 !区段及域级的权限控制安全性 o其安全性可以满足任何企事业单位的需求 ∀
w 结论
本文阐述了办公自动化子系统工作流的实现技术 o详细给出办公自动化文档管理模块工作流的实现方
法 ∀办公自动化系统的应用将改善信息的收集 !分析 !处理以及交流方式等的速度 o节省大量时间和资源 o从
而提高工作质量和效率 o增强企业竞争力 ∀²·∏¶⁄²°¬±²Π‘²·¨¶作为企业级的通讯基础设施和应用开发平台 o
可以满足企业高速成长的需求 o提高对客户的反应速度以及商业处理过程的效率 o更为企业协同工作以及进
入电子商务时代做好了准备 ∀
参 考 文 献
安庆文 qussw q基于 ‘²·¨¶开发环境的 ’„≥工作流的设计与实现 q内蒙古大学学报 }自然科学版 ovxkvl }vvx p vv|
蔡馨庆 o李 燕 o张国煊 qussw q一个基于 ²·∏¶⁄²°¬±²Π‘²·¨¶的工作流管理系统 q杭州电子工业学院学报 ouwkvl }xs p xv
池炜成 o伍小明 qusst q²·∏¶⁄²°¬±²Π‘²·¨¶的工作流技术剖析 q计算机应用研究 oktul }{u p {w
⁄¤√¬§ ‹ qt||{ q • ²µ®©¯²º °¤±¤ª¨ °¨ ±·¦²¤¯¬·¬²±·«¨ º²µ®©¯²º µ¨©¨µ¨±¦¨ °²§¨¯q×≤ss p tssv Œ¶¶∏¨ t1t o«·³}ΠΠººº qº©°¦q²µª
k责任编辑 石红青l
{{ 林 业 科 学 wv卷