InfoPath Forms Services 用のフォーム テンプレートを開発および展開する

最終更新日: 2010年7月6日

適用対象: SharePoint Server 2010

InfoPath Forms Services で動作する InfoPath フォーム テンプレートの開発は、InfoPath Designer 2010 で適切な互換性設定を設定することによってサポートされます。互換性設定は、フォーム テンプレートを最初に作成するときに行うことも、フォーム テンプレートの開発中の任意の時点で行うこともできます。InfoPath Forms Services で動作する InfoPath フォーム テンプレートの展開は、以下の 2 つの条件では、InfoPath Designer 2010 のユーザー インターフェイス (UI) から行うことができます。

  1. コードで記述されたカスタム ビジネス ロジックがフォーム テンプレートに含まれない場合。

  2. Microsoft.Office.InfoPath 名前空間のメンバーの既定のサブセットに記述されたビジネス ロジックがフォーム テンプレートに含まれ、その名前空間がサンドボックス ソリューションとして SharePoint で実行されることを許可されている場合。これを行うには、フォーム テンプレートを発行するユーザーが、フォーム テンプレートの発行先のサイトのサイト コレクション管理者である必要があります。

フォーム テンプレート内のカスタム ビジネス ロジックの実行に完全信頼が必要とされる場合、たとえば、ファイル システムにアクセスする可能性のあるコードを実行する必要がある場合、サーバー管理者は、SharePoint 2010 サーバーの全体管理サイトからフォームを承認して展開する必要があります。

互換性設定を使用する

InfoPath Designer 2010 コントロールの互換性設定では、フォーム テンプレートをデザインする際の多くの UI 要素が制御されます。たとえば、利用可能なコントロールの種類やブラウザーでの特定のコントロールの動作に関する警告などです。InfoPath Filler および InfoPath Forms Services と互換性のあるフォームを作成するには、新しいフォームを作成するときに、[空白のフォーム] テンプレート (テンプレート名の後に [InfoPath Filler] が続かない) を選択します。これらの設定を変更するには、[フォームのオプション] ダイアログ ボックスの [互換性] カテゴリをクリックします。このダイアログ ボックスは、フォーム テンプレートをデザインするときに、[ファイル] タブをクリックして、[フォームのオプション] をクリックします。また、[ファイル] タブをクリックし、[デザイン チェック] をクリックして、[デザイン チェック] 作業ウィンドウを表示することもできます。[デザイン チェック] 作業ウィンドウで、[設定の変更] リンクをクリックすると、[フォームのオプション] ダイアログ ボックスの [互換性] カテゴリに直接移動できます。

デザイン チェックを使用する

[デザイン チェック] 作業ウィンドウには、InfoPath Forms Services を実行するサーバーにフォーム テンプレートを展開する際に問題の原因になる可能性があるフォーム テンプレート内のアイテムに関するエラーおよびメッセージが表示されます。この情報を使用して、フォーム テンプレートがブラウザーで正しく機能するか、または展開の前に変更が必要であるかを判断します。特に、フォーム テンプレートをアップグレードしている場合は、ビュー内の多くのコントロールがサーバー上でサポートされない可能性があります。ブラウザー互換フォーム テンプレートでサポートされるコントロールの詳細については、「InfoPath Forms Services で動作する InfoPath フォーム テンプレートを作成する」を参照してください。

互換性に関するさらに詳細なレポートが必要な場合は、[デザイン チェック] 作業ウィンドウ内のエラーとメッセージの一覧の下にある [サーバーで確認] チェック ボックスをオンにします。InfoPath は、[フォームのオプション] ダイアログ ボックスの [互換性] カテゴリで指定された、InfoPath Forms Services を実行するサーバーにアクセスし、フォーム テンプレートの互換性に関する詳細情報を返します。InfoPath Forms Services にアクセスできない場合は、[デザイン チェック] 作業ウィンドウのエラーおよびメッセージを解決することによって、InfoPath Forms Services を実行するサーバーが利用可能になったときに、そのサーバーに展開できる互換性のあるフォーム テンプレートを作成できます。

重要重要

