2013-03-26 62 views
0

我有一個Lotus Notes代理,它搜索數據庫,然後以Excel格式返回結果。當我使用觸發器運行Agent時,我得到了正確的結果:On Event - > Action menu selection。但是當我計劃在服務器上運行代理時,我收到了不同的結果。總是有10個文檔一直顯示在Excel文件的前10行,當我在數據庫中手動搜索時,我無法在數據庫中找到這10個文檔。Lotus Notes代理在服務器上運行時出現意外的結果

有幾件事情是關於我從我的PC和服務器運行的代理不同:

  1. 我有Office 2010和服務器的Office 2003,所以SaveAs方法使用不同的參數

    xlApp.ActiveWorkbook.SaveAs file_Path, 43 'for Office 2003 
    
    xlApp.ActiveWorkbook.SaveAs file_Path, 56 'for Office 2010 
    
  2. 從我的PC運行代理將Excel文件保存在本地硬盤驅動器中。從服務器運行的代理會保存下面的路徑上的Excel文件:

    C:\Windows\SysWOW64\config\systemprofile\Desktop\FileName.xls 
    

我的搜索語句:

search_Formula = {Form = "WORec" & SoftDelete != "Y" & WO_Dept="REPAIR" & } & _ 
    {WO_Status != "Completed" & WO_Status != "Declined" & } & _ 
    {@Like(WOBinNumber; "R%")} 

我不認爲任何的那兩個差異造成的問題,但我不知道還有什麼可以嘗試的,因爲當它在服務器上運行時無法逐句通過代碼。任何幫助表示讚賞。

+0

>因爲當它在服務器上運行時,我無法逐句通過代碼 - 實際上,您可以。查看設計器幫助,遠程調試器或谷歌rdebug任務。 – 2013-03-26 15:37:48

回答

2

手動運行代理時,可以在當前用戶的安全上下文下運行該代理。預定的代理在服務器的安全上下文下運行。

如果有文檔上有讀者字段,他們可能只對某些用戶(即服務器,而不是你)可見。

如果您訪問服務器並在服務器上啓動Notes,您可能會看到這些文檔。

+0

在服務器上,我是否使用Notes標識或服務器標識啓動Notes?我使用server.id在我的PC上打開了數據庫,但找不到在Excel文件中顯示的文檔。 – 2013-03-26 17:24:47

+1

當您在自己的PC上使用server.id時,是否打開數據庫的本地副本?如果是這樣,那麼這個副本就是用你的ID創建的,所以它只包含你的ID可以訪問的文檔。如果你真的設法在服務器上打開它,那麼......我很驚訝,因爲我認爲服務器安全性會使用它自己的ID拒絕來自另一個設備的遠程連接。 (但我可能是錯的。)無論如何,我會建議另一個測試。假設您擁有權限或可以獲得權限,請使用具有「完全訪問管理」權限的ID在服務器上打開數據庫。 – 2013-03-26 17:46:16

+0

很好,顯然我可以使用我的Notes標識使用「完全訪問管理」權限查看這些文檔。真奇怪,但我得到了答案。感謝Ken和Richard! – 2013-03-26 18:31:43