フォーム データの送信の概要

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

この記事の内容

概要

フォーム データを Access または SQL Server データベースに送信する

フォーム データを Web サービスに送信する

Microsoft Windows SharePoint Services を実行するサーバーにフォーム データを送信する

フォーム データを電子メール メッセージとして送信する

フォーム データを Web サーバー上のアプリケーションに送信する

データ接続ファイルを使用してフォーム データを送信する

コードを使用してフォーム データを送信する

概要

Microsoft Office InfoPath フォームで大規模なビジネス プロセスの一環としてデータを収集する場合、データは通常、ユーザーがフォームに入力したままになっているのではありません。フォーム データは、フォームからビジネス プロセスの次の段階、通常は外部データ ソース (データベース、Web サービス、Web サーバー上のアプリケーションなど) へと移動します。たとえば、従業員が InfoPath の経費報告書フォームに入力し、そのフォームを Web サービスに送信して、そこでフォームが処理される場合が考えられます。

外部データ ソースに送信される InfoPath フォーム

フォームを保存する場合は、ユーザーが入力中にフォームを保存する場所を選択しますが、フォームを送信する場合は、フォームのデータは、フォームに関連付けられたフォーム テンプレートのデザイン時に定義された特定の場所に送信されます。フォーム テンプレートをデザインし、フォームの送信を有効にするときに、ユーザーがフォームに入力するデータの送信先として、次の場所を選択できます。

  • Microsoft Office Access または Microsoft SQL Server データベース

  • Web サービス

  • Microsoft Windows SharePoint Services を実行するサーバー

  • 電子メール メッセージ内

  • Web サーバー上のアプリケーション

  • InfoPath をホストするカスタムのアプリケーション

フォーム内のデータの送信先を指定すると、ビジネス プロセスをより細かく制御できるようになるため、プロセスの正確さと効率が向上します。ユーザーがフォーム データを送信する前に、InfoPath ではフォーム内のデータが有効かどうかが確認され、無効なデータをユーザーが修正できるようになります。この機能により、有効なデータだけを外部データ ソースに送信できるようになります。

フォーム テンプレートは、ユーザーがデータを 1 か所に送信できるようデザインできるだけでなく、フォーム データを一度に複数の場所に送信できるようデザインすることもできます。たとえば、経費報告書のフォーム テンプレートをデザインする場合、入力済みのフォームをユーザーが送信したときに、フォームのデータをデータベースに送信するだけでなく、各入力済みフォームのコピーを電子メール メッセージで管理者にも送信するようにできます。

外部データ ソースに送信可能なフォームをデザインすると、InfoPath では既定で [ファイル] メニューの [送信] コマンドが有効になると共に、[標準] ツールバーの [送信] ボタンも有効になります。[送信] コマンドの名前は、必要に応じて変更できます。さらに、フォーム テンプレートにボタンを直接挿入して、ユーザーがフォームの入力後、そのボタンをクリックしてフォーム データを送信できるようにすることもできます。

また、フォームの送信後に次の操作が実行されるようフォーム テンプレートをセットアップすることもできます。

  • 既存のフォームを閉じる。

  • 既存のフォームを閉じ、新しい空白のフォームを開く。

  • 既存のフォームを開いたままにする。

さらに、ユーザーがフォームを送信した後、メッセージを表示して、フォームが正しく送信されたかどうかを知らせることもできます。

ページの先頭へ

フォーム データを Access または SQL Server データベースに送信する

InfoPath フォームは、多くの場合、データベースに送信され、顧客レコードで単一のテーブルを更新する場合や、さらに複雑なケース (経費報告書のフォーム テンプレート内でリンクされている複数のテーブルを修正するなど) に使用される場合もあります。InfoPath では、スクリプトやカスタムのコードを使用しなくても、Access または SQL Server データベースにフォーム データが直接送信されるようフォーム テンプレートをデザインできます。また、カスタムのコードを使用するか、データベースに接続された Web サービスにフォームを送信すると、他の種類のデータベースにフォーム データを送信することもできます。

フォームを Access または SQL Server データベースに送信するには、対象のデータベースに基づいてフォーム テンプレートをデザインする必要があります。これにより、フォーム テンプレートのデータ ソースをデータベース構造に対応させることができます。既存のフォーム テンプレートにデータベース接続を追加しても、フォームのデータ ソースがデータベース構造に対応していないため、ユーザーは入力済みのフォームをデータベースに送信できません。フォーム テンプレートがデータベース構造に対応していないと、データが送信されても、InfoPath ではデータベース内の正しいフィールドを更新できません。