InfoPath Filler とブラウザーの両方で使用されるフォームをデザインするときに、クライアントでフォームを開いたときに除外されている Microsoft.Office.InfoPath 名前空間のオブジェクト モデルのメンバーを使用する必要がある場合は、[デザイン チェック] 作業ウィンドウでエラーを非表示にすることができます。そのためには、[フォームのオプション] ダイアログ ボックスの [互換性] カテゴリで [フォームへの入力を InfoPath Filler で行う場合のみ動作する機能をコードで使用する] チェック ボックスをオンにします。

フォーム テンプレートを展開する

ブラウザー互換フォーム テンプレートの展開は、InfoPath 2010 の [発行ウィザード] を使用して行います。フォーム テンプレートにユーザー設定コードが含まれているかどうかによって、フォーム テンプレートを実際にサイトに展開できるユーザーおよびフォーム テンプレートの展開の方法が決まります。

コードを含まないフォーム テンプレートまたは完全信頼を必要としないフォーム テンプレートを展開する

フォーム テンプレートにコードが含まれない場合や、完全信頼を必要としないコードがフォーム テンプレートに含まれる場合 (さらにサイト コレクション管理者である場合)、そのフォームテンプレートは、InfoPath 2010 Designer のユーザー インターフェイスから SharePoint サイトに直接展開できます。これは、ブラウザー互換フォーム テンプレートをブラウザー対応フォーム テンプレートに変換する最初の手順です。これは、フォーム テンプレートが、InfoPath Forms Services によって、ブラウザーでレンダリングされるように変換されていることを意味します。そのためには、次の手順に従います。

  1. [ファイル] タブで [発行]、[SharePoint Server] の順にクリックして、発行ウィザードを開きます。

  2. [発行ウィザード] の 1 番目の画面で、[投稿] 以上の権限を持っている、つまり、サイトのコンテンツを追加および削除できる SharePoint Server の URL を入力し、[次へ] をクリックします。

  3. [発行ウィザード] の 2 番目の画面で、[このフォームをブラウザーで入力できるようにする] と [フォーム ライブラリ] の既定の設定をそのまま使用します。最後のオプションが管理者の承認用のフォームの作成であることに注意して、[次へ] をクリックします。

    注意

    完全信頼を必要とするコードを含むフォーム テンプレートを発行する場合は、[管理者承認用フォーム テンプレート (高度)] を選択し、このトピックの「管理者の承認を必要とするフォーム テンプレートを展開する」トピックに進んでください。

  4. 発行ウィザードの 3 番目の画面で、[新しいフォーム ライブラリを作成する] の既定の設定をそのまま使用し、[次へ] をクリックします。

  5. 発行ウィザードの 4 番目の画面で、ドキュメント ライブラリ名を指定し、[次へ] をクリックします。

  6. [発行ウィザード] の 5 番目の画面で、[追加] ボタンをクリックして、SharePoint サイトおよび Outlook フォルダー内の列として表示する、フォーム テンプレートのフィールドを選択します。また、フォームを InfoPath フォーム Web パーツに表示する場合、SharePoint Web パーツの接続パラメーターとして使用できるフィールドを選択することもできます。これらのフィールドの選択は省略できます。操作が完了した後に、[次へ] をクリックします。

  7. [発行ウィザード] の最後の画面で、[発行] をクリックします。これにより、フォーム テンプレートがドキュメント ライブラリに展開され、利用できるようになります。この操作が完了した後、[このフォームをブラウザーで開く] リンクをクリックすると、ブラウザー対応フォームが表示されます。

管理者の承認を必要とするフォーム テンプレートを展開する

完全信頼を必要とするフォーム テンプレートについては、管理者の承認が必要です。セキュリティと管理性の理由から、完全信頼を必要とするユーザー設定コードを含むフォーム テンプレートは、SharePoint 2010 サーバーの全体管理サイトに対して管理者の権限を持つユーザーがアップロードおよびアクティブ化する必要があります。このような権限がない場合は、権限を持っているユーザーを見つける必要があります。このような権限がある場合は、以下の手順に従って、ユーザー設定コードを含むフォーム テンプレートをブラウザー対応にします。

