1

我有一个包含两个代理的数据库,实际上不止两个,但现在有两个很重要。一个有效,另一个无效。两者都Uselsx '*lsxlc'(Options).

我已经注释掉了失败代理中的所有内容,除了

Dim s As New NotesSession
Dim db As NotesDatabase
Dim agentLog As NotesLog
Set db = s.CurrentDatabase

'agent log  
Set agentLog = New NotesLog("Customers from Aging Report - AKM")
Call agentLog.OpenNotesLog( db.server, "agentinfo.nsf" )
agentLog.LogActions = True  'Set to True/False to turn on/off action logging
agentLog.LogErrors = True    'Set to True/False to turn on/off error logging    
Call agentLog.LogAction("Start Agent: GetCustomerDataBasedOnAging")

On Error Goto throwError

Dim lcses As New LCSession
Dim src As New LCConnection(COutConn)

%REM
....
%END REM

Exit Sub

throwError:

'Error code
Dim epos As String          
Dim emsg As String
Dim msg As String
Dim result As String
Dim status As Integer
Dim msgcode As Long

If  lcses.status <> LCSUCCESS Then
    status =  lcses.GetStatus (result, msgcode, msg)
    Call agentLog.LogError( msgcode,"Status for connector session is: " & Cstr(status) & Chr(10) & "Message: " & msg & "  Code # " & Cstr(msgcode)  & Chr(10) & "Connector Message: " & result )
    emsg = "Customers from Aging Report' Agent: ("+Cstr(Erl)+") "& "[" &Cstr(Err) & "] [" & Error$ & "]"
    Call agentLog.LogError( Err, emsg)
Else
    emsg = "Customers from Aging Report' Agent: ("+Cstr(Erl)+") "& "[" &Cstr(Err) & "] [" & Error$ & "]"
    Call agentLog.LogError( Err, emsg)
End If
Resume Next

COutConn 被定义为具有值“DB2”的常量

我在代理日志中收到以下错误:

Status for connector session is: 1544
Message:   Code # 0
Connector Message: Error: Cannot find Connector 'DB2'

无论我使用常量 COutConn 还是“DB2”,都会发生这种情况。

奇怪的是,具有相同定义的另一个代理可以正常工作。我知道机器上存在 DB2,它是 i5/OS v5r4。DB2 内置在这个操作系统上。

我还需要寻找什么?

4

1 回答 1

1

答案是,确保您知道代理在哪台机器上运行。当您在 Domino Designer 中右键单击代理并选择运行时,正如我所做的那样,代理并没有在数据库所在的服务器上运行,而是在 Domino Designer 客户端中运行。这将是 Windows 或 Linux,具体取决于您的工作站。

那么为什么一个代理工作而另一个没有呢?嗯,有效的是从 Notes 客户端中的一个按钮激活的,并且附加到使用的按钮的功能Run on Server。服务器确实是 IBM i。但是,在代理失败的情况下,我如上所述从 Domino Designer 中执行了该代理,因此没有 DB2 连接器。

希望有人能从我的痛苦中吸取教训!

于 2013-09-19T18:29:30.963 回答