1

特定のドキュメントライブラリに追加される新しいドキュメントごとにカスタムフォームを表示するための最良の方法はどれですか?

ドキュメントを追加することで発生するいくつかのアクション、具体的には、タスクリスト内のユーザー用に作成されたタスクをユーザーが制御できるようにします。これは、貢献しているユーザーがコミットする前にOKにする必要があります。

ワークフローまたはイベントハンドラーを介してこれを行うための最良の方法はありますか?

よろしくムー

4

4 に答える 4

0

私はあなたの質問を理解していないかもしれませんが、これはあなたがやろうとしていることに近いですか?

http://msdn.microsoft.com/en-us/library/ms550037.aspx

そうでない場合、これはどのように不足していますか?

于 2008-12-29T05:26:03.790 に答える
0

新しいフォームの URL が適切な値に設定された新しい「コンテンツ タイプ」でうまくいくはずです。残念ながら、イベント ハンドラーまたはワークフローで目的を達成できない場合があります。理想的には、ユーザーが新しいアイテムをライブラリに追加するとすぐにフォームが表示されるようにする必要があり、カスタム コンテンツ タイプがそのトリックを行います。

  1. 新しいコンテンツ タイプを作成します。(既存のコンテンツ タイプから派生)
  2. ドキュメント ライブラリから既定のコンテンツ タイプを削除します。
  3. オブジェクト モデルを使用して、作成した aspx ページまたは Infopath フォームに新しいフォームの URL を設定します。

敬具、

于 2008-12-29T05:44:23.397 に答える
0

SharePoint サーバー 2007 の場合:

特殊なコンテンツ タイプとイベント ハンドラーを組み合わせることで、プロセスを最大限に制御できます (デバッグも容易になります)。ワークフローは「簡単な」アクションに最適で、複雑なアクションを実行するのは困難です。

ワークフローを使用すると、サイト管理者がワークフローをさまざまなライブラリに柔軟に割り当てることができます。

コンテンツ タイプとイベント ハンドラーをデプロイ可能な機能にまとめます。コンテンツ タイプをリストに割り当てると、標準フォームで作成されたデータを取得し (非常に複雑なカスタム データ入力用のカスタム フィールドを作成できることを思い出してください)、アイテムに基づくタスクの作成など、必要なアクションを実行できます。

于 2008-12-01T21:09:46.573 に答える
0

答えてくれてありがとう、それは私が調査していたルートですが、残念ながらドキュメントライブラリで機能させる方法が見つかりませんでした-リストのみ。

私が遭遇した問題は、ドキュメント ライブラリの ItemAdded、ItemAdding、ItemCheckingIn、または ItemCheckedIn イベントで SPUtility.Redirect を実行しても、イベントに関連するページがないため、何も実行されないことです。そのすべてのバックエンド コードはその時点で重労働を行っているのは Web ページではなく、Office 統合であるためです。

私が遭遇したすべての例は、イベントが発生したときに EditForm.aspx または NewForm.aspx ページが表示されているという事実に依存しているように見えますが、もちろんここではそうではありません。

これは、Office 2007 がこれらの両方を回避するため、EditForm.aspx または CheckIn.aspx ページを拡張して目的の処理を実行できないという問題にもつながります。

したがって、現時点で私に残された唯一のオプションは、ワークフローを通じてそれを行うことです:/

それ以上のヒントは素晴らしいでしょう。

于 2008-12-02T14:42:25.483 に答える