データベースに基づく InfoPath フォーム テンプレートをデザインするときは、次の点に注意してください。

  • フォーム テンプレートをデータベース内の複数のテーブルに接続する場合は、各テーブルをキー フィールドで接続する必要があります。

  • 画像、イメージ、OLE オブジェクト、添付ファイル、Access の Memo または SQL のデータ型など、長いデータ型は、データ接続から除外する必要があります。InfoPath では、これらの長いデータ型へのデータ接続がサポートされていません。データベース内の特定のフィールドを除外するには、データ接続ウィザードを使用してデータ接続をセットアップします。

上記のいずれかの事項が当てはまるかどうかを確認するには、データ接続ウィザードの最後のページにある [概要] の情報を参照します。[概要] にはフォームの送信が有効であるかどうかが示され、フォームの送信が無効であれば、この [概要] にその理由が示されます。

フォーム テンプレートとデータベースの接続をセットアップすると、必要に応じて他の送信オプションをカスタマイズできるようになります。たとえば、フォーム テンプレートの [送信] ボタンに表示されるテキストを変更できます。また、フォームが正常に送信されたかどうかを示すメッセージを変更したり、送信後にフォームを開いたままにしておくかどうかを指定したりできます。

ページの先頭へ

フォーム データを Web サービスに送信する

InfoPath では、Web サービスを使用してビジネス プロセスのワークフローを構築する場合や、Web サービスをデータベースのすぐ上の中間層として使用する場合に、Web サービスと連携するフォーム テンプレートを簡単に作成できます。InfoPath には、フォーム テンプレートを Web サービスに接続する手順を手引きするデータ接続ウィザードが用意されています。

フォームを Web サービスに送信するフォーム テンプレートをデザインするには、次の 2 とおりの方法があります。

  • 既存のフォーム テンプレートを Web サービスに接続する

  • Web サービスに基づく新しいフォーム テンプレートをデザインする

どちらの方法を使用する場合も、InfoPath では Web サービスのスキーマに基づくデータ ソースが作成されます。これにより、フォーム テンプレートを基盤とするフォームで Web サービスにデータを送信できるようになります。

詳細な技術情報

ユーザーは、Web サービスには、フォームを送信するときに、フォームは SOAP エンベロープでデータを拡張マークアップ言語 (XML) として送信されます。SOAP エンベロープでは、指定した Web サービス操作の入力パラメーターとして機能します。これを比較する HTTP POST 要求の XML ドキュメントでその結果 HTTP を使用してフォームを送信します。

InfoPath フォーム テンプレートを Web サービスに接続する前に、次の点に注意してください。

  • InfoPath は、リモート プロシージャ コール (RPC) のエンコード スタイルを使用する Web サービスには接続できません。ドキュメント リテラル エンコードだけがサポートされています。

  • フォームで Web サービスにデータを送信できるようフォーム テンプレートを構成するときは、特定のフィールドまたはグループ内のデータだけを送信するよう指定するか、フォーム内のすべてのデータを送信するよう指定できます。

Web サービスへのデータ接続をセットアップすると、フォーム テンプレートに [送信] ボタンを追加して、必要な他の送信オプションをカスタマイズできるようになります。

ページの先頭へ

Microsoft Windows SharePoint Services を実行するサーバーにフォーム データを送信する

Microsoft Windows SharePoint Services を実行するサーバーにデータを送信するフォーム テンプレートをデザインできます。これにより、ユーザーのすべてのフォームをドキュメント ライブラリに保存して管理できます。さらに、ユーザーはこのドキュメント ライブラリから、フォーム テンプレートに基づくフォームに直接入力できます。またユーザーは、フォーム データを Microsoft Office Excel にエクスポートしたり、複数のフォームのデータを 1 つのフォームに結合したりできます。さらに、ドキュメント ライブラリへのフォームの直接送信を有効にするときに、静的な値、フォーム内のデータに基づく値、または数式のうちいずれかを使用して、フォームのファイル名をあらかじめ定義できます。

SharePoint ドキュメント ライブラリにフォームを送信できるようフォーム テンプレートを構成すると、フォームに [送信] ボタンを追加して、他の送信オプション ([送信] ボタンのテキスト、フォームが正常に送信されたかどうかを示すメッセージ、送信後にフォームを開いたままにしておくかどうかなど) をカスタマイズできるようになります。

ページの先頭へ

フォーム データを電子メール メッセージとして送信する

