---- 在企业网的建设过程中,人们都非常重视网络上应用程序的开发,以便更好地为企业的经营、生产和管理服务。在这方面,Intranet是目前比较理想的技术,它可以充分发挥网络的作用,充分提高工作效率。本文以为某石油公司开发的MIS系统为例,介绍如何利用Lotus Domino/Notes开发企业Intranet。
一、方案设计
---- 在开发过程,用户提出了许多需求,例如利用他们已有的局域网实现对数据库及文档信息的访问,数据由用户的一套基于Visual FoxPro(VFP)的业务系统提供,各业务部门和领导通过局域网可以及时查询有关信息,同时在单位内部实现文档信息的动态发布等等。针对上述要求,经过认真调研,我们认为,在当前应当采用先进的Internet技术,这样既可以使企业真正得益于信息化建设,也能够缩短开发时间。在深入了解企业需求的基础上,我们决定建立一个Intranet网,其中包括采用以下技术。
---- 1. Browser/Web Server模式
---- 随着Web技术的迅速发展,Browser/Web Server模式已经被广泛地采用。与传统的Client/Server相比,Browser/Web Server模式有许多优点,主要表现在以下2个方面。
---- (1)不需要安装Client端软件。在Client端只需要有标准的浏览器,如Internet Explorer 或NetScape Communicator即可。由于对数据库查询、浏览的功能都在Web Server端进行,因此大大减少了系统的管理和维护工作。
---- (2)用户操作实现了标准化。由于Client端是标准的浏览器,因此操作变得非常简单,并且几乎不需要人员培训。
---- 2. 通过ODBC访问后台VFP数据库
---- 由于用户需要动态地将信息发布到网上,而传统的静态Web页面无法实现这些交互功能。因此必须将数据库与Web连接起来,根据用户的需求,动态地产生用户需要的数据,以供用户查询和浏览。在数据库方面,为了与用户原先的系统实现快速无缝连接,仍然选用VFP进行数据库管理。要实现动态页面,就必须允许对Server端的VFP数据库进行动态访问,因此需要在Server端配置ODBC驱动程序。
---- 3. 对文档信息的访问,选用Lotus Domino/Notes的解决方案
---- MIS系统由于其对复合文档数据的处理要求,必须以文档数据库为核心建立,同时也要结合关系数据库。Lotus Domino/Notes是集电子邮件、文档数据库、快速应用开发技术以及Web技术为一体的电子邮件与群件平台,自1989年12月发布第1.0版以来,具有多年的发展历史,积累了丰富的经验。在电子邮件与群件市场,拥有较大的客户群和市场份额。目前,国内许多政府机关和企事业单位都采用Lotus Domino/Notes作为MIS系统的基础平台。与其他系统相比,Lotus Domino/Notes的优势在于以下2点。
---- (1) 数据库管理 用户可以用数据库形式管理Web站点页面及内容,而不仅仅是原有的数据信息。Domino数据库自动维护信息之间的链接关系,使站点维护更简单。因此在日常工作中,大量文档信息的Web发布工作完全可以交给业务人员完成,而无须由技术人员通过HTML编程的方式来进行文档信息的维护。
---- (2) 安全性控制 Lotus Domino/Notes可以做到任何对Web信息的访问都受到安全性的控制,实现根据使用者的不同,所能访问的信息因人而异。
---- 4. Web Server
---- 选用Windows NT所带的IIS。
二、技术的实现
方案确定以后,需主要解决IIS 和Lotus Domino/Notes互联的问题,其中包括 3个方面:(1)IIS能够处理对Notes数据库的访问;(2)在Notes表单中运行的代理程序必须能够访问ODBC数据库;(3)避免IIS和Domino之间的安全性冲突。要解决上述问题,系统的安装配置过程十分重要。安装过程主要分为以下几个步骤。
---- 1. 安装Windows NT Server 4.0和IIS 4.0。
---- 2. 在Windows NT上配置ODBC,设置数据源。具体方法是,运行Windows NT控制面板的“ODBC数据源”,在“系统DSN”窗口下单击“添加”按钮,选择“Microsoft Visual FoxPro Driver”,在“Data Source Name”中输入数据源名,如“oil”,在“Path”中指定ODBC数据源的路径,如“d:\oil_data\oil.dbc”。
---- 3. 安装ChartFX。为了在客户浏览器端生成动态数据图,需要在Server端安装ChartFX ActiveX控件。在Windows NT下运行CfxIESrv.exe,选择默认安装方式,使用默认值,再运行ChartFX的升级程序CfxIEUpdSrv(2).exe,修改Windows NT目录下的CfxSrv.ini文件,改为以下设置:
Relative=/cfxtemp
Absolute=d:\oil\cfxtemp (假定oil目录在D分区)
---- 4. 建立IIS管理的站点。建立D:\oil子目录,HTML页面文件均放在该目录下;运行IIS的Internet服务管理器,选定默认Web站点属性中的IP地址,确保绑定在80端口上,并将主目录的本地路径设为D:\oil目录。在默认Web站点属性里的主目录属性中,选中“FrontPage Web”选项。将SCRIPTS虚目录定为oil\scripts目录,并将许可选项定为“执行”。在资源管理器中,分别选中oil下的cfxtemp和scripts目录,单击右键,选择“属性”,在“安全性”中,选择“权限”按钮,将“everyone”的权限设为“完全控制”,并将“替换子目录的权限”选中,选择“确定”按钮。
---- 5. 安装Domino Server,将Domino设置成“for IIS”,这样对Notes库的访问全由IIS负责,可以不用启动Domino。
---- 在确认IIS和Domino正常工作后,需要设置Domino ISAPI扩展,以便IIS可以响应Domino应用程序的请求。具体方法是,启动Internet服务管理器,右击默认Web站点,选择“属性”,在主目录表单下,选择“配置”*“添加”,在可执行文件域中输入ISAPI扩展文件(niisextn.dll)的完整路径名。在扩展名域中,输入“.nsf”,在不包括的方法域中输入下列不被Domino for IIS支持的HTTP成员函数PUT和DELETE。选中脚本引擎,取消选择检查文件是否存在选项。
---- 此外,还需要设置IIS扩展过滤器,以便将用户证书正确地传递给Domino。具体方法是,启动Internet服务管理器,右击默认Web站点,选择“属性”*“ISAPI筛选器”,单击“添加”按钮,在筛选器名域中输入用来描述IIS过滤器的文字,如Domino;在可执行文件域中输入过滤器文件(niisfilt.dll)的完整路径名。
---- 6. 调整IIS的安全性与Domino的冲突。在默认Web站点属性的“目录安全性”中,单击“匿名访问和验证控件”,再点击“编辑”按钮,在“验证方法”多选项中,保证不选择“Windows NT挑战/反应”选项。
三、开发过程
---- 在建立好IIS和Domino的联系之后,便可进行开发工作。具体方法可参考有关手册,主要的开发过程如下。
---- 1. 用FrontPage或DreamWaver等网页制作工具制作HTML页面文件,存放在D:\oil目录下,并通过超级链接访问Notes数据库中相应的视图或表单。
---- 2. 用于Web动态查询的VFP数据库存放在D:\oil_data目录下,并进行相应的ODBC配置,如上所述。
---- 3.Notes数据库存放在D:\ lotus\domino\data\oil_info目录下,用Lotus Domino Designer开发相应的表单和视图,对ODBC数据库的操作通过在表单中执行代理程序来进行,对文档数据库的操作可以通过视图和表单来完成。由于Notes数据库的安全机制非常完善,可以对文档数据库、表单甚至域级进行权限控制,因此很方便地实现在Web上让合适的用户看到合适的内容。
---- 我们用以上的方法为某石油公司开发了一套信息发布及业务查询系统。文档的Web发布包括工作动态、发文公告和通讯录等,完全实现了由业务人员从任意一台联网的计算机上即可进行对文档信息的管理,包括新增、删除、修改、查看和全文搜索等操作,并可以做到及时发布信息,业务数据查询通过在Notes表单中的代理程序访问ODBC数据库(VFP数据库及表),附图所示的是2个通过Web方式查询到的VFP数据库信息的界面。该系统的应用效果良好,大大提高了工作效率。
,