Lotus Domino/Notes R5与管理信息系统MIS的集成
摘 要:阐述办公自动化(OA)系统与管理信息系统之间的集成技术,使整个工作流数据通过OA数据接口与企业现有的MIS 系统自动交换数据。以SQL数据库作为后台数据库,通过在notes中调用SQL语句实现二者之间的数据集成,实现了Domino数据库和Sybase/Oracle等关系型数据库的数据信息的交互,使OA系统的协同工作结果能与企业的MIS系统有效的沟通和交换,提高企业的集成工作效率。
关键词:办公自动化;管理信息系统;SQL数据库;Domino数据库;Sybase/Oracle关系型数据库;Lotus/Notes
中图分类号:G202;TP311文献标识码:B文章编号:1004-373X(2008)22-181-02
Integration of Lotus Domino/Notes R5 and Management Information System
XUN Yang
(Jining College,Jining,273155,China)
Abstract:The paper mainly describes the integration technique between the office automation system and the management information system,makes the whole work flow data exchange data automatically with the business enterprise existing MIS system through OA data connects.Based on SQL database as the background database,the system implements the data integration through calling SQL sentence in notes and implements the data information alternation between Domino database and Sybase/Oracle etc relation database.The collaborating results of OA system to communicate and commute availably with the MIS system of business enterprise,raising the integrated work efficiency of business enterprise.
Keywords:office automation system;management information system;SQL database;Domino database;Sybase/Oracle relation database;Lotus/Notes
大部分现代企业,都建有自己的管理信息系统(MIS)。传统的MIS 系统主要依赖于关系型数据库,由于缺乏有效的基础通信平台,没有通信和协同办公能力,协作效率低,不能在现代企业中构建有效的集成办公环境。基于Lotus Notes平台的OA系统使一些在MIS系统中难以处理的协同办公工作在OA 系统中得到很好的解决。为了使OA系统的协同工作结果能与企业的MIS系统有效的沟通和交换,提高企业的集成工作效率,Lotus Notes平台提供了OA系统数据接口,它使OA系统与企业的MIS系统实现无缝连接,不需要人工编程干预,整个工作流数据通过OA数据接口与企业现有的MIS 系统自动交换数据,沟通信息,大大地提高了企业整体办公决策能力。
1 数据接口的原理
数据接口由数据接口数据库(A_Intgrt.nsf)及数据记录数据库(A_MisLog.nsf)组成。数据接口数据库负责设置与MIS系统的连接及MIS数据进入工作流系统的方式;数据记录数据库记录所有MIS与工作流系统数据交换的活动信息。
数据接口通过数据连接器(DECS,LEI,ESB),将MIS系统的数据(表单、视图)导入数据接口数据库,数据接口的“定时代理”根据连接文档的设置,将这些数据导入OA工作流系统,并启用相应流程。OA工作流系统在流转完成后将连接设置中定义为要返回写到MIS系统的数据写到数据接口缓冲区,再由数据接口回写到MIS系统[1],见图1。
2 集成系统的设计
针对Lotus Notes平台的特点,结合SQL数据库的特点,考虑到SQL数据库在数据库技术方面的优点,在设计系统时分为办公、业务2部分。在做数据库设计时,把文件需要流转的工作或静态的数据放在Lotus Notes端,可以利用Lotus Notes强大的工作流机制及对多种文本格式的支持;而把大量的需统计的业务报表放到SQL数据库端(用可视化开发工具Delphi进行开发),利用成熟的数据库技术方便利用简便快捷的SQL语句对数据库进行操纵。最后利用Lotus Notes提供的与外部数据库的接口功能,通过建立ODBC数据源,在Lotus Notes端利用Lotus脚本语言(Lotus Script)自动提取SQL数据库中的相关数据,使两个系统有机集成。这样,系统不但运行速度快,而且可以实现一次录入多次使用,避免数据的不一致性,利于系统维护和修改。
整个软件的运行环境是企业内部网(Internet),整体采用Client/Server(C/S)体系架构,服务器端采用 Lotus Domino文档数据库及关系数据库SQL Server作为后台数据库服务器,客户端采用Lotus Notes及ODBC(开放数据库互联)方式,实现Lotus Notes群件环境下的定时自动报表。以下为OA与MIS之间数据接口设计的具体实现方法。
2.1 前期准备
由于开发的OA系统是基于Lotus Notes平台的,而MIS系统的后台数据库是SQL数据库,下面的方法是用来实现从OA客户端提取SQL数据库中的数据。
(1) 建好SQL数据库,填好库中涉及到的表里的数据,以供提取。
(2) 建立ODBC(开放式数据连接)数据源。ODBC通常由Windows操作系统自身提供。目的在于用一个ODBC数据源名来一一对应一个SQL数据库,在OA客户端可以通过ODBC数据源找到SQL数据库,从而可以提取该数据库中相应表里的数据。
2.2 具体实现
程序代码使用Lotus Script语言。在Lotus Notes中编程实现数据的提取。代码如下:
Dim con As New odbcconnection
Dim qry As New odbcquery
Dim result As New odbcresultset
Dim ws As New notesuiworkspace
Dim uidoc As notesuidocument
Dim m As Variant
Dim y As Variant,m As Variant′以上为定义部分
Set uidoc=ws.currentdocument
Set doc=uidoc.document
y = uidoc.fieldgettext("year")
m = uidoc.fieldgettext("month")′取表单里的域值
If (con.connectto("temp_sql","sa","12345") Then
Set qry.connection= con
s = "select * "
s=s & "from table1"
s=s & "where table1.year="
s = s & "'" & y & "'"
s = s & "and table1.month=" & "'" & m & "'"
qry.sql=s
Set result.query=qry
上述语句中的“temp_sql”是ODBC数据库源名,它所对应的是一个大型的后台关系型数据库,即一个MIS应用子系统的后台数据库;“table1”是此数据库中的一个表文件。该段程序实现:选择table1中所有year 和month 值等于表单中相应域值的纪录,并放入结果集result中。
If Not result.execute() Then
Messagebox _
result.GetExtendedErrorMessage,result.GetErrorMessage
Exit Sub
End If
If Not result.IsResultSetAvailable Then
Messagebox("没有找到相关数据,请检查输入条件或数据库")
Exit Sub
End If
End If
数据已从SQL数据库中取出,以下为把取出的数据赋到表单中相应的域中,通过循环,逐条提取纪录,直到取完为止:
n=0
Do
Call result.nextrow()
n=n+1
Call uidoc.fieldsettext("jm",result.getvalue
("cityname"))
…
Loop Until result1.isendofdata
在程序执行完后,notes 文档中相应的域被从SQL数据库中提取的数据填充,如表1所示,原表为一张空表。
济宁市各县综合情况反映表(2007年2月3日)如表1所示。
3 结 语
基于Lotus的企业信息集成系统具有集成性、开发快捷、实施容易、管理容易、机制完整、保有费用低、适应企业级、跨企业级的应用、开放性、可以获得厂商的丰富经验与支持等特点,通过标准的SQL语句,可以简单地实现Domino数据库和Sybase/Oracle等关系型数据库的数据信息的交互。
参考文献
[1][美]Matt Riggsby.Lotus Notes和Domino 应用程序开发指南.邱仲潘,译.北京:电子工业出版社,2001.
[2]闪四清.SQL Server 7.0系统管理和应用开发指南[M].北京:清华大学出版社,1999.
[3]Scot Haberman.Lotus Notes R5(中文版)从入门到精通[M].翟明岳,译.北京:电子工业出版社,2000.
[4]冯锦峰,惠月.Lotus Domino/Notes R5应用开发指南[M].北京:北京希望电子出版社,2000.
[5]张卓,刘丽娟,齐春桥,等.基于LOTUS R5平台智能小区信息管理系统[J].大连大学学报,2001,22(4):63-68.
[6]董晶,董桂林.用Lotus R5构建Internet/Intranet应用[M].北京:电子工业出版社,2000.
[7]吴小锋,张新长,张润明.中小企业办公自动化信息系统的研究与开发[J].计算机应用研究,2001,18(8):100-102.
[8]蔡斌.办公自动化系统建设的发展趋势[J].计算机系统应用,1999(10):68-69.
[9]卢苇,尹恒,赵成萍.基于Lotus Domino/Notes的企业办公自动化系统的设计与实现[J].计算机应用研究,2002,19(4):127.
[10]莲花软件(中国)有限公司.Lotus Domino/Notes R5 企业信息集成技术[M].北京:国防工业出版社,2000.
[11]莲花软件(中国)有限公司.Lotus Domino/Notes R5应用开发大全[M].北京:国防工业出版社,2000.
[12]武坤.Lotus Domino/Note R5应用教程[M].北京:机械工业出版社,2000.
作者简介 寻 杨 女,1971年出生,硕士,讲师。主要从事计算机应用方面的研究工作。