電子メール プログラムの使用は、ビジネス プロセスのワークフローを構成する方法として最も簡単かつ一般的な方法の 1 つです。InfoPath では、ユーザーが [標準] ツールバーまたは [ファイル] メニューの [送信] をクリックすると、入力済みのフォームを電子メール メッセージの添付ファイルまたは本文として送信できるフォーム テンプレートを作成できます。電子メール アドレス、件名、および添付ファイルの名前は、静的な値、フォーム内のエントリに基づく値、または数式を使用して、すべてあらかじめ定義しておくことができます。たとえば、入力済みのフォームを、あらかじめ定義した件名の電子メールとして、フォーム内のエントリに基づく電子メール アドレスに自動的に送信するよう、フォーム テンプレートをデザインできます。さらに、ユーザーがフォームに入力するデータに基づいて、フォームのファイル名を動的に定義することもできます。

ユーザーがフォームを電子メール メッセージとして送信するには、ユーザーのコンピュータに Microsoft Office Outlook 2003 または Microsoft Office Outlook 2007 がインストールされている必要があります。ユーザーが Web ブラウザでフォームに入力する場合は、Outlook を使用してフォームを電子メール メッセージとして送信する必要はありません。

フォームを電子メール メッセージとして送信できるようにフォーム テンプレートを構成すると、フォーム テンプレートの [標準] ツールバーには [送信] ボタンを、[ファイル] メニューには [送信] コマンドを追加することができ、[送信] ボタンに表示されるテキスト、フォームが正常に送信されたかどうかを示すメッセージ、送信後にフォームを開いたままにしておくかどうかなど、他の送信オプションのカスタマイズも可能になります。

ページの先頭へ

フォーム データを Web サーバー上のアプリケーションに送信する

既存の Active Server ページ (ASP) ページまたはその他のコードの XML データを処理できる Web サーバー、ユーザーは、HTTP POST メソッドを使用して Web サーバーへの完成したフォームを送信できるように、フォーム テンプレートをデザインできます。この方法でフォームを送信できるようにするフォーム テンプレートを構成するときに、フォーム データを含む、Web サーバーにこのメッセージを送信するメッセージが作成されます。Web サーバーへのデータを送信するフォーム テンプレートをデザインする際は、フォーム テンプレートに送信] ボタンを追加するに表示されるテキストを指定するのには、[送信] ボタンを示すフォームが正常に送信したかどうか、送信後に、フォームを開いたままにするかどうかを指定してユーザーに表示されているメッセージをカスタマイズします。

ページの先頭へ

データ接続ファイルを使用してフォーム データを送信する

Microsoft Office InfoPath 2007 では、データ接続ファイルと呼ばれる XML ファイルを作成して、データ接続に必要なすべての設定を含めることもできます。このファイルを Microsoft Office SharePoint Server 2007 サイトのデータ接続ライブラリに格納すると、同じ XML ファイルを使用してデータ接続を構成する複数のフォーム テンプレートをデザインできます。データ接続ファイルを使用すると、データ接続に関する情報が変更された場合 (外部データ ソースの場所が変更された場合など) に、各フォーム テンプレートのデータ接続を更新しなくても、データ接続ファイルを一度更新するだけで済むようになります。この場合、そのデータ接続ファイルを使用するすべてのフォーム テンプレートが、新しい設定に自動的に更新されます。

データ接続ファイルには、ユーザーからのフォーム データの送信方法を決定する設定を含めることができます。このデータ接続ファイルの設定を使用するように、フォーム テンプレートをデザインできます。フォームを送信できるようにフォーム テンプレートを構成すると、そのフォーム テンプレートを基にしたフォームでは、[ファイル] メニューに [送信] コマンドを、[標準] ツールバーに [送信] ボタンを追加することができ、[送信] ボタンおよびコマンドに表示されるテキスト、フォームが正常に送信されたかどうかを示すメッセージ、送信後にフォームを開いたままにしておくかどうかなど、他の送信オプションのカスタマイズも可能になります。

ページの先頭へ

コードを使用してフォーム データを送信する

フォーム データを送信するための高度な機能をフォーム テンプレートに追加するには、Microsoft Visual Basic .NET、Microsoft Visual C# .NET、またはスクリプトを使用して、マネージ コードを記述します。たとえば、一度に複数の場所にフォームを送信できる機能や、通常は InfoPath でサポートされない外部データ ソースにフォームを送信できる機能を、フォーム テンプレートに追加できます。

ヒント: InfoPath のデータ接続オプションを使用しても、ユーザーがフォームを外部データ ソースに送信できるようフォーム テンプレートをデザインできない場合は、この機能を使用して、その外部データ ソースに対するデータ接続の実装を独自に記述できます。

ページの先頭へ

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×