2009-10-26 66 views
0

場景: 我有一個概述,我有我的菜單鏈接。每個鏈接指向存儲在DMZ中的FTP服務器上的文件。通過點擊每個鏈接,我運行代理在本地下載文件併爲最終用戶傳遞網址。如何檢查蓮花配方中是否存在文件?

我想在文件不存在時隱藏大綱元素。顯然,在我嘗試訪問文件之前我沒有這些信息,我無法運行多米諾代理來檢查是否可以顯示此元素,並在HideWhen公式窗口中使用它。另外,如果存在,則不能運行代理並檢查所有文件,將這些信息存儲在ln db中,因爲簡單的文件太多了。

還有其他想法嗎?

回答

2

如果您在「大綱範圍」中沒有可用的信息來確定要隱藏和顯示的鏈接,那麼當文件不存在時,您必須找到一種正常失敗的方法。在代理中使用一些錯誤檢查,如果文件不存在,請確保用戶收到一條友好的消息,解釋發生了什麼。

你說你不能檢查所有文件是否存在,因爲有太多的文件,但是我們有多少人在談論?您可能無法在數據庫打開時檢查它們,因爲您會導致用戶等待時間過長,但也許可以將結果緩存在某處。數據庫打開時運行的代理可以檢查緩存的現有文件列表,並使用它來確定要隱藏的文件。如果緩存的文件不存在,代理可以運行後臺代理來更新緩存並將其存儲在服務器上或數據庫中。

如果您有權訪問服務器,還可以編寫一個程序,返回現有文件的列表,並使用它來提供Notes數據庫。這裏有很多選項,但是例如,您可以有一個PHP或一個ASP.NET頁面,用於在您調用服務器時返回存在於服務器上的XML文件列表(甚至比XML更簡單)。然後,當您打開Notes數據庫時,您的代理可以調用​​該URL,獲取結果,並瀏覽現有文件列表以確定要隱藏的鏈接。

希望這會有所幫助!

0

的靈感來自BOOKMARK.NSF概述 - @IsAppInstalled

+0

我不明白這一點。 @IsAppInstalled只能檢查基於內部名稱的Domino應用程序,我無法用它來檢查FTP acount上是否存在文件。 – 2009-12-31 09:34:02