フォーム テンプレートの発行を完了するには

  1. 前述の「コードを含まないフォーム テンプレートまたは完全信頼を必要としないフォーム テンプレートを展開する」の手順 3. までを実行し、[発行ウィザード] の 2 番目の画面を表示します。ここで、[管理者承認用フォーム テンプレート (高度)] をクリックし、[次へ] をクリックします。

  2. 発行ウィザードの 3 番目の画面で、フォーム テンプレート (.xsn) ファイルの場所とファイル名を入力します。ローカル ディスク、ネットワーク ファイル共有、または Web サーバー上のファイルを指定できます。[次へ] をクリックします。

  3. 発行ウィザードの 4 番目の画面で、[追加] ボタンをクリックして、フォーム ライブラリおよび Outlook フォルダーで列として表示されるフォーム テンプレートのフィールドを選択します。フォームが InfoPath フォーム Web パーツで表示されている場合は、SharePoint Web パーツ接続パラメーターとして使用可能なフィールドも選択することができます。これらの手順は省略できます。操作が完了したら、[次へ] をクリックします。

  4. [発行ウィザード] の最後の画面で、[発行] をクリックします。これにより、フォーム テンプレート (.xsn) ファイルが、指定した場所に保存され、サーバーにアップロードできるようになります。

フォーム テンプレートをサーバーにアップロードするには

  1. SharePoint 2010 サーバーの全体管理サイトを開きます。

  2. [アプリケーションの全般設定] の下にある [フォーム テンプレートの管理] リンクをクリックします。

  3. ページの上部にある [フォーム テンプレートのアップロード] リンクをクリックします。

  4. [参照] をクリックしてダイアログ ボックスを開き、発行されたフォーム テンプレートのパスを入力します。

  5. [確認] ボタンをクリックして、フォーム テンプレートにエラーがないことを確認します。この手順は省略できます。

  6. [アップロード] ボタンをクリックしてフォーム テンプレートをサイトにアップロードします。アップロードが完了したら、[OK] をクリックします。

サイト コレクションに対してフォーム テンプレートをアクティブ化するには

  1. [フォーム テンプレートの管理] ページで、アップロードしたフォーム テンプレートを探します。

  2. ドロップダウン ボックスをクリックし、[サイト コレクションへのアクティブ化] をクリックします。

  3. [アクティブ化する場所] セクションで、ドロップダウン ボックスをクリックし、[サイト コレクションの変更] をクリックします。

  4. [サイト コレクションの選択] ダイアログ ボックスで、[Web アプリケーション] ドロップダウン ボックスをクリックし、[Web アプリケーションの変更] を選択します。

  5. [SharePoint - 80] をクリックします。これは既定の SharePoint Server の名前です。これ以外の場合は、既定の SharePoint Server を選択します。

  6. フォームをアクティブ化するサイト コレクション名をクリックし、[OK] をクリックします。

  7. [フォーム テンプレートのアクティブ化] ページで、[OK] をクリックします。

  8. 別の方法として、サイト コレクション管理者の場合、サイト コレクション管理ページから発行済みのフォーム テンプレートをアクティブ化することができます。この操作をするには、トップレベルのサイト コレクションページを開いて、[サイトの操作] ドロップダウン リストで [サイトの設定] をクリックし、[サイト コレクションの管理] で [サイト コレクションの機能] をクリックします。アップロードするフォーム テンプレートを参照して、次に [アクティブ化] ボタンをクリックします。

サイト コレクションに対してフォームをアクティブ化すると、フォームは利用できるようになり、フォーム テンプレート ドキュメント ライブラリに表示されます。

関連項目

その他の技術情報

コードを含む InfoPath フォーム テンプレートを開発する

[方法] コードを含む InfoPath フォーム テンプレートを操作する方法

マネージ コード フォーム テンプレートのセキュリティ モデルについて

[方法] 完全信頼が必要なマネージ コード フォーム テンプレートをプレビューおよびデバッグする方法

[方法] マネージ コード フォーム テンプレートのセキュリティ設定を構成する方法