Lotus script的一些常用方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

LotusScript 是完全面向对象的编程语言。它通过预定义的类与 Domino 接口。Domino 监控用户代码的编译和加载,并且自动包含 Domino 的类定义。

访问现有的对象最好使用 LotusScript,例如:根据其他文档的值来更改一个文档中的值。LotusScript 提供了一些公式没有的功能,例如:操作数据库存取控制列表 (ACL) 的能力。

写script关键是取对象,查看对象的属性,所以你要学会看notes提供的Script帮助。下面是我收集的一些script例子。一般是比较技巧的程序,要学习一般script编写,请下载lotusScript学习库!

LotusScript 是完全面向对象的编程语言。它通过预定义的类与 Domino 接口。Domino 监控用户代码的编译和加载,并且自动包含 Domino 的类定义。

访问现有的对象最好使用 LotusScript,例如:根据其他文档的值来更改一个文档中的值。LotusScript 提供了一些公式没有的功能,例如:操作数据库存取控制列表 (ACL) 的能力。

写script关键是取对象,查看对象的属性,所以你要学会看notes提供的Script帮助。下面是我收集的一些script例子。一般是比较技巧的程序,要学习一般script编写,请下载lotusScript学习库!

怎样判断视图中没有文档?

set doc = vw.getfirstdocument()

if doc is nothing then

end if

如何将查询结果放到一个文件夹里?

下面是将搜索结果放到名叫newfolder的文件夹中,并跳转到该文件夹上

Sub Click(Source As Button)

Dim docs As notesdocumentcollection

Dim doc As notesdocument

...........

q=doc.query(0)

Set docs = db.ftsearch(q, 0)

Call docs.PutAllInFolder( "newfolder" )

Call w.OpenDatabase( "","","newfolder")

End Sub

如何删掉数据库中所有私有视图

Dim session As New notessession

Dim db As notesdatabase

Dim doc As notesdocument

Set db=session.currentdatabase

Forall i In db.views

Set doc=db.getDocumentByUNID(v.universalID)

' 这个地方视图当作文档来处理,以便取到视图的一些属性。viewflag=doc.getItemvalue("$flags")

If viewflag(0)="pYV" Then

' 视图属性中$flags为"pYV"的是私有视图。

Call i.remove

End If

End Forall

如何在Notes中调用ODBC数据源中的进程?

下面是一个利用ODBC调用access数据库(资料库)的script代码Dim session As New NotesSession

Dim con As New ODBCConnection

Dim qry As New ODBCQuery

Dim result As New ODBCResultSet

Set qry.Connection = con

Set result.Query = qry

con.ConnectTo("资料库")

qry.SQL = "SELECT * FROM 资料库"

result.Execute

If result.IsResultSetAvailable Then

Do

result.NextRow

id=result.GetValue("ID",id)

Loop Until result.IsEndOfData

result.Close(DB_CLOSE)

Else

Messagebox "Cannot get result set for AssetData"

Exit Sub

End If

con.Disconnect

End Sub

从后台刷新当前文档?

将当前文档先关闭后再打开

set doc=uidoc.document

......

call uidoc.save()

call uidoc.close()

set uidoc=ws.editdocument(doc)

获得当前视图中选择了的文档?

可以用 Notesdatabase 的 Unprocesseddocuments 属性。

Dim session As New notessession

Dim db As notesdatabase

Dim collection As notesdocumentcollection

Set db = session.currentdatabase

Set collection = db.UnprocessedDocuments Unprocesseddocuments 其实很有用的

notes和Excel交换数据

Dim session As New NotesSession

Dim db As NotesDatabase

Dim view As NotesView

Dim doc As NotesDocument

Dim excelApplication As Variant

Dim excelWorkbook As Variant

Dim excelSheet As Variant

Dim i As Integer

Set excelApplication = CreateObject("Excel.Application") excelApplication.Visible = True

Set excelWorkbook = excelApplication.Workbooks.Add

Set excelSheet = excelWorkbook.Worksheets("Sheet1") excelSheet.Cells(1,1).Value = "姓名"

excelSheet.Cells(1,2).Value = "年龄"

i = 1

Set db = session.CurrentDatabase

Set view = db.GetView("abc")

Set doc = view.GetFirstDocument

While Not(doc Is Nothing)

i = i + 1

excelSheet.Cells(i,1).Value = doc.ClassCategories(0) excelSheet.Cells(i,2).Value = doc.Subject(0)

Set doc = view.GetNextDocument(doc)

Wend

excelSheet.Columns("A:B").Select

相关文档
最新文档