フォーム テンプレートとフォームの概要
適用先
フォーム テンプレート (.xsn) ファイルを設計するときは、複数のサポート ファイルを含む 1 つのファイルを作成します。 逆に、ユーザーがフォームに入力すると、実際にはフォーム テンプレートに基づくフォーム (.xml) ファイルに入力されます。
この記事の内容
デザイン内容: フォーム テンプレート
フォーム テンプレートは、InfoPath デザイン環境であるデザイン モードで作成します。 フォーム テンプレートは、.xsn ファイル名拡張子を持つファイルです。 .xsn ファイルは、完成したフォーム (.xml ファイル) のデータ構造、外観、および動作を定義します。
フォーム テンプレートは、次のような多くのことを定義します。
- フォームに表示されるコントロール、ラベル、および説明テキスト。
- ユーザーが操作するときにコントロールが動作する方法。 たとえば、ユーザーが [チェック] ボックスを選択したときに特定のセクションが表示され、ユーザーが [チェック] ボックスをオフにすると消える場合があります。
- フォームに追加のビューがあるかどうか。 たとえば、許可申請フォームを設計する場合は、電気請負業者に対して 1 つのビュー、受信側エージェントの別のビュー、アプリケーションを承認または拒否する調査官の 3 番目のビューがあります。
- フォーム内のデータの格納方法と場所。 たとえば、フォーム テンプレートは、ユーザーが直接または Web サービスを使用してデータベースにデータを送信できるように設計されている場合があります。 または、ユーザーにフォームを共有フォルダーに保存させる場合があります。
- フォームで使用されるフォント、色、およびその他のデザイン要素。
- ユーザーがフォームをカスタマイズできるかどうか。 たとえば、ユーザーが繰り返しテーブル、繰り返しセクション、または省略可能なセクションに追加の行を追加できます。
- ユーザーがフォームの間違いを犯したときに通知を受け取るか、必須フィールドに入力し忘れるか。
フォーム テンプレートの設計を完了したら、.xsn ファイルとして公開することで、ユーザーがフォーム テンプレートを使用できるようにします。
ヒント
フォーム テンプレートの設計に加えて、他のフォーム テンプレートや Microsoft Office ドキュメントで使用できるカスタム コントロールであるテンプレート パーツを設計することもできます。 たとえば、連絡先情報を収集するためのフィールドを含むテンプレート パーツを作成できます。 その後、そのテンプレート パーツを複数の異なるフォーム テンプレートで使用できます。 テンプレート パーツの詳細については、「関連項目」セクションのリンクを 参照してください 。
ユーザーが入力する内容: フォーム
InfoPath フォームは、XML データを含む .xml ファイルです。 すべての InfoPath フォームは、フォーム テンプレートに基づいています。
フォーム テンプレートとフォームの関係を示すために、電気請負業者が使用する申請フォーム テンプレートを設計したとします。 電気請負業者が記入する各許可申請はフォームです。 そのフォームは、フォームに入力されたデータ (およびデータのみ) を含む単なる .xml ファイルです。 フォームを構成するその他のすべてのものは、フォーム テンプレートによって提供されます。 つまり、ユーザーがフォームを開くたびに、適切に機能するためには、そのフォームに関連付けられているフォーム テンプレートを見つけて使用する必要があります。 それ以外の場合、ユーザーがフォームを開くと、XML マークアップ タグとデータのみが表示されます。
フォーム テンプレートとそれに基づくフォームをリンクするために、InfoPath には、各フォーム ファイルの上部に、処理命令と呼ばれる複数のコード行が含まれています。 このコードは、フォーム ファイルを関連付けられたフォーム テンプレートにリンクします。
フォーム テンプレートのコンポーネント
フォーム テンプレートは、フォーム テンプレートのコントロールの表示方法を定義するファイル、フォーム テンプレートに表示されるグラフィックス用のファイル、フォーム テンプレートでカスタム動作を有効にするプログラミング ファイルなど、複数のサポート ファイルを含む 1 つのファイルです。 これらのサポート ファイルは、まとめてフォーム ファイルと呼ばれます。 フォーム テンプレートをデザインするときに、フォーム テンプレートを構成するフォーム ファイルを表示して操作するには、それらのフォーム ファイルを抽出してフォルダーに保存します。
フォーム テンプレートを構成するサポート ファイルには、1 つ以上の XML スキーマ ファイル、フォーム テンプレート内の各ビューの XSL 変換 (XSLT) ファイル、ユーザーがそのフォーム テンプレート、スクリプト ファイル、またはマネージド コード アセンブリに基づくフォームを最初に開いたときに既定で表示されるデータの XML ファイルを含めることができます。 Manifest.xsf と呼ばれるフォーム定義ファイル。
フォーム テンプレートを構成するファイルについて理解するには、次の手順を使用して、フォーム テンプレートのソース ファイルを表示できます。
フォーム テンプレートのフォーム ファイルを表示する
- 新しい空のフォーム テンプレートを作成します。
- [ファイル] メニューの [ソースとして保存] Filesをクリックします。
- [ フォルダーの参照 ] ダイアログ ボックスで、フォーム ファイルを保存する既存のフォルダーを選択するか、新しいフォルダーを作成して、[OK] をクリック します。
InfoPath は、フォーム テンプレートのコピーをフォルダー内の一連のファイルとして保存します。 - Windows エクスプローラーで、ファイルを含むフォルダーを参照します。
次の表では、フォーム テンプレートのサポート ファイルについて説明します。 これらのファイルは常にフォーム テンプレートに含まれます。
| ファイルの種類 | ファイル名拡張子 | 説明 |
|---|---|---|
| フォーム定義ファイル | .xsf | フォーム テンプレートを組み合わせる方法に関する情報 (使用する XML スキーマや、そのテンプレートに含まれるリソース ファイルなど) を含むファイル。 InfoPath は、新しいフォーム テンプレートを設計するときに、このファイルを自動的に生成します。 フォーム テンプレートを設計および変更すると、変更が反映されるようにファイルが自動的に更新されます。 |
| XML スキーマ | .xsd | フォーム テンプレート内のデータを制約および検証するファイルまたはファイル。 XML スキーマ ファイルの内容 (要素、属性など) は、[ データ ソース ] 作業ウィンドウのグループとフィールドによって表されます。 メイン データ ソースを含むフォーム テンプレートに関連付けられている各データ ソースには、対応する .xsd ファイルがあります。 |
| ビュー | 。Xsl | ユーザーが入力するフォームに含まれる表示データを表示、表示、および HTML に変換するために使用される XSL 変換 (XSLT) ファイル。フォーム テンプレートのさまざまなビューを操作する場合、実際には、フォームに表示されるデータのさまざまな HTML 表現 (または変換) を確認します。 |
| XML テンプレート | .xml | 既定で特定のコントロールに表示するデータを含むファイル。 ユーザーは、最初にフォームを開いたときに、コントロールで異なる値を選択するまで、このデータを表示します。 |
前の表のファイルに加えて、フォーム テンプレートのデザインに応じて、次の表のいずれかのファイルをフォーム テンプレートに含めることができます。
| ファイルの種類 | ファイル名拡張子 | 説明 |
|---|---|---|
| 効果 | .htm、.gif、.bmp など | フォーム テンプレート内のカスタム作業ウィンドウまたは画像を表示するために使用されるファイル。 |
| ビジネス ロジック | .js、.vbs | 特定のフォーム動作を実装するためのスクリプトを含むファイル。 これらのスクリプト ファイルは、Microsoft JScript または Microsoft Visual Basic Scripting Edition (VBScript) ファイルです。 |
| バイナリ | .dll、.exe、.cab など | プログラミング コードと追加のビジネス ロジックを提供する外部ファイル。 たとえば、フォーム テンプレートのカスタム コントロールを作成する場合、そのコントロールをユーザーのコンピューターに自動的にインストールして登録するためにインストール プログラムが必要になる場合があります。 バイナリ ファイルは InfoPath ではなく、Microsoft Visual Studio .NET などのプログラムで作成されます。 |
フォーム テンプレートを変更すると、InfoPath によってフォーム ファイルが自動的に更新されます。 ただし、XML を使用した経験がある場合、または高度なフォーム デザイナーの場合は、個々のフォーム ファイルを抽出して手動でカスタマイズできます。 たとえば、次の種類の状況で一連のフォーム ファイルを手動で変更できます。
- フォーム テンプレートの XML スキーマ (.xsd ファイル) を別の Microsoft Office プログラムで再利用する必要があります。 たとえば、InfoPath .xsd ファイルを Microsoft Office Word 2007 のスキーマ ライブラリに追加できます。 その後、InfoPath .xsd ファイルの要素をドキュメントのコンテンツにマップできます。
- InfoPath に付属する組み込みコマンドに加えて、カスタム コマンドを含むツール バーをフォーム テンプレートに作成する必要があります。 そのためには、フォーム テンプレートのフォーム定義 (.xsf) ファイルを編集する必要があります。
- ボタンに背景画像 (.gif ファイル) を追加するなど、InfoPath で使用できないフォーム テンプレートの書式設定関連の機能強化を行う必要があります。 これを行うには、フォームの XML 変換 (.xsl) ファイルを編集する必要があります。