フォームで異なるビューを設計することで、作成するフォームの種類またはフォームを表示するユーザーの種類に応じて、ユーザーにさまざまなデータの表示方法を提供できます。 たとえば、複数のビューを使用すると、次のことができます。
- 長いアンケートなどの複雑な長いフォームを簡略化するには、ユーザーが [次へ ] ボタンと [ 戻る ] ボタンをクリックして移動できる複数のページに分割します。
- 保険金請求の処理時に保険者、代理人、アジャスター ビューを使用するなど、organizationでの役割に基づいて、さまざまなバージョンのフォームをさまざまなユーザーに表示します。
- フォームの印刷に便利なビューを作成します。
同じ InfoPath フォーム内のすべてのビューが同じデータを共有します。 その結果、フォームに 2 つのビューがあり、そのうちの 1 つに電子メール アドレス テキスト ボックスがある場合は、そのテキスト ボックスを 2 番目のビューにコピーできます。 ユーザーが 1 つのビューで電子メール アドレスを入力すると、もう一方のビューに自動的に表示されます。
この記事の内容
ビューの概要
ユーザー エクスペリエンス
既定では、フォームのユーザーは、リボンの [ビュー/ページ ビュー] グループから目的のビューを選択することでビューを切り替えることができます。 各ビューはその名前で一覧表示され、アクティブなビューが強調表示されます。 [表示プロパティ] ダイアログ ボックスの [このフォームに入力するときに表示] メニューの [チェック] ボックスがオフになっているビューを除き、すべてのビューが一覧表示されます。
このフォームに入力するときに [表示] メニューの [表示] チェックボックスが選択されていない場合、[ホーム] タブの [ページ ビュー] グループは表示されません。 これは、ユーザーが入力する予定のビュー以外のビューにユーザーがアクセスできないようにするシナリオで役立ちます。たとえば、求職者に関するフィードバックを収集するために使用されるフォームには、3 つの異なるユーザー ロールが関連付けられている場合があります。1 つは採用担当者用、もう 1 つは面接官用、もう 1 つは採用マネージャー用です。 ユーザー ロールごとに、フォームの少し異なるビューを設計できます。
注
ユーザーからビューを非表示にする機能は、セキュリティ機能ではありません。 XML データ自体にアクセスする方法がわかっている場合でも、ユーザーはデータを確認できます。
面接担当者が採用担当者ビューまたは採用マネージャー ビューに切り替わるのを防ぐには、採用担当者ビューと採用マネージャー ビューを設計するときに、[プロパティの表示] ダイアログ ボックスを開き、このフォームチェックボックスに入力するときに [表示] メニューの [表示] をオフにします。
注
フォーム オプションでは、Web ブラウザーでフォームに入力するユーザーに対してビューを切り替える機能を無効にすることができます。 [ファイル] タブをクリックし、[情報] をクリックし、[フォーム オプション] をクリックし、[Web ブラウザー] セクションで [ビュー チェック] ボックスをオフにします。
ビュー切り替えエクスペリエンスをカスタマイズするには、この記事の後半で説明するように、ビュー切り替えボタンをフォームに追加します。
設計に関する考慮事項
新しいビューを設計するときは、通常、次のタスクを実行する必要があります。
- ビューを計画します。
次のような考慮事項に注意を払いながら、各ビューとそれらがどのように連携するかを計画します。
- フォームを最初に開いたときに表示するビューはどれですか?
- ユーザーは複数のビューを使用する必要がありますか? 彼らはどのように彼らの間を移動しますか?
- いずれかのビューを読み取り専用にする必要がありますか?
- ユーザーは InfoPath フォームからビューを印刷する可能性がありますか?
- ビューを設定します。
フォームに新しいビューを追加すると、ページ レイアウト テンプレートから始まります。 ここから、リボンの [ 挿入 ] タブからレイアウト テーブルを追加してフォームを構成し、[コントロール] グループの [ ホーム ] タブから コントロール を追加できます。
[ フィールド ] 作業ウィンドウから適切なフィールドをドラッグすることで、他のビューで使用されるコントロールと同じフィールドを共有するコントロールを新しいビューに追加することもできます。
- ナビゲーション エクスペリエンスをカスタマイズします。
ユーザーはどのようにフォーム内を移動できますか? ビューを切り替えるための既定のコマンドが何を意味するかはユーザーに認識されますか? 既定のコマンドが適切か、またはフォームに直接表示されるボタンをクリックして、ユーザーがビューを切り替えるようにしますか? ユーザーがボタンをクリックする場合、タブ付きのユーザー インターフェイスまたは戻るボタンと次のボタンを使用しますか? 印刷ビューの場合、ユーザーがすべてのビューを一度に印刷するか、アクティブなビューのみを印刷しますか?
[ページ デザイン] タブの [ビュー] グループ
リボンの [ ページ デザイン ] タブの [ビュー] グループで、 ビュー を追加または削除したり、異なるビューを切り替えたりできます。 選択したビューの設定と動作をカスタマイズするには、[ プロパティ ] ボタンをクリックして [ ビューのプロパティ ] ダイアログ ボックスを開きます。
また、印刷ビューを作成して既存のビューに関連付けるには、最初にフォーム ビューを印刷するときに表示する印刷ビューを作成し、[表示 プロパティ ] ダイアログ ボックスを使用して既存のビューに割り当てます。 また、[ビュー プロパティ] ダイアログ ボックスの [ 印刷設定] タブと [ ページ設定 ] タブ (ヘッダー、フッター、ページ余白など) で、印刷 ビュー のカスタム印刷オプションを指定することもできます。
ビューを追加する
フォームにビューを追加するには、次の手順に従います。
- [ ページ デザイン ] タブをクリックし、[ ビュー ] グループで [ 新しいビュー] をクリックします。
- ビューの名前を入力し、[OK] をクリック します。
- [ ビュー プロパティ ] ダイアログ ボックスを開くには、[ ページ デザイン ] タブをクリックし、[ ビュー ] グループから [ プロパティ] をクリックします。
- [ ビューのプロパティ ] ダイアログ ボックスで、ビューに必要な設定またはオプションを変更または指定し、[OK] をクリック します。
- ワークスペースで、レイアウト テーブルとコントロールを追加してビューを設計します。
既存のビューに基づいて新しいビューのデザインを作成する場合は、既存のビューを開き、 Ctrl + A キー を押してビュー内のすべてのものを選択し、 Ctrl + C キー を押して選択範囲をクリップボードにコピーします。 [ページ デザイン] タブの [ビュー] グループの[表示] リストから新しいビューを選択し、ビューで事前に設定されたコンテンツを削除し、Ctrl キーを押しながら V キーを押して新しいビューに選択範囲を貼り付けます。
ビューを削除する
ビューを削除した後、ビューを回復または復元することはできません。 ビューが 1 つだけのフォームで既定のビューを削除すると、InfoPath によって新しい既定のビューが自動的に作成されます。 複数のビューを含むフォームの既定のビューを削除すると、[ ページ デザイン ] タブの [ビュー ] グループの [ビュー] リストに表示されるビューの一覧の次のビューに既定の ビュー の状態が割り当てられます。
- [ ページ デザイン ] タブの [ビュー] グループで、削除する ビュー を [表示 ] リストから選択します。
- [ ページ デザイン ] タブの [ ビュー ] グループで、[ 削除] をクリックします。
- ビューの削除を求められたら、[ はい] をクリックします。
標準表示を変更する
各フォームには既定のビューがあります。 ユーザーは、フォームに基づくフォームを開くと、このビューが表示されます。 フォームのカスタム ビューを作成する場合は、使用可能なビューのうち、ユーザーの既定のビューを選択できます。
- [ビュー] リストの [ ページ デザイン ] タブの [ビュー] グループで、既定のビューを作成する ビュー を 選択 します。
- [ ページ デザイン ] タブの [ ビュー ] グループで、[ プロパティ] をクリックします。
- [既定のビューチェックとして設定] ボックスを選択し、[OK] をクリックします。
フォームにビューが 1 つしかない場合は、既定のビューとして自動的に指定されます。
ビューの名前を変更する
- [ ページ デザイン ] タブの [ビュー] グループで、名前を変更する ビュー を [ビュー ] リストから選択します。
- [ ページ デザイン ] タブの [ ビュー ] グループで、[ プロパティ] をクリックします。
- [ プロパティの表示 ] ダイアログ ボックスで、[ 表示 名] テキスト ボックスにタブの新しい名前を入力し、[OK] をクリック します。
注
カスタム コードに関連付けられているビューの名前を変更すると、コードが期待どおりに動作しない可能性があります。 この問題を解決するには、コード内のビューの古い名前への参照をすべて見つけて、ビューの新しい名前で更新する必要があります。
ビューを切り替えるためのボタンを追加する
ビューは、多くの場合、ルールを操作するように設計されています。 ルールを使用すると、フォームに入力したユーザーによって開始されたイベントまたはアクションに応答して、特定のタスクを自動化できます。 たとえば、フォームにボタンを挿入し、ボタンがクリックされたときにビューを切り替えるルールを作成し、フォームにボタンを挿入した後、ユーザーがクリックしたときにビューを切り替えるようにルールをボタンに関連付けることができます。
具体的には、保険金請求フォームで、[ 概要の表示 ] ボタンを作成して、クリックすると請求データの概要を表示できます。 概要ビューでは、ユーザーは [ 詳細の表示 ] ボタンをクリックして、より詳細なビューに戻ります。 同様に、非常に長いフォームがある場合は、複数のビューに分割し、次のボタンと戻るボタンまたは タブ付きナビゲーション を追加して、ユーザーがフォーム内を移動できるようにします。
- 各ビューにボタンを挿入します。
次の手順を完了するには、2 つの既存のビューを含むフォームが必要です。
- [ページ デザイン] タブの [ビュー] グループの [表示] リストから、ボタンを追加するビューを選択します。
- ボタンを挿入するフォームにカーソルを置きます。
- [ ホーム ] タブの [ コントロール ] グループで、[ボタン] を選択 します。
- [ コントロール ツール] で、リボンの [ プロパティ ] タブをクリックします。
- [ ラベル ] ボックスにボタンの名前を入力し、[OK] をクリック します。
ビューを切り替えるルールを作成します。
- ボタンを選択します。
- [ コントロール ツール] の [ プロパティ ] タブの [ ルール ] グループで、[ ルールの追加] をクリックします。
- [このボタンがクリックされたとき] を選択し、[アクション] リストから [ビューの切り替え] を選択します。
- [ 表示 ] テキスト ボックスで、ボタンがクリックされたときに表示するビューを選択し、[OK] をクリック します。
手順 1 と 2 を繰り返して、各ビューに追加のボタンと対応するルールを作成します。
ビューにボタンを追加し、必要なルールを作成したら、フォームをテストして、期待どおりに動作することを確認することをお勧めします。
[ ホーム ] タブの [ フォーム ] グループで、[ プレビュー] をクリックします。
ボタンをクリックして、必要に応じてビューを切り替えることができることを確認します。
最近作業していたビューは、フォームの読み込み時にユーザーのロールに基づいてビューを切り替えるルールが作成されていない限り、プレビュー ウィンドウに表示されるビューです。
注
読み取り専用ビューでは、ボタンは使用できません。 SharePoint リスト フォームの表示ビューなど、読み取り専用ビューでのナビゲーションの場合は、図ボタンを使用し、リボンの [プロパティ] タブの [コントロール プロパティ] ダイアログから [読み取り専用ビューチェック画像を非表示にする] ボタンをオフにします。
フォーム読み込みルールを使用してビューを表示する
ユーザーがフォームを開くと、ビューは、そのユーザーまたはその他の条件に固有にすることができます。 たとえば、ユーザー ロールを含み、複数のビューを含むフォームを設計する場合、ユーザーに割り当てられているユーザー ロールに基づくビューを表示すると便利です。 具体的には、特定のユーザー ロールに割り当てられているユーザーがフォームに基づくフォームを開いたときに、ルールを使用してビューを表示できます。
ユーザー ロールは、InfoPath フィラー用に設計されたフォームでのみ使用できます。 Web 対応フォームのグループ メンバーシップに基づいてビューを切り替えるには、ユーザー プロファイル Web サービスの getUserMemberships メソッドを使用してユーザー メンバーシップを決定するフォーム読み込みルールを作成することを検討してください。
この手順では、フォームでユーザー ロールが定義されていることを前提としています。 フォームに少なくとも 1 つのユーザー ロールがない場合は、この手順を開始する前に、[ データ ] タブからユーザー ロールを追加します。
- [ データ ] タブの [ ルール ] グループで、[ フォームの読み込み] をクリックします。
- [ 新規] をクリックし、[ アクション] をクリックし、[ 詳細] テキスト ボックスにルールの名前を入力します。
- フォームにユーザー ロールに基づいてビューを読み込むには、[ 条件 ] セクションの下にあるリンクをクリックします。 最初の一覧で、[ ユーザーの現在のロール] をクリックし、ユーザーのロールを選択します。
フォームの読み込み方法に影響を与える条件に応じて、他のオプションを選択できます。
- [OK] をクリックします。
- [ 追加 ] ボタンをクリックし、[ ビューの切り替え] を選択します。
- [ ビュー ] の一覧で目的のビューをクリックし、[OK] をクリック します。