1

Sharepoint 2007 サイトに 10 個のフォーム ライブラリがあります。

このサイトは 20 人の「学者」が使用するためのものです。学者 (または彼らを支援する数十種類の秘書のいずれか) は、任意のフォーム ライブラリに移動し、[新規] をクリックして Infopath フォームを取得し、ドロップダウン リスト フィールドから適切な学者の名前を選択し、残りの情報を入力することができます。フォームに入力し、[送信] をクリックします。その後、フォームが保存されます (フォームのタイトルは、ドロップダウン リストから選択された Scholar 名になります)。

このサイトの所有者は、20 人の Scholars 全員と 10 種類のフォームのうちそれぞれが完了したものを一覧表示するレポートを (任意の時点で) 生成できるようにしたいと考えています。

.........フォーム1.....フォーム2........フォーム3.. ……など……Form10  
Scholar Ann Adams……完了……未完了……完了…………未完了  
学者ベス・ベイカー……完了……完了…………未完了…………完了  
等

これを自動化する方法についてのアイデアはありますか?

4

1 に答える 1

0

このような場合は、ItemUpdatedイベントレシーバーを使用して、フォームを更新したユーザーの詳細を別の監査リストに書き込みます。次に、監査リストを照会するだけで、必要なレポートを取得できます。

これを実装するには、最初に、フォーム名とユーザー名(およびログに記録するのに役立つと思われるその他の名前)のフィールドを含む監査リストを作成します。次に、SPItemEventReceiverから派生したイベントレシーバーを作成します。受信者は、フォームライブラリでのみ機能する必要があります。イベントレシーバー内で、ItemUpdatedメソッドをオーバーライドして、更新されたアイテムがフォームであることを確認します。その場合は、更新されたフォームの名前とそれを更新したユーザーを監査リストに記録します。

これに非常によく似た例がhttp://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spitemeventreceiver.aspxにありますが、ItemUpdatedではなくItemAttachmentAddedメソッドを使用しています。

あなたに役立つかもしれない他のいくつかのチュートリアルはここここにあります。

于 2009-08-06T10:04:21.127 に答える