2009-06-09 90 views
2

是否有程序化的方式來區分文檔庫中文檔的添加文檔和上傳? (Moss 2007)上傳到文檔庫

我想讓文檔上傳引發ItemAdded事件,只有在填寫了一些必填字段後,默認情況下,只要上傳本身通過瀏覽到文件並單擊「確定」即可完成。 ..

感謝

回答

1

您可以前後ItemAdded事件的屬性後檢查,但我懷疑會有一個可靠的差異。

0

這恐怕是很難做到的編程,因爲

  • 當一個文檔使用新的上傳,只有當一個文檔使用上傳上傳創建事件
  • ,還有一個創建文件上傳時的事件以及屬性更新時的更新(以及更新)。但是這些屬性會使用系統更新進行更新,因此更新事件不會觸發。

在文件添加後,我同意Nat的說法,不會有可靠的區別。

但是Jon Powell寫了一篇文章,在以下article工作流程的幫助下,如何區分新建和上傳。您可以通過在該工作流程中添加所需的邏輯來做同樣的事情。

希望這有助於

亨利科

+0

我試過檢查是否這是被檢入的文檔的第一個版本。如果我可以確定它是第一個版本,我可以使用ItemCheckedIn事件。 但是,我每次都得到以下值。 properties.ListItem.Versions.Count(always 1) properties.ListItem.Versions.VersionID(always 512) properties.ListItem.Versions.Count.VersionLabel(always always「1。0" ) ///如果我檢查文件 SPFILE SF = curweb.GetFile(properties.ListItem.File.ToString()); SPFileVersionCollection vercol = sf.Versions。 這裏,vercol是空的,每次 不確定如何獲取該文檔的版本信息。 – user96403 2009-06-15 09:34:10

0

假設主要版本是爲文檔庫啓用,

文檔庫設置>版本控制設置>主要版本

的follwing值可以是用於查明它是否是ItemCheckedIn事件中的第一個版本,

properties.ListItem.Versions [0] .VersionID (512是用於第一 版的值) properties.ListItem.Versions [0] .VersionLabel ( 「1.0」 是用於第一 版的值)

注 - 版本[0]代表當前版本。

這樣可以在ItemCheckedIn事件接收器中執行ItemAdded功能。

相關問題