Domino开发实用技巧:数组、RTF处理与Ajax应用

需积分: 9 4 下载量 25 浏览量 更新于2024-10-08 收藏 7KB TXT 举报
本文档提供了一些关于Domino开发的关键知识点,包括处理用户名称、密码验证、提取URL参数、数组初始化、RTF字段操作以及循环处理数组元素。 1. 处理用户名称 在Domino开发中,我们经常需要处理用户名称。示例中的代码创建了一个`NotesName`对象,用于表示用户名。它从Excel工作表中获取值,并将其转换为标准的Canonical格式,然后将该名称添加到文档的"Creater"字段,并设置IsAuthors属性为True,表示创建者是文档的作者。 ```vb Dim userName1 As New NotesName(excelSheetDls.Cells(dlsNum, 1).Value + "/SC/MDCL") Set item = docDls.AppendItemValue("Creater", userName1.Canonical) item.IsAuthors = True ``` 2. 密码验证 Domino提供了内置函数`@Password`用于处理密码。代码中展示了如何使用`Evaluate`函数来获取旧密码的验证结果,并通过`MsgBox`显示。这在用户密码更改或验证场景中非常有用。 ```vb Dim OldPass As Variant OldPass = Evaluate("@password('" & docContext.OldPassWord(0) & "')", doc) MsgBox OldPass(0) ``` 3. 提取URL参数 这里定义了一个名为`midStr`的自定义函数,用于从字符串中提取指定范围的子串,例如从URL中获取特定参数。这个函数可以用于解析HTTP请求中的查询字符串,提取关键词或标志。 ```vb Function midStr(exprStr As String, startStr As String, endStr As String) As String '提取起始字符串和结束字符串之间的子串 midStr = Mid$(exprStr, Instr(exprStr, startStr) + Len(startStr), Instr(exprStr, endStr) - Instr(exprStr, startStr) - Len(startStr)) End Function ``` 4. 数组初始化 在VBScript中,我们可以动态初始化数组。示例中创建了一个二维数组`bjdmx`,用于存储特定数据。这种初始化方法适用于需要快速分配大量数据的情况。 ```vb Dim bjdmx() As String ReDim bjdmx(1 To 7, 1 To numDjdx) As String '现在数组bjdmx已经准备好接收数据了 ``` 5. 从文档字段获取NotesName对象 在Domino文档中,我们可能需要处理包含用户标识的字段。代码示例展示了如何从源文档的WFclr字段中获取NotesName对象。 ```vb Set nname = New NotesName(StrRight(sourceDoc.WFclr(0), "|")) '获取NotesName对象 ``` 6. RTF字段操作 Rich Text(RTF)字段在Domino文档中用于存储格式化文本。这段代码演示了如何向已有的RTF字段追加新的文本,如添加项目描述。 ```vb Dim rtitem As Variant Set rtitem = doc.GetFirstItem("ProjectDescription") If rtitem.Type = RICHTEXT Then Call rtitem.AddNewLine(1) Call rtitem.AppendText_ ("Book is 64 pages, full color.") End If ``` 7. 循环处理数组元素 在处理数组时,我们经常需要遍历所有元素。这个例子展示了如何使用For循环遍历一个数组的值,并根据条件执行某些操作。 ```vb Dim i As Integer Dim j As Integer Dim item As NotesItem Set item = docTT.GetFirstItem(fieldName) j = Ubound(item.Values) For i = 0 To j If itemVal = item.Values(i) Then '在这里执行相应操作 End If Next i ``` 这些知识点涵盖了Domino开发中的基本操作,包括用户管理、数据验证、字符串处理、数组操作和富文本处理,对新手来说是非常有价值的入门学习资料。