注意看这一句
Set db2 = New NotesDatabase(db.server,"oasoft\ElectronNotify.nsf" )
这是让代理搜索本地服务器,再在本地服务器上创建电子公告。
我原来是直接将“db.server”改成第二台服务器的IP地址。
按照楼上几位的说法,不能访问第二台服务器上的数据库。
可是,如果我把db.server改成本地服务器的IP地址,也是行不通啊。!
这又是为什么呢?
另外:还有没有别的什么办法可以将这个限制绕过去呢?
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim view As NotesView
Dim item As NotesItem
Dim itemtext As String
Set db = session.CurrentDatabase
Set view = db.GetView( "(all)" )
Dim db1 As NotesDatabase
Dim view1 As NotesView
Dim doc1 As NotesDocument
Dim item1 As NotesItem
Dim itemtext1 As String
Set db1 = New NotesDatabase( db.server,"oasoft\SystemManage.nsf" )
Set view1 = db1.GetView("VW-SLIndividualInfor_5")
Set doc1 = view1.GetFirstDocument
Dim db2 As NotesDatabase
Dim doc2 As NotesDocument
Dim rtitem As NotesRichTextItem
Dim richStyle As NotesRichTextStyle
Set richStyle = session.CreateRichTextStyle
Dim AppName As String
Set db2 = New NotesDatabase(db.server,"oasoft\ElectronNotify.nsf" )
Set doc2 = db2.CreateDocument
Set rtitem = New NotesRichTextItem ( doc2, "body" )
Dim dateTime As NotesDateTime
Set dateTime = New NotesDateTime( "Today" )
While Not(doc1 Is Nothing)
m = 0
Set item1 = doc1.GetFirstItem( "RegFullName" )
itemtext1 = item1.text
Set doc = view.GetFirstDocument
While Not(doc Is Nothing)
Set item = doc.GetFirstItem("DWCommonName")
itemtext = item.text & "/power/desay"
If (itemtext1 = itemtext ) Then
If ( Cint( Date - doc.SendDate(0)) > 1 ) Then
m = m+1
End If
AppName = item.text
End If
Set doc = view.GetNextDocument(doc)
Wend
If ( m <> 0 ) Then
richStyle.FontSize = 14
'richStyle.Bold = True
Call rtitem.AppendStyle(richStyle)
Call rtitem.AppendText(" " & AppName & ": " + m + "个未办理文件")
Call rtitem.AddNewLine( 2 )
End If
Set doc1 = view1.GetNextDocument(doc1)
Wend
看日志,确实是执行了代理,但是就是出了
2003-09-25 10:26:18 AM AMgr: 代理(<发送通知> 在 <oasoft\SomethingToDo.nsf>) 错误消息: Cannot open databases on machines other than the server running your program (10.13.0.7!!oasoft\ElectronNotify.nsf)