LotusScript中的命名文档

大家好,才是真的好。

本篇我们主要讲述Domino V12.0.x中的LotusScript语言新特性。

首先进行一下概念普及,LotusScript是主要是Notes/Domino产品中使用的面向对象编程语言,当然LotusScript也可以在另外一些产品中使用,不过现在的人肯定很陌生,例如Lotus 1-2-3。另外,LotusScript也可以通过OLE库来访问MS Office文档。

很多外行把LotusScript直接称之为VB,这是有一定道理,因为LotusScript和VB都是从B语言演化而来,具有非常类似的代码语法和结构,不过其中的对象类大有不同。

Notes/Domino平台这几年升级很快,更多人主要关注平台整体特性,很少有人关注,LotusScript这几年到底发生了什么进步。今天介绍的是Notes Domino V12.0.1中带来的一项新的LotusScript特性,就是Notes命名文档。

Notes命名文档和以前我们用到的简要表文档非常类似,用来存储用户或应用参数,不显示在任何文件夹或视图中,只能通过后台代码的方式来进行访问;但同时也有很大的不同,命名文档使用字符串键存储和检索Notes文档,存储读取速度也快,而且命名文档没有NoteID属性等。

我们先看下面几行简单代码:

Dim s As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
	
Set db = s.CurrentDatabase
Set doc = db.GetNamedDocument("docName1")

该代码中的db.GetNamedDocument一行,就是在当前的Notes数据库中创建了一个docName1名称的文档。

这个文档是一个空文档,啥也没有。GetNamedDocument方法是Domino V12.0.1中的NotesDatabase对象新增的方法,里面有两个参数,语法是Set doc = db.GetNamedDocument( , ),name参数即文档的名称,userame参数用来指定和命名文档相关的用户。

这个文档不需要使用save方法即已经保存在Notes数据库中,现在你可以给它创建字段并进行数据存储,例如

Dim s As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
	
Set db = s.CurrentDatabase
Set doc = db.GetNamedDocument("docName1")
Call doc.ReplaceItemValue("subject","我是一个命名文档")
Call doc.ReplaceItemValue("body","这是我的body字段,也不用保存,我就会存在数据库中")
Msgbox doc.body(0)

运行该代码则出现下列提示:
在这里插入图片描述
现在我们总结一下:Notes命名文档是一类特殊的文档,类似于以前的简要表文档,用来存储用户自己想存放的参数或数据。这些参数和数据不会出现在任何Notes数据库属性、文件夹和视图当中,它通过字符串键存储和检索,访问后也可以使用普通的Notes文档操作来进行字段读取、更新等,特点是存取速度快,可以和已有的数据进行分离。

为了匹配Notes命名文档,其实LotusScript还更新了一些的方式和属性,如下图:
在这里插入图片描述
本篇主要是让大家了解Notes命名文档的概念,也能在应用开发过程中灵活运用。

限于篇幅,今天我们就讲这么多吧。

更多精彩内容,请关注微信公众号:协作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值