第21卷 第2期
2003年6月
河 北 建 筑 工
JOURNAL OF HEBEI INS邢 rTE oF
程 学 院 学 报
ARCHnE 兀『RAI.ENGINEERING
Vo1.2I NO.2
Jun.2003
Lotus Domino Web编程技巧
康洪波 王利民 赵繁利
河北建筑工程学院数理系
摘 要 介绍了一种LotusDomino在web上的编程技巧。使用非常简单的办法生成了一个
在web上没有的新组件:组合框.
关键词 组合框;Lotus Domino;Web
中图号 TP 311
1 引言
自从IBM与Lotus合并以来。Domino/Notes以其优秀的群件思想。高效的邮件系统。协同的工作流
模式。先进的知识管理的特色。已经风靡世界.尤其是利用单一构架的文档数据库和电子邮件系统。
实现多媒体文档的管理。并通过网络实现存放、追踪、存储和组织信息。然后和Web进行高度集成的
思路受到越来越多的欢迎.
然而。由于其本身以文档数据库作为其内核基础。因此对于大量习惯于使用关系数据库的编程
人员来说。往往在Web编程时发现许多困难难以解决。但事实上随着Domino/Notes的不断升级。我们
完全可以通过某些编程技巧实现一些看起来不能实现的功能.
下面是我们在编写程序时遇到的问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
。通过一些技巧性的转换。实现了一个以前认为实现不了
的功能.
2 在Web中创建组合框
众所周知.WEB中并不存在组合框这种最为流行的组件.但是。我们可以通过简单的Notes公式语
言创建一个Web中不存在的组件。组合框.
(1)组合框的功能.
在任何一种可视化编程工具中。组合框都是一类非常常用的不可或缺的重要组件。例如。在某些
提供文件下载的网站中。作为Download
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
单的一部分,当递交一个Download文档时。你必须从提供的
列表中选择一个分类。或者在列表下方的文本域中输入一个新分类.如果你使用新分类递交一个文
档。此新分类被添加到列表中。以后的用户便可以选择它。如果你忘了选择一个已有的分类或输入一
个新分类。Category域的值使用你选择的列表中的分类的缺省值. ’
在Notes中。你可以轻松地创建一个组合框.在5.0版本以前。只要创建一个关键字域。然后选中属
性 “允许不在列表中的值”即可;在5.0或5.0以后的版本中。则只需要直接创建一个组合框域即可.
但是。在Web中复制这个功能并非如此简洁明了。由于在HTML语句中不提供组合框控件。因此
Domino不能把组合框域正确地翻译为HTML语句,也就是说,Notes表单中的组合框域将不能正确显示.
(2)使用公式生成一个组合框域的实际
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
.
为了使用公式语句创建一个HTML中不存在的组件。我们需要一个列表框域和—个文本域.列表
框域提供一个列表值。让你可以从中选择;它还提供一个文本域。如果你所要的不在列表中时可以输
本文收稿 日期:2003·01-06
第一作者:女,1972年生,助教,张家 ra市,075024
维普资讯 http://www.cqvip.com
河北建筑工程学院学报 2003盔
入一个值
IDle:
Select硼
e~ tin&
category or
ofler d ^
category:
Cotegory:
F//e,∞嘲e《1)
l 通
自 列表框域
昏-岫 , 可编辑的文本域
: 面 |T}—一计算域
-_
'
,Select硼 £】函 ,曙
Fategory or enter a
:new ca~gory:
图 l 这3个域联合起来完成组合框效果 图 2 最终在Web中显示的效果
在此我们使用到3个域:ExistingCategory,NewCategory和Category.
在Existing Category~中:使用下列公式:
(’’’’)@DbColumn(“Notes’’:”NoCache";’’’’;"Downloads by Category";)
由于(~DbColumn返回DownLoads by Category视图的第一列的所有值因此可以返回已有的分类
列表.同时我们还使用了列表顶端的空格 (’’’’)来充许用户保留该域为空.
在ExistingCategory域的使用如下Input T珊 sLalion公式在递交表时将空格转换成空字符串:
@Trim(ExistingCategory)
也就是说Existing Catego 域被设置成仅当文档是新文档或该文档处于编辑状态时才可见.
在可编辑文本域New Category域中使用如下公式
@If(ExistingCategory=’’’’:”’’&New Category=“”;@Failure(“Please select an existing
categoryorenteranewcategory.");@Success)
来检查和确认用户已指明一个分类。是在ExistingCategory~中选择的值或是在NewCategory 域
中输入的值:
如果在递交该表单之前你忘了输入或选择一个分类。将会显示错误信息。并且新文档或已更新
的文档不会被保存.NewCategory~被设置成仅当文档是新文档或该文档正处于编辑之中.
在计算域Category~中使用如下公式:
@Trim(Existing Category:NewCategory).
创建一个列表。其值包含Existing Category~NewCategory两个域的值;同时从列表中删除空值.
由于当使用此公式时。ExistingCategor)喊Newcatcgor)r域的值应为空。所以Category域的值必然
是其中某一个的值.该域被设置成仅当文档以只读方式打开时。域Configured的值才可以被访问.
(3)结果.
然后。在表单中选择在web中预览。就会发现我们完成了如下的组合框效果并能够确实完成组
合框的功能.
Programming Technique Of LOtus Domino W eb
Kang Hongbo W ang Limin Zhao Fanli
‘ Department ofMathe
.
mathics and Physics,Hebei Institute ofArchitecture and Civil Engineering
Abstract The present paper introduces a kind ofprogramming technique ofthe Lotus Domino
on web,which,through the application of a quite simple way。produces a new combined article
called comboboxthat hasn'tappearedonwebbefore application
Key words combo box;Lotus Domino;Web
维普资讯 http://www.cqvip.com