2014-09-25 62 views
1

在某些「舊」Lotus Notes應用程序中,我們創建了每個文檔的歷史記錄:誰創建了文檔,編輯它的每個人以及相應的日期。代碼包含lotusScript中的幾個庫。xpages顯示文檔歷史

對於xpages,有沒有我可以使用的任何代碼片段/示例工作示例?我發現this,但我無法下載任何示例...

回答

0

我不知道任何預先完成的代碼段。但是在XPages中這變得更容易,特別是如果擴展到Java。當我現在創建應用程序時,我基本上將文檔轉換爲Java對象。我還沒有這樣做,但可以很容易地在對象中存儲所有字段的Map和它們的當前值,然後在保存時查找差異,然後將它們寫入日誌文檔。

這當然可以不用java來完成。在範圍內創建一個地圖對象。在加載文檔時填充它並保存比較和寫入。

2

ValueChangeListeners允許您捕獲對特定組件的更改。我以前使用它們在客戶應用程序中創建審計跟蹤。

託尼McGuckin有XSnippet它: http://openntf.org/XSnippets.nsf/snippet.xsp?id=server-side-value-change-events-listeners

德克蘭·林奇覆蓋它在一篇博客文章: http://www.qtzar.com/using-a-valuechangelistener-to-build-an-audit-trail/

唐麥克納利也做了博客文章: http://dmcnally.blogspot.co.uk/2013/02/xpages-detecting-and-logging-field.html

0

出了點OpenNTF上的這個項目是錯誤的(不要在名稱中使用&符號)。我是該自定義控件的原始作者。在進行一些挖掘之後,我發現了a direct url to the project here

+0

非常感謝。我只需要修改一下。順便說一下,在修訂部分有沒有機會 - 還要在日期旁邊添加進行相應修訂的人員姓名?我知道我必須添加另一個計算場......再次感謝,希望能儘快看到我的敬意。 – 2014-09-30 07:41:22

+0

當然,自定義控件是開源的,因此請繼續並根據需要構建。 – 2014-09-30 18:33:31

+0

我無法從編輯部分獲取日期。重複內部字段返回:@Name(「[CN]」,rowAuthors)。我不知道如何顯示每個編輯的相應日期。你能解釋我如何實現這一目標嗎? – 2014-10-01 11:00:47