ワークフローの関連付けと初期化フォーム (Microsoft SharePoint Server 2010)
最終更新日: 2010年4月6日
適用対象: SharePoint Server 2010
この記事の内容
関連付けフォームを指定する
関連付けフォームの処理
初期化フォームの指定
初期化フォームを処理する
ワークフローを開始する前に、ユーザーが事前にワークフローのパラメータとその他の情報を設定できるように、ユーザーに対して関連付けと初期化フォームを表示することができます。関連付けフォームは、特定のリスト、ライブラリ、またはコンテンツ タイプに適用されるようにワークフローを設定し、初期化フォームは、特定の SharePoint アイテムに適用されるようにワークフローを設定します。
また、ワークフロー テンプレート定義に事前関連付けデータを含めることもできます。たとえば、関連付けフォームのフィールドに既定値をあらかじめ入力することもできます。
関連付けと初期化フォームに関する概念的な説明については、Microsoft SharePoint Foundation SDK の「ワークフローの関連付けおよび開始フォーム (Sharepoint Foundation)」を参照してください。
関連付けフォームを指定する
すべてのワークフロー フォームと同様に、ワークフロー テンプレート定義 XML でワークフローの関連付けフォームを指定します。実行するには、2 つの XML 要素を編集します。
Workflow 要素の AssociationURL 属性の値を "_layouts/CstWrkflIP.aspx" に設定します。これは、Microsoft SharePoint Server 2010 に含まれる .aspx ページです。このページには、Microsoft InfoPath 2010 ワークフロー関連付けフォームをホストする InfoPath Forms Services Web パーツが含まれています。
AssociationURL ="_layouts/CstWrkflIP.aspx"
注意
SharePoint Server 2010 は、ワークフロー テンプレート定義の絶対パスまたはサーバーの相対パスをサポートします。すべてのフォーム パス URL をこれらの形式のどちらかで表す必要があります。たとえば、絶対パスでは "http://site/library/page.aspx";、サーバーの相対パスでは "/layouts/page.aspx" のように表します。Office SharePoint Server 2007 は、ワークフロー テンプレート定義のリンクの修正をサポートしません。
Association_FormURN 要素をワークフロー テンプレート定義の Metadata 要素に追加します。この要素を使用して、ワークフローの関連付けで使用する Office InfoPath 2007 フォームの URN を指定します。次に例を示します。
<Association_FormURN>urn:schemas-microsoft- com:office:infopath:workflow:ReviewRouting-Assoc </Association_FormURN>
関連付けフォームにカスタム データを取り込む場合は、この情報を AssocationData 要素に保存することができます。たとえば、この要素を使用して、関連付けフォームが表示されたときにそのフォームに渡す既定値を保存することができます。AssocationData 要素には、有効な任意の XML を含めることができます。
ワークフロー定義スキーマの詳細については、Windows SharePoint Services 3.0 SDK の「ワークフロー定義」を参照してください。
関連付けフォームの処理
管理者がワークフローを特定のリスト、ライブラリ、またはコンテンツ タイプと関連付けるように選択した場合、SharePoint Server 2010 には [新しいワークフローの追加] ページが表示されます。このページで、管理者はワークフロー定義、開始条件、およびアイテム、フォルダー、またはその両方で実行するかどうか、すべてのワークフローに共通の設定を指定できます。
このページで、管理者が [次へ] ボタンをクリックすると、SharePoint Server 2010 はワークフロー テンプレート定義内の Workflow 要素の AssociationURL 属性を検証して、読み込む適切な .aspx ページを特定します。InfoPath 2010 フォームでは、開発者はこの値を _layouts/CstWrkflIP.aspx に設定します。SharePoint Server 2010 は、カスタム フォームをホストしている Office InfoPath Forms Services Web パーツを含むこのページを読み込みます。次に、このページがワークフロー テンプレート定義 XML の Association_FormURN 要素を検証して、ホストする適切な InfoPath 2010 フォームを特定します。また、この Web パーツは AssocationData 要素に保存されたあらゆるデータを InfoPath 2010 フォームに渡します。
管理者がフォームに変更を送信すると、CstWrkflIP.aspx は XML 文字列として SharePoint Server 2010 に渡します。データは、そのワークフローの関連付けを表す SPWorkflowAssociation オブジェクトの AssociationData プロパティに保存されます。
初期化フォームの指定
InfoPath 2010 ワークフローの初期化フォームを指定するには、ワークフロー テンプレート定義の 2 つの要素を編集する必要があります。
Workflow 要素の InstantiationURL 属性の値を "_layouts/IniWrkflIP.aspx" に設定します。これは、SharePoint Server 2010 に含まれる .aspx ページです。このページには、InfoPath 2010 ワークフロー初期化フォームをホストする Office InfoPath Forms Services Web パーツが含まれています。
InstantiationURL="_layouts/IniWrkflIP.aspx"
注意
SharePoint Server 2010 は、ワークフロー テンプレート定義の絶対パスまたは相対パスをサポートします。すべてのフォーム パス URL をこれらの形式のどちらかで表す必要があります。たとえば、絶対パスでは "http://site/library/page.aspx"、相対パスでは "/layouts/page.aspx" のように表します。SharePoint Server 2010 は、ワークフロー テンプレート定義のリンクの修正をサポートしません。
Instantiation_FormURN 要素をワークフロー テンプレート定義の Metadata 要素に追加します。この要素を使用して、ワークフローの初期化で使用する InfoPath 2010 フォームの URN を指定します。次に例を示します。
<Instantiation_FormURN>urn:schemas-microsoft- com:office:infopath:workflow:ReviewRouting-Init:1033 </Instantiation_FormURN>
初期化フォームを処理する
ユーザーが特定のアイテムでワークフローを開始すると、SharePoint Server 2010 はワークフロー テンプレート定義 XML の Workflow 要素の InstantiationURL 属性を検証して、読み込む適切な .aspx ページを特定します。InfoPath 2010 フォームの場合、開発者はこの値を "_layouts/IniWrkflIP.aspx" に設定します。SharePoint Server 2010 は、カスタム フォームをホストする Office InfoPath Forms Services Web パーツを含むこのページを読み込みます。次に、このページはワークフロー テンプレート定義 XML の Instantiation_FormURN 要素を検証して、ホストする適切な InfoPath 2010 フォームを特定します。また、ページは、適切な SPWorkflowAssociation の AssociationData プロパティに保存された関連付けデータを XML 文字列として InfoPath 2010 フォームに渡します。このデータは、フォームのプライマリ データ ソースとして使用されます。
ユーザーがフォームに変更を保存すると、IniWrkflIP.aspx は、StartWorkflow メソッドの呼び出しの一部として、SharePoint Foundation オブジェクト モデルにデータを渡します。
SharePoint Server 2010 のワークフロー マネージャーは、SharePoint アイテムのワークフローのインスタンスを作成します。ワークフロー マネージャーは、初期化フォームを使用して収集したデータをワークフロー自体の OnWorkflowActivated イベントに渡します。
関連項目
タスク
[方法] InfoPath ワークフロー フォームをデザインする
[方法] ワークフロー内の関連付けと開始のフォーム データにアクセスする
[方法] 関連付けデータと初期データを使用するワークフロー フォームを設計する
概念
SharePoint Server 2010 でのワークフロー
ワークフロー変更フォーム (Microsoft SharePoint Server 2010)
ワークフロー タスク フォーム (Microsoft SharePoint Server 2010)