モバイル デバイスで使用するフォーム テンプレートをデザインする
適用先
Microsoft Office Forms Server 2007 や Microsoft Office SharePoint Server 2007 など、InfoPath Forms Servicesを実行しているサーバーにアクセスできる場合は、Microsoft Office InfoPath を使用して、モバイル デバイス ブラウザーで表示および入力できるフォーム テンプレートを設計できます。
この記事の内容
モバイル デバイス用のフォーム テンプレートの設計の概要
Office InfoPath 2007 をInfoPath Forms Servicesと共に使用することで、個人用デジタル アシスタント (PDA) またはその他のモバイル デバイスを使用して入力できるブラウザー互換のフォーム テンプレートを設計できます。
注
PDA、スマートフォン、HTML、cHTML、または xHTML を使用した Web ブラウザーをサポートする任意のデバイスなど、ほとんどのモバイル デバイス用のブラウザー互換フォーム テンプレートを作成できます。 ただし、InfoPath Forms Servicesでは、ワイヤレス アクション プロトコル (WAP) を使用するモバイル デバイス ブラウザーはサポートされていません。
ユーザーがモバイル デバイス ブラウザーでのみ入力できるように、ブラウザーと互換性のあるフォーム テンプレートを設計できます。 たとえば、倉庫が有効になっていて、会社が在庫を追跡するためにすべての倉庫従業員に PDA を提供 Wi-Fi 場合、このようなテンプレートを設計できます。
表示デバイスに関係なく、すべてのユーザーがフォーム テンプレートにアクセスできるようにする場合は、モバイル ユーザー専用の 1 つのビュー、デスクトップ ブラウザー用の 2 番目のビュー、コンピューターに InfoPath がインストールされているユーザーの 3 番目のビューを設計できます。 この手法を使用すると、フォーム入力シナリオごとに個別のフォームを作成するのではなく、さまざまなユーザー セットで入力できる 1 つのフォーム テンプレートを設計できます。
専用ビューの作成に関する詳細については、「参照」セクションのリンクを 参照してください 。
各モバイル デバイスは特定の Web ページを異なる方法で表示するため、フォームの正確な外観は、アクセスに使用されるデバイスによって異なります。 InfoPath でフォーム テンプレートを設計する場合は、特定のモバイル デバイスをターゲットにして、その特定のデバイスに合わせてデザインを最適化できます。
この記事では、モバイル対応フォーム テンプレートの設計、公開、テストに関するヒントと手順、モバイル フォーム テンプレートの制御と機能の制限事項について説明します。
モバイル デバイス ブラウザーでサポートされていないフォーム コントロールと機能
モバイル デバイスは、ブラウザーと互換性のあるフォーム テンプレートでサポートされているコントロールの多くをサポートしますが、すべてではありません。
注
InfoPath は、モバイル デバイス ブラウザーでサポートされていないフォーム コントロールやフォーム テンプレート内の機能について警告しません。
フォーム コントロールのサポート
次の表を使用して、InfoPath Forms Servicesが特定の InfoPath コントロールをサポートしているかどうかを判断できます。
モバイル デバイス ブラウザーでは HTML テーブル、CSS (カスケード スタイル シート)、およびその他の特定のブラウザー テクノロジがサポートされていないため、一部のコントロールはモバイル デバイス ブラウザーではデスクトップ ブラウザーとは異なる方法で表示されます。
さらに、モバイル デバイス ブラウザーでは、一部のコントロールが完全に無視されます。たとえば、添付ファイル コントロールです。
= フル サポート
= 部分サポート
= サポートなし
| InfoPath 2007 コントロール | デスクトップ ブラウザー | モバイル デバイス ブラウザー |
|---|---|---|
| テキスト ボックス |
|
|
| チェック ボックス |
|
|
| ボタン |
|
|
| 式ボックス |
|
|
| リスト ボックス |
|
|
| ドロップダウン リスト ボックス |
|
|
| 繰り返しセクション |
|
|
| ハイパーリンク型 |
|
|
| オプション ボタン 1 |
|
|
| 省略可能なセクション 2 |
|
|
| 繰り返し表 3 |
|
|
| 添付ファイル コントロール |
|
|
| 日付ピッカー 4 |
|
|
| リッチ テキスト ボックス |
|
|
| ActiveX コントロール |
|
|
| 箇条書きコントロール |
|
|
| 選択グループ |
|
|
| [選択] セクション |
|
|
| コンボ ボックス |
|
|
| 水平繰り返しテーブル |
|
|
| 水平領域 |
|
|
| インク画像コントロール |
|
|
| マスター/詳細コントロール |
|
|
| 複数選択リスト ボックス |
|
|
| 番号付きリスト コントロール |
|
|
| 画像コントロール |
|
|
| プレーン リスト コントロール |
|
|
| 繰り返し選択グループ |
|
|
| 再帰セクションの繰り返し |
|
|
| スクロール領域 |
|
|
| 垂直ラベル |
|
|
1代わりにドロップダウン リスト ボックスを使用して操作します。
2代わりに複数のビューを使用して考えます。
3繰り返しセクションを代わりに使用します。
4モバイル デバイス ブラウザーでは、データ検証を含むテキスト ボックスとして日付ピッカーが表示されます。
ビジネス ロジックのサポート
ビジネス ロジックをフォーム テンプレートに追加すると、データ入力エラーを防ぎ、ユーザーのフォーム内の特定のアクションを自動化できます。 特に、データ検証、条件付き書式、ルールを使用して、フォームに検証メッセージの表示、書式設定の変更、またはその他のタスクの実行を行うことができます。
次の表を使用して、特定のブラウザーが特定の種類のビジネス ロジックをサポートしているかどうかを判断できます。
= フル サポート
= 部分サポート
= サポートなし
| InfoPath 2007 機能 | デスクトップ ブラウザー | モバイル デバイス ブラウザー |
|---|---|---|
| 数式 1 |
|
|
| データの入力規則 |
|
|
| ルール |
|
|
| 条件付き書式 2 |
|
|
| ユーザー ロール |
|
|
1Except xdXDocument:get-Role、Position、Last 関数。
2Mobile デバイス ブラウザーでは、一部の条件付き書式機能がサポートされています。たとえば、フォームで定義した条件に応じてコントロールを非表示または表示できます。 ただし、条件付き書式を使用して、フォーム内の条件に基づいてコントロールの外観を変更することはできません。 たとえば、条件付き書式を使用してコントロール内のテキストの色を変更することはできません。
デスクトップおよびモバイル ブラウザーでサポートされる機能の詳細な一覧については、InfoPath Forms Servicesの Web ブラウザーの互換性に関するページを参照してください。
設計に関する一般的なアドバイス
ユーザーがモバイル デバイスで表示するフォームを設計する方法については、インターネットで多くのガイダンスを参照できます。 フォーム テンプレートを設計するときに考慮する必要があるその他のヒントを次に示します。
- ユーザーがモバイル デバイスでフォームに入力するときは、モバイル デバイス ツール バーの [更新 ] ボタンをクリックして、計算やその他の種類のビジネス ロジックをトリガーする必要があります。 ボタンをクリックするたびに、モバイル デバイスは、ポストバックと呼ばれるプロセスであるサーバーにデータを強制的に送信します。 ユーザーが簡単になるように、ポストバックを自動化するボタンをフォーム テンプレートに追加することを検討してください。 たとえば、フォームに、フォームの他の 3 つのフィールドの数値を合計する [ 合計 ] フィールドが含まれているとします。 その場合は、[合計] フィールドの横に [合計の表示] ボタンを追加して、ユーザーがフォーム内のフィールドを忘れずに更新できるようにすることができます。
- すべてのコントロールを 1 つのビューに挿入するのではなく、特に条件付きコントロールを表示する場合は、複数のビューを持つデザインを検討してください。 フォーム上の複数のビューを使用すると、1 つのビューが大きすぎたり複雑になったり、小さな画面で使いにくくなったりするのを防ぐことができます。
- フォームに複数のビューがある場合は、ユーザーがビュー間を移動するのに役立つボタンを追加します。
- 可能な限りリスト ボックスを使用します。モバイル デバイスで入力することは困難です。
モバイル デバイスで使用するフォーム テンプレートをデザインする
一部の例外を除き、モバイル デバイス用のフォーム テンプレートの設計と発行は、デスクトップ コンピューター上のブラウザー用のフォーム テンプレートの設計と公開と同じです。 次のセクションでは、モバイル フォーム テンプレートを設計、展開、テストする方法について説明します。
- 手順 1: フォーム テンプレートの互換性設定を指定する
- 手順 2: フォーム テンプレートのモバイル デバイス設定を指定する
- 手順 3: モバイル フォームを格納するドキュメント ライブラリを作成する
- 手順 4: フォーム テンプレートの申請オプションを指定する
- 手順 5: フォーム テンプレートをサーバーに発行する
- 手順 6: フォーム テンプレートをドキュメント ライブラリに関連付ける
- 手順 7: フォーム テンプレートをテストする
手順 1: フォーム テンプレートの互換性設定を指定する
最初の手順は、ブラウザー互換のフォーム テンプレートを設計することを指定することです。
[ ファイル ] メニューの [ フォーム テンプレートのデザイン] をクリックします。
[フォーム テンプレートのデザイン] ダイアログ ボックスの [新しいデザイン] で、[フォーム テンプレート] をクリックします。
[ ベース] ギャラリーで 、次のいずれかの操作を行います。
- フォーム テンプレートを設計するときにデータ ソースを定義するには、[ 空白] をクリックします。
- Web サービスをフォーム テンプレートのデータ ソースとして使用するには、[ Web サービス] をクリックします。 このオプションを使用すると、Web サービスにデータを照会または送信できます。
- フォーム テンプレートのデータ ソースとして Microsoft SQL Server データベースを使用するには、[データベース] をクリックします。 このオプションを使用すると、SQL Server データベースからデータを照会できます。
- データ ソースとして XML ドキュメント (.xml) ファイルまたは XML スキーマ (.xsd) ファイルを使用するには、[ XML] または [スキーマ] をクリックします。
- データ ソースの基礎としてデータ接続ファイルの情報を使用するには、[ 接続ライブラリ] をクリックします。
フォーム テンプレートをInfoPath Forms Services実行しているサーバーと互換性を持たせるようにするには、[チェックのみブラウザーと互換性のある機能を有効にする] ボックスを選択し、[OK] をクリックします。
InfoPath に新しいフォーム テンプレートが開き、ステータス バーに [互換性: InfoPath] と InfoPath Forms Servicesというテキストが表示されます。 テキストの目的は、InfoPath または Web ブラウザーでアクティブなフォーム テンプレートを表示できることを通知することです。コントロール、データ検証、またはその他の機能をフォーム テンプレートに追加します。 フォーム テンプレートを設計するときは、モバイル ブラウザーでは、デスクトップ ブラウザーでサポートされているコントロールの一部がサポートされていないことに注意してください。
注
[デザイン チェッカー] 作業ウィンドウでは、フォーム テンプレート内のコントロールまたは機能がモバイル デバイス ブラウザーでサポートされていないことを警告しません。 コントロールまたは機能のサポートをダブルチェックするには、この記事の後半の「モバイル デバイス ブラウザーでサポートされていないフォーム コントロールと機能」セクションを参照してください。
手順 2: フォーム テンプレートのモバイル デバイス設定を指定する
ブラウザー互換のフォーム テンプレートを作成したら、フォーム テンプレートのツール バーに [更新 ] ボタンを追加し、[ フォーム オプション] ダイアログ ボックスで特定のオプションを選択してモバイル デバイス ブラウザーのフォーム テンプレートを有効にする必要があります。
- [ ツール ] メニューの [ フォーム オプション] をクリックします。
- [ フォーム オプション] ダイアログ ボックスで、[ ブラウザー ] カテゴリをクリックします。
- モバイル デバイスのツール バーに [更新] ボタンを追加するには、[ツール バーに次のコマンドを含める] の下の [ツール バー] セクションで、[チェック更新] ボックスを選択します。
- [モバイル デバイス] で、[モバイル デバイスでのレンダリングを有効にする] チェック ボックスを選択します。
- [ OK] を クリックしてフォーム テンプレートに戻ります。
- フォーム テンプレートを任意の場所に保存します。
手順 3: モバイル フォームを格納するドキュメント ライブラリを作成する
次の 2 つの手順では、InfoPath Forms Servicesを実行しているサーバー上のライブラリにフォーム データを送信する方法について説明します。
ライブラリを作成するには、次の手順に従います。
- ブラウザーを使用して、ユーザー フォームを保存する SharePoint サイトを開きます。
- [すべてのサイト コンテンツの表示] をクリックし、[すべてのサイト コンテンツ] ページで [作成] をクリックします。
ほとんどの場合、[ サイトの操作
メニューも使用できます。 - [ ライブラリ] で、[ ドキュメント ライブラリ] をクリックします。
- [ 名前 ] ボックスに、新しいライブラリの名前を入力します。
名前はライブラリ ページの上部に表示され、ライブラリ ページのアドレスの一部になり、ユーザーがライブラリを見つけて開くのに役立つナビゲーション要素に表示されます。 - [ ドキュメント テンプレート ] セクションの [ ドキュメント テンプレート ] の一覧で、[ なし] をクリックし、[ 作成] をクリックします。
手順 4: フォーム テンプレートの申請オプションを指定する
次に、手順 3 で作成したドキュメント ライブラリにフォーム データを送信できるように、フォーム テンプレートを構成する必要があります。 さらに、ライブラリに送信される各フォームに一意のファイル名を割り当てる数式を作成します。
InfoPath で、手順 2 で作成したブラウザー互換フォーム テンプレートを開きます。
[ ツール ] メニューの [ 送信オプション] をクリックします。
[送信オプション] ダイアログ ボックスで、[ユーザーにこのフォームの送信を許可する] チェック ボックスを選択します。
[ フォーム データを 1 つの宛先に送信する ] ボックスの一覧で、[ SharePoint ドキュメント ライブラリ] をクリックします。
新しいデータ接続を追加するには、[ 追加] をクリックします。 [ データ接続ウィザード ] ダイアログ ボックスが開きます。
[ドキュメント ライブラリ] テキスト ボックスに「http://<ServerName>/<LibraryName>/Forms/AllItems.aspx」と入力します。ここで、<ServerName> はInfoPath Forms Servicesを実行している SharePoint サーバーの名前、<LibraryName> はライブラリの名前です。
注
ドキュメント ライブラリがルート サイトにない場合は、URL にサイト名を挿入する必要があります。 たとえば、 http://<ServerName>/<SiteName>/<LibraryName>/Forms/AllItems.aspx
[ファイル名] テキスト ボックスの右側にあるボタン
をクリックします。[ 数式の挿入 ] ダイアログ ボックスで、[ 関数の挿入] をクリックします。 [ 関数の挿入 ] ダイアログ ボックスが開きます。
[ テキスト ] カテゴリをクリックし、 concat 関数をクリックし、[OK] をクリック します。
[ 数式の挿入 ] ダイアログ ボックスで、[数式 ] ボックスの 最初に出現するテキスト "ダブルクリックしてフィールドを挿入する" をクリックして強調表示し、「 form」と入力します。 単一引用符を含めます。
[ 数式 ] ボックスで 2 番目に出現するテキスト "フィールドを挿入するにはダブルクリック" をクリックして強調表示し、[関数の 挿入] をクリックします。
[日付と時刻] カテゴリをクリックし、今すぐ関数をクリックし、[OK] をクリックします。
now 関数を使用すると、現在の日付と時刻をフォーム名に自動的に追加できます。[数式] ボックスの残りの "ダブルクリックしてフィールドを挿入する" 項目を削除します。
次の図に示すように、数式ボックスに数式 concat('form', now()) が含まれるように、余分なスペースとコンマを削除します。
ユーザーがフォームをライブラリに送信すると、この数式に従ってフォームの名前が付けられます。 送信された各フォームには、一意の名前が付けられます。[データ接続ウィザード] ダイアログ ボックスに戻すには、[OK] をクリックします。
[次へ] をクリックして、[完了] をクリックします。
フォーム テンプレートに戻すには、[OK] をクリック します。
[ ツール ] メニューの [ フォーム オプション] をクリックし、[ ブラウザー ] カテゴリをクリックします。
[ツール バー] で、[チェック送信] ボックスを選択し、[OK] をクリックします。
変更内容を保存します。
手順 5: フォーム テンプレートをサーバーに発行する
モバイル デバイスで使用できるフォーム テンプレートを発行するには、InfoPath Forms Servicesを実行しているサーバーの管理者と協力する必要があります。 そのパブリケーション プロセスは、次の 3 つの異なる手順に分けることができます。
- フォーム デザイナーは、.xsn ファイルを共有の場所に発行する必要があります。 .xsn ファイルには、フォーム テンプレートが最終的に表示されるサーバーに関する情報が含まれています。
- ファーム管理者は、フォーム テンプレートをサーバーにアップロードし、必要に応じてフォーム テンプレートがエラーから解放されていることを確認する必要があります。
- ファーム管理者またはサイト コレクション管理者は、フォーム テンプレートをサーバー上のサイト コレクションに対してアクティブ化する必要があります。これにより、モバイル デバイスを使用しているユーザーがフォーム テンプレートを使用できるようになります。
管理者の承認のためにフォーム テンプレートを準備する
モバイル デバイス用に設計するすべてのフォーム テンプレートの場合と同様に、このフォーム テンプレートには管理者の承認が必要です。 次の手順では、フォーム テンプレートをコンピューターまたはネットワーク上の共有の場所に保存することで、管理者の承認のためにフォーム テンプレートを準備するプロセスについて説明します。 サーバーのファーム管理者は、フォーム テンプレートを実際にデプロイする必要があります。これには、サーバー上でフォーム テンプレートをアップロードしてアクティブ化する必要があります。
- [ ファイル ] メニューの [ 発行] をクリックします。
- 発行ウィザードで、InfoPath Forms Servicesの有無にかかわらず [SharePoint サーバーへ] をクリックし、[次へ] をクリックしてウィザードの次のページを開きます。
- [SharePoint または InfoPath Forms Services サイトの場所を入力します] ボックスに、フォームが格納される SharePoint サイトの場所を入力し、[次へ] をクリックしてウィザードの次のページを開きます。
- 設定を確認し、フォーム テンプレートにはministrator の承認が必要であることに注意してください。
[ 次へ ] をクリックして、ウィザードの次のページを開きます。 - [ フォーム テンプレートの場所とファイル名を指定する ] ボックスで、[ 参照] をクリックします。
- [ 参照 ] ダイアログ ボックスで、ファーム管理者がアクセスできる場所を参照し、[ ファイル名 ] ボックスにフォーム テンプレートの名前を入力し、[ 保存] をクリックします。
- [ 次へ ] をクリックして、ウィザードの次のページを開きます。
- フォーム テンプレート内の特定のフィールドをドキュメント ライブラリの列として表示する場合は、[ 追加 ] ボタンをクリックし、目的のフィールドを選択し、[ OK] をクリックします。 それ以外の場合は、[ 次へ ] をクリックしてウィザードの次のページを開きます。
- 情報が正しいことを確認し、[ 発行 ] をクリックしてフォーム テンプレート (.xsn) ファイルを指定した場所に保存します。
- [閉じる] をクリックします。
- この時点で、ファーム管理者にフォーム テンプレートをサーバーにアップロードし、サイト コレクションにアクティブ化するように依頼する必要があります。
手順 6: フォーム テンプレートをドキュメント ライブラリに関連付ける
ファーム管理者がフォーム テンプレートをサーバーにアップロードし、サイト コレクションにアクティブ化した後、手順 3 で作成したライブラリにフォーム テンプレートを関連付ける必要があります。 ユーザーがこのライブラリに新しいファイルを作成すると、作成したフォーム テンプレートに基づくフォームがモバイル デバイス ブラウザーで開きます。
ブラウザーを使用して、手順 3 で作成したドキュメント ライブラリを開きます。
ヒント
パスは http://<SeverName>/sites/team/<LibraryName>/Forms/AllItems.aspx のようになります。ここで、 <ServerName> は SharePoint サイトの名前、 <LibraryName は> フォームが格納されるライブラリの名前です。
ライブラリの [設定] メニュー
で、[ ドキュメント ライブラリの設定] をクリックします。
[全般設定] で [詳細設定] をクリックします。
[ コンテンツ タイプ] セクションの [ コンテンツ タイプの管理を許可する] で、[ はい] をクリックします。
[ OK] を クリックして、[ ライブラリ名のカスタマイズ ] ページに戻ります。
[コンテンツ タイプ] で、[既存のサイト コンテンツ タイプから追加] をクリックします。
[ コンテンツ タイプの選択] の横にある [ 使用可能なサイト コンテンツ タイプ ] リストでフォーム テンプレートの名前をクリックします。
Cick Add。
[ OK] を クリックして、[ ライブラリ名のカスタマイズ ] ページに戻ります。
[ コンテンツ タイプ] セクションで 、[ ドキュメント] をクリックします。
[ 設定] の [ このコンテンツ タイプの削除] をクリックし、[OK] をクリック します。
ドキュメント ライブラリに戻り、[ 新規 ] ボタンをクリックして、適切なフォームが開いていることを確認します。
注
既定では、フォームは InfoPath で開きます。 ブラウザーでフォームを強制的に開く場合は、ドキュメント ライブラリの [詳細設定] ページに戻ります。 [ブラウザーが有効なドキュメント] の横にある [Web ページとして表示] をクリックし、[OK] をクリックします。
手順 7: フォーム テンプレートをテストする
InfoPath Forms Servicesを実行しているサーバーにフォーム テンプレートが発行されたら、正しく動作していることを確認することをお勧めします。 ユーザーと同じ動作条件と照明条件で、対象となるモバイル デバイスを使用してフォームをテストする必要があります。
実際の物理デバイスがない場合は、デバイス エミュレーターを使用して、ほとんどのモバイル デバイスの動作を模倣できます。 エミュレーターは、さまざまなデバイスやオペレーティング システムでインターネット上で利用できます。
デバイス エミュレーターでのモバイル フォームのテストの詳細については、「 モバイル フォーム テンプレートの作成、テスト、デバッグ」を参照してください。