[メイン - 対話型エクスペリエンス] フォームとそのコンポーネントの使用
公開日: 2017年2月
対象: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online
対話型フォームの新しいユーザー エクスペリエンスでは、ユーザーのクリック回数を減らし、関連レコードの作業中にコンテキストを維持するのに役立ちます。 [カスタマイズ] 領域のソリューション エクスプローラーにその他のフォームを一覧で表示できます。 対話型フォームのフォームの種類は、メイン - 対話型エクスペリエンス です。
このトピックでは、[メイン - 対話型エクスペリエンス] フォームの編集と、そのフォームのさまざまな要素の追加または変更の方法について説明します。
このトピックの内容
フォーム エディターを開く
対話型サービス ハブで使用するための変更の公開
フォーム エディターのユーザー インターフェイス
フォームのプロパティ
表示オプション
タブのプロパティ
セクションのプロパティ
共通のフィールドのプロパティ
特殊なフィールドのプロパティ
サブグリッドのプロパティ
簡易表示コントロールのプロパティ
Web リソースのプロパティ
IFRAME のプロパティ
ナビゲーションの編集
イベント ハンドラーを構成する
フォーム エディターを開く
フォームを編集する場合、または要素を追加または変更する場合は、フォーム エディターを使用します。
フォームを編集するプロセスで新しいソリューション コンポーネントを作成する場合、コンポーネントの名前は既定のソリューションのソリューション発行者のカスタマイズ接頭辞を使用し、これらのコンポーネントは既定のソリューションだけに追加されます。 新しいソリューション コンポーネントを特定のアンマネージド ソリューションに含ませる場合、そのアンマネージド ソリューションを使用して、フォーム エディターを開きます。
フォーム エディターに既定のソリューションを使ってアクセスする
[設定] > [カスタマイズ] に移動します。
[システムのカスタマイズ] をクリックして、既定のソリューションを開きます。
[コンポーネント] で [エンティティ] を展開してから、目的のエンティティを展開して [フォーム] を選択します。
フォームの一覧で、種類が [メイン - 対話型エクスペリエンス] のフォームを開きます。
アンマネージド ソリューションのフォーム エディターにアクセスする
[設定] > [カスタマイズ] に移動します。
[ソリューション] をクリックします。
使用するアンマネージド ソリューションをダブルクリックします。
編集するフォームを含むエンティティを探します。 エンティティがない場合は、追加する必要があります。
エンティティをアンマネージド ソリューションに追加する
[エンティティ] ノードを選択し、一覧の上部にあるツール バーの [既存の追加] をクリックします。
[ソリューション コンポーネントの選択] ダイアログ ボックスで、[コンポーネントの種類] セレクターを [エンティティ] に設定し、追加するエンティティを選択して、[OK] をクリックします。
[不足している必須コンポーネント] ダイアログ ボックスが表示される場合は、別の組織にアンマネージド ソリューションをエクスポートすることを目的としていない場合、[いいえ、必須コンポーネントを含めません] をクリックできます。 このとき不足している必須コンポーネントを含めない場合でも、後で追加できます。 このソリューションを後でエクスポートすると、再び通知が表示されます。
ソリューション エクスプローラーで、編集するフォームを含むエンティティを展開し、[フォーム] を選択します。
フォームの一覧で、種類が [メイン - 対話型エクスペリエンス] のフォームを開きます。
対話型サービス ハブで使用するための変更の公開
ユーザー インターフェイスを変更する特定のカスタマイズは、アプリケーションで使用する前に公開する必要があります。 カスタマイズを公開するには、ソリューション エクスプローラーで、[すべてのカスタマイズの公開] をクリックします。
Microsoft Dynamics CRM 2016 更新プログラム 0.1 またはそれ以降を使用すると、カスタマイズの公開後に**[クライアントのカスタマイズの準備]** をクリックすることでその最初のユーザーのパフォーマンスを向上させることができます。 これにより、Dynamics 365 は、最初のユーザーが対話型サービス ハブを起動するのを待つのではなく、直ちにメタデータ パッケージを準備します。詳細:カスタマイズの概念
重要
クライアントのカスタマイズの準備には時間がかかることがあります。 ブラウザーのページが反応しなくなっているというメッセージが表示された場合は、中止しないで、ページが反応する状態になるまで待機します。
フォーム エディターのユーザー インターフェイス
フォーム エディターは、[ホーム] と [挿入] の 2 つのタブにコマンドを表示します。詳細:ホーム タブ、タブの挿入
フォーム エディターは ナビゲーション、本文と エクスプローラー の3 種類の領域に分類されます。
ナビゲーション
左側に設定されたナビゲーション領域を使用して、関連エンティティへのアクセスを制御したり、フォームのメイン ウィンドウに表示する URL へのリンクを追加したりします。 ナビゲーションを編集するには、最初に [ホーム] タブの [選択] グループの [ナビゲーション] コマンドを選択する必要があります。対話型フォームは、ナビゲーション バーを使用してナビゲーション オプションを提供しますが、どのナビゲーション オプションを使用できるかを制御するのにナビゲーション領域で同じデータを使用します。詳細:ナビゲーションの編集
本文
中央に設定された本文領域を使用し、フォームのレイアウトを制御します。 フォーム要素を選択しドラッグして、位置を決めることができます。 要素をダブルクリックすると、要素のプロパティが開きます。既定で [サポート案件]、[取引先担当者]、および [取引先企業] の対話型フォームでは、[概要] タブの下にある最初のセクションに、種類が [簡易表示] である取引先企業または取引先担当者のカード フォームが表示されます。 対話型エクスペリエンスのために有効にされたカスタム エンティティの場合、このセクションは既定で使用できません。 そこには新しいセクションと簡易入力フォームを挿入できます。 カード フォームには、最大 5 つのフィールドが表示されます。 簡易表示フォームに含まれている場合でも、フィールド以外のその他のコントロールは青いタイルに表示できません。
注意
(次の図のように) カードの形式を保持するため、簡易表示フォームはフォーム上のほかのセクションに移動しないことをお勧めします。
フィールドを追加するには、[フィールド エクスプローラー] から選択して、セクションにドラッグします。
フィールドではない要素を追加するには、配置する場所を選択し、[挿入] タブから適切なコマンドを使用して追加します。
要素を削除するには、削除する要素を選択して、[ホーム] タブの [編集] グループで [削除] コマンドを使用します。
フォームの [ヘッダー] または [フッター] を編集するには、最初に [ホーム] タブの [選択] グループで対応するコマンドを選択する必要があります。 ヘッダーとフッター内のフィールドは、実行時に顧客カード (青色のタイル) の下に表示されます。
エクスプローラー
右側に設定されたエクスプローラー領域の内容は、コンテキストによって異なります。[ホーム] タブの [選択] グループの [本文]、[ヘッダー] または [フッター] を選択すると、[フィールド エクスプローラー] が表示されます。[フィールド エクスプローラー] を使用して、表示するフィールドをフォームのセクション、またはヘッダーかフッター内にドラッグします。 フォームに同じフィールドを何回も含めることができます。 ショートカットとして [新しいフィールド] ボタンを使用して、新しいフィールドを作成します。
[ホーム] タブの [選択] グループの [ナビゲーション] を選択すると、[関連付けエクスプローラー] が表示されます。 ナビゲーション領域内のグループの 1 つに関係のいずれかをドラッグします。 同じ関係を 2 度追加することはできません。 構成方法に基づいて関係が使用できます。 関係を表示しないように構成する場合、[関連付けエクスプローラー] に表示されません。 関連付けの既定の表示オプションの構成方法については、「主エンティティのナビゲーション ウィンドウ項目」を参照してください。
ショートカットとして [新しい 1:N] と [新しい N:N:N] ボタンを使用して、新しい関連付けを追加できます。
ホーム タブ
[ホーム] タブでは、次の表示されたコマンドが表示されます。
グループ |
コマンド |
内容 |
---|---|---|
上書き保存 |
上書き保存 (Ctrl+S) |
フォームを保存します。 |
名前を付けて保存 |
別の名前でこのフォームのコピーを作成します。 |
|
保存して閉じる |
フォームを保存してフォーム エディターを閉じます。 |
|
公開 |
フォームを公開します。詳細:カスタマイズの公開 |
|
編集 |
プロパティの変更 |
本体で選択した項目のプロパティを変更します。 選択した項目に応じて、次のセクションを参照してください。
|
削除 |
選択したアイテムを削除します。 |
|
元に戻す(Ctrl+Z) |
直前の操作を元に戻します。 |
|
やり直す(Ctrl+Y) |
直前の操作をやり直します。 |
|
ここで、 |
本文 |
フォームの本文を編集します。 |
[ヘッダー] |
フォーム ヘッダーを編集します。 |
|
[フッター] |
フォームのフッターを編集します。 |
|
ナビゲーション |
フォーム ナビゲーションを編集します。 詳細:ナビゲーションの編集 |
|
フォーム |
業務ルール |
業務ルール エクスプローラーで新しい業務ルールを表示、編集、または作成します。 注意 対話型フォームでは、[エンティティ]と [すべてのフォーム] のスコープのみがサポートされています。 |
フォームのプロパティ |
詳細:フォームのプロパティ |
|
セキュリティ ロールの有効化 |
これを使用して、どのセキュリティ ロールがフォームにアクセスできるかを設定します。詳細:フォームへのアクセスの制御 重要 新しいフォームを作成する場合、システム管理者およびシステム カスタマイザーのセキュリティ ロールだけが、フォームにアクセスできます。 組織のユーザーが使用できるように、他のセキュリティ ロールへアクセスを許可する必要があります。 |
|
依存関係を表示 |
どのソリューション コンポーネントがこのフォームに依存し、どのソリューション コンポーネントがこのフォームで必要かを参照します。詳細:ソリューションの依存関係 |
|
管理プロパティ |
唯一の管理プロパティは、[カスタマイズ可能] です。 これを false に設定すると、フォームをソリューションに含ませ、管理ソリューションとしてそのソリューションをエクスポートし、別の組織にその管理ソリューションをインポートした後に、そのフォームはカスタマイズできなくなります。詳細:マネージド プロパティ |
タブの挿入
[挿入] タブでは、次の表のコマンドが表示されます。
グループ |
コマンド |
内容 |
---|---|---|
セクション |
セクションを選択したタブに追加します。 1 列から 4 列のセクションを含めることができます。 対話型フォームで参照パネルを挿入することもできます。 参照パネルも、セクションとして、[メイン - 対話型エクスペリエンス] フォームに追加されます。 既定で参照パネル セクションは、[サポート案件]、[取引先企業]、[取引先担当者]、およびユーザー定義エンティティのフォームに追加されます。 詳細:セクションのプロパティ |
|
3 タブ |
3 列 |
等幅の 3 列構成のタブを挿入します。 詳細:タブのプロパティ |
[3 列] |
中央の列幅が広い 3 列構成のタブを挿入します。 |
|
2 タブ |
[2 列] |
右側の列幅が広い 2 列構成のタブを挿入します。 |
[2 列] |
左側の列幅が広い 2 列構成のタブを挿入します。 |
|
[2 列] |
等幅の 2 列構成のタブを挿入します。 |
|
1 タブ |
[1 列] |
1 列構成のタブを挿入します。 |
コントロール |
[サブグリッド] |
サブグリッドを書式設定して、フォームに挿入します。 詳細:サブグリッドのプロパティ |
スペーサー |
空の領域を挿入します。 |
|
簡易表示フォーム |
簡易表示フォームを挿入します。 詳細:簡易表示コントロールのプロパティ |
|
Web リソース |
1 つのページ内の他の場所から埋め込まれたコンテンツに Web リソースを挿入します。 詳細:簡易表示コントロールのプロパティ |
|
対話のウォール |
フォームに対話のウォール コントロール (タイムライン) を挿入します。 このコントロールは、フォーム上のエンティティに関連する活動のタイムラインを表示します。 詳細:対話のウォール |
|
サポート情報の検索 |
サポート情報記事を検索するためにユーザーが使用できる検索コントロールを挿入します。詳細:Microsoft Dynamics 365 フォームにサポート情報の検索コントロールを追加 |
|
注意
次のコンポーネントは、対話型フォームでサポートされていません。
-
Bing マップ
-
Yammer
-
アクティビティ フィード
フォームのプロパティ
次の表では、フォームのプロパティを示します。
タブ |
プロパティ |
内容 |
---|---|---|
イベント |
フォーム ライブラリ |
どの JavaScript Web リソースがフォームで利用できるか、また読み込まれる順序を管理します。 |
イベント ハンドラー |
フォーム ライブラリのどの JavaScript 関数が OnLoad および OnSave フォーム イベントに実行するか、そしてそれが実行する順番を設定します。 |
|
表示方法 |
フォーム名 |
ユーザーにとって意味がある名前を入力します。 この名前は、ユーザーがフォームを使用するときに表示されます。 エンティティ用に構成されている複数のフォームを使用する場合、利用できるフォームを区別するためにこの名前を使用します。 |
内容 |
このフォームが他メイン フォームとは異なる点を示す説明を入力します。 この説明は、ソリューション エクスプローラーのエンティティのフォームの一覧にのみ表示されます。 |
|
パラメーター |
パラメーター |
各フォームは、URL を使用するコードで開くことができます。URL には、URL に付けるクエリ文字列を使用してフォームに渡すことができるデータが含まれている場合があります。 クエリ文字列は次の例のようになります: 安全対策として、フォームは未知のクエリ文字列パラメーターを拒否します。 このパラメーターの一覧を使用して、このフォームに受け入れられるパラメーターを指定します。そのパラメーターは、クエリ文字列を使用してフォームにデータを渡すコードをサポートします。 データ名と種類は確認され、無効なクエリ文字列パラメーターが渡された場合、フォームは開きません。 詳細については、Microsoft Dynamics 365 SDKの「URL を使用してフォーム、ビュー、およびダイアログを開く」トピックを参照してください。 |
非イベント依存関係 |
依存フィールド |
各イベント ハンドラーには、[依存フィールド] のようなプロパティがあり、スクリプトで必要なフィールドはなんでも登録できるようになります。 依存フィールドは削除できません。 スクリプトはフォームで動作しますが、イベント ハンドラーでは構成されません。 コマンド バーから開始されるスクリプトには、依存フィールドを登録する場所はありません。 このフォーム プロパティは、それらのスクリプトの依存フィールドを登録する場所を提供します。 |
表示オプション
複数の種類のフォーム要素には、既定で、表示するか、非表示にするかのオプションがあります。 タブ、セクション、およびフィールドはすべて、このオプションを提供します。 フォーム スクリプトまたは業務ルールを使用して、それらの要素の表示を制御し、フォームの条件に適合したユーザー インターフェイスを提供する動的なフォームを作成できます。
注意
フォーム要素を非表示にすることは、セキュリティ上、推奨される方法ではありません。 要素を非表示にした場合、ユーザーがフォームの要素およびデータを見ることのできる複数の方法があります。
オプションの表示を制御するためにスクリプトに依存するフォームをデザインするよりも、業務プロセス フロー、ダイアログ、または別のフォームに切換えたほうが、要件を満たすのに適しているかどうかを考慮します。 それでもスクリプトを使用する場合、非表示になる要素は既定で非表示になることを確認してください。 ロジックが要求する場合に、スクリプトを使用してその要素を表示します。 こうすると、スクリプトをサポートしていない表示方法で、表示されなくなります。
タブのプロパティ
フォームの本文で、タブによりフィールドを整理する方法が提供されます。 作成する各タブは、対話型サービス ハブでエンティティ フォームの上部に水平方向に表示されます。 実行時には、追加のタブはポップアップとして開きます。
タブには、表示可能なラベルがあります。 ラベルが表示されている場合は、ラベルを選択して、タブを展開したり閉じたりして、コンテンツを表示または非表示にすることができます。
タブには 3 個まで列を含めることができ、各列の幅は全体の幅の割合で設定できます。 新しいタブを作成すると、各列はセクションで事前入力されています。
次の表は、フォームのタブに設定できるプロパティを示します。
タブ |
プロパティ |
説明 |
---|---|---|
表示方法 |
名前 |
必須: スクリプト内でタブが参照されたとき使用される一意の名前。 名前には、英数字とアンダースコアのみを使用できます。 |
ラベル |
必須: ユーザーに表示されるタブのローカライズ可能なラベル。 |
|
表示 |
実行時にタブを既定で表示するかどうかを指定します。 |
|
形式 |
レイアウト |
タブには最大 3 つの列があります。 これらのオプションを使用して、タブの数とそのタブが占める幅全体の割合を定義します。 |
セクションのプロパティ
セクションは、タブ列で使用可能なスペースを占めます。 セクションには、表示可能なラベルがあります。
セクションには 4 個まで列を含めることができ、セクションでフィールドのラベルを表示する方法を設定するオプションが含まれます。
"参照パネル" と呼ばれる新しい種類のセクションを追加することもできます。 参照パネルは、1 つの列セクションです。 サブグリッド、簡易表示コントロール、またはサポート情報検索コントロールを参照パネル セクションに挿入することができます。 参照パネルで追加した各コントロールは、実行時に参照パネル内で垂直タブとして表示されます。 参照パネル セクション内にあるさまざまなコントロールをドラッグ アンド ドロップできます。 実行時の既定のタブは、参照パネルに追加される最初のコントロールです。 その他のタブは、フォーム エディターに追加された順序で表示されます。 タブを削除するには、キーボードの Del キーを使用します。
参照パネルを挿入するときは、既定ではタブ内の最後のセクションとして追加されます。 参照パネルはフォームごとに 1 つだけ追加することができます。
重要
[サポート案件]、[取引先企業]、[取引先担当者] という標準のフォームでは、既定で参照パネル セクションがロックされています。 削除または変更するには、ロックを解除する必要があります。
ヘッダーとフッターはセクションと似てますが、削除することはできません。 何も含まれていない場合、表示されません。
タブ |
プロパティ |
内容 |
---|---|---|
表示方法 |
名前 |
必須: スクリプト内でセクションが参照されたとき使用される一意の名前。 名前には、英数字とアンダースコアのみを使用できます。 |
ラベル |
必須: ユーザーに表示されるセクションのローカライズ可能なラベル。 |
|
このセクションのラベルをフォーム上に表示 |
セクションは、セクション内のフィールドの書式を制御するのにラベルなしでしばしば使用されます。 |
|
表示 |
セクションの表示は任意で、スクリプトを使用して管理します。詳細:表示オプション |
|
フォームでセクションをロックする |
これは通常、セクションが誤って削除されることを防止したり、ユーザーが内容を削除することを防ぎます。 セクションを削除すると、セクションを削除するだけでなく、その中のフィールドも削除します。 このセクションを削除する場合、削除する前にこの設定を変更する必要があります。 |
|
形式 |
レイアウトの高さ |
行の数でレイアウトの高さを設定します。 |
対話のウォール
対話のウォール (またはタイムライン) には、特定のエンティティに関連する活動が表示されます。
タスク、予定、電話、電子メール、ソーシャル活動、ユーザー定義活動という種類の活動がサポートされます。
対話のウォールには、メモとシステム投稿も表示されます。 ここには、表示しているエンティティが [関連] フィールドに設定された活動が表示されます。 メモの場合、[関連] フィールドはユーザーに表示されません。対話のウォールから作成するときに暗黙的に設定されます。
対話のウォールに表示される各活動は、活動のコマンド バーで使用可能なものと同じクイック アクションがあります。
注意
対話のウォールで を使用して新しいユーザー定義活動を作成することはできません。
共通のフィールドのプロパティ
フィールドは、ユーザーがエンティティ レコードのデータを表示または編集するのに使用するコントロールを表示します。 フィールドは、セクションに最大 4 つの列を占めるように設定することができます。
次の表に、すべてのフィールドにあるプロパティを示します。 フィールドのある種類には、特別なプロパティがあります。 これらについては、特殊なフィールドのプロパティで詳しく説明されています。
タブ |
プロパティ |
説明 |
---|---|---|
表示方法 |
ラベル |
必須: 既定では、ラベルは、フィールドの表示名と一致しています。 別ラベルをここに入力することによって、そのフォームの名前を上書きできます。 |
[フォームでラベルを表示する] |
ラベルを全く表示しないようにすることもできます。 |
|
フィールドが読み取り専用 |
フィールドを編集できないように指定できます。 フォーム スクリプトを使用して、このオプションを変更し、スクリプトで評価された条件に基づいて編集を有効または無効にできます。 |
|
フォーム上でこのフィールドをロックする |
これにより、フィールドがフォームから誤って削除されることがありません。 また、これにより、フィールドが削除されても、イベント ハンドラーなどのフィールドに適用した構成が解除されないようにします。 このフィールドを削除するには、カスタマイザーがこの設定を最初に解除する必要があります。 |
|
既定で表示する |
フィールドの表示は任意で、スクリプトを使用して管理します。詳細:表示オプション |
|
形式 |
コントロールが使用する列数を指定してください |
フィールドを含むセクションに複数の列があるとき、フィールドがセクションにある列の数まで占めるように設定できます。 |
詳細 |
[表示名]、[名前] と [説明] |
これらの読み取り専用のフィールドは、参照用です。 編集する場合、[編集] ボタンをクリックすると、フィールド定義へ簡単にアクセスできます。 フォームのフィールドの各インスタンスには名前プロパティがあり、フォーム スクリプトで参照できますが、この名前はアプリケーションによって管理されます。 フィールドの最初のインスタンスは、作成時に指定したフィールドの名前です。詳細:フィールドの作成および編集 フィールドがフォームに含まれるたびに、1 から始まる数が名前に追加されます。 したがって、フィールド名が「new_cost」の場合、フォームのフィールドの各インスタンスに対して、最初のインスタンスは「new_cost」となり、2 番目は「new_cost1」となります。 注意 フィールドの [説明] 値は、ユーザーがカーソルを置くと、フィールドのツールヒントのテキストを提供します。 |
イベント |
[フォーム ライブラリ] |
フィールドの OnChange イベント ハンドラーで使用される JavaScript Web リソースを指定します。 SDK のフォーム イベント参照: フィールドの OnChange イベント を参照してください。 |
|
[イベント ハンドラー] |
フィールドの OnChange イベントに要求されるフォーム ライブラリの関数を構成します。詳細:イベント ハンドラーを構成する |
業務ルール |
業務ルール |
このフィールドを参照する業務ルールを表示および管理します。詳細:業務ルールの作成および編集 |
特殊なフィールドのプロパティ
すべてのフィールドには 共通のフィールドのプロパティで一覧表示されているプロパティありますが、いくつかのフィールドには追加のプロパティがあります。
検索フィールドのプロパティ
[表示] タブ上の 2 つのセクションには関連する検索フィールドがあります。
注意
下の表に示すオプションは、エンティティ検索フィールドに対してのみ使用できます。
セクション |
プロパティ |
内容 |
||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
関連レコードのフィルタリング |
[次の条件を満たすレコードのみ表示する] |
これを有効にした場合、レコードの検索時に表示されるレコードに、追加のフィルターが適用されます。 これは、検索の値を設定するとき、より関連する検索サービスを提供します。 既定ではオフです。 関連レコードをフィルターする際に可能な関連付けの組み合わせは、次の表で一覧に表示されます。
最初の一覧には、この検索のフィルターに使用できるすべての関連付けが設定されています。 いずれかをクリックしてください。 すると、2 番目のリストに、関連エンティティ (最初のリストで選択済み) をターゲット エンティティに接続するすべての関連付けが設定されます。 いずれかをクリックしてください。 [ユーザーがフィルターを無効にできる] チェック ボックスをオンにして、ここで定義するフィルターをユーザーが無効にできるようにします。 検索値の設定時に、[他のレコードの検索] オプションをクリックすると、ダイアログ ボックスが表示されます。 検索フィールドの構成時に [ユーザーがフィルターを無効にできる] のオプション選択した場合、ユーザーにはフィルターを非表示にするチェック ボックスが表示されます。 これにより、広い範囲のレコードを表示できます。 このフィルターによって定義される、限られた範囲のレコードのみを表示できるようにするには、[ユーザーがフィルターを無効にできる] チェックボックスをオフにします。 |
||||||||||||||||||||||||||||||
追加のプロパティ |
検索ダイアログで検索ボックスを表示する |
検索ダイアログ ボックスに検索ボックスを表示しないよう設定できます。 |
||||||||||||||||||||||||||||||
既定のビュー |
このビューを使用して、インライン検索の結果をフィルター処理し、ユーザーが [他のレコードの検索] オプションをクリックする場合、検索ダイアログに表示する既定のビューを設定できます。 既定ビューはインライン検索に含まれるフィールドも制御します。 単一のエンティティの種類の選択のみを許可する検索の場合、インライン検索で表示されるフィールドは、既定ビューに含まれる最初の 2 つのフィールドに設定されます。 この例では、[代表電話] と[電子メール] が、取引先企業検索に構成された既定ビューの最初の 2 列です。 複数のエンティティの種類を有効にするシステム検索の場合は、エンティティの検索ビューの最初の 2 列が表示されます。 |
|||||||||||||||||||||||||||||||
ビュー セレクター |
3 種類のオプションから選択できます。
|
2 種類のオプション フィールドのプロパティ
形式タブで、2 通りのオプション フィールドには次の形式オプションがあります
[2 つのラジオ ボタン] : ラベル付の 2 つのコントロール。 1 つだけ選択できます。
[チェック ボックス] : true 値または false 値を設定する単一のチェック ボックス。
[リスト] : 両方の値を含むドロップダウン リスト。
テキスト フィールド プロパティの複数行
複数行のテキストと Text Area 形式を使用する単一行のテキスト フィールドには、[行のレイアウト] プロパティがあります。 このプロパティを使用すると、[行数] の値を指定、または [自動拡張して、使用可能なスペースを広げます] を選択できます。 このプロパティは [形式] タブで使用できます。
サブグリッドのプロパティ
レコードまたはグラフの一覧を表示するサブグリッドを構成できます。 一覧ではなくグラフを表示するには、[ディスプレイ] タブの**[グラフのみを示します]**を選択します。
タブ |
プロパティ |
内容 |
---|---|---|
表示方法 |
タブ アイコン |
タブに使用するアイコンをクリックします。Microsoft Dynamics 365 の Web リソースとしてアイコンが追加されます。 このオプションは、参照パネルにサブグリッドを追加する場合だけ使用できます。 |
名前 |
必須: スクリプト内でサブグリッドが参照されたとき使用される一意の名前。 名前には、英数字とアンダースコアのみを使用できます。 |
|
ラベル |
必須: ユーザーに表示されるサブグリッドのローカライズ可能なラベル。 |
|
フォームでラベルを表示する |
ラベルをフォームに表示するかどうか。 これは [検索ボックスを表示する] を有効した場合に必要です。 |
|
レコード |
2 種類のオプションからクリックします。
クリックしたオプションは、リストの表示コントロールの動作に影響します。詳細:リストの表示動作 |
|
エンティティ |
[レコード] でクリックしたオプションによって、次のいずれかのビューを表示します。
|
|
既定のビュー |
既定で適用されるビューをクリックします。[セレクターを参照] プロパティを使用して、他のビューを何も有効にしない場合。 これは唯一のビューです。 [編集] ボタンを使用して、既定ビューを編集のために開きます。[新規] ボタンを使用して、このサブグリッドに使用する新しいビューを作成します。 |
|
[検索ボックスを表示する] |
検索ボックスを表示します。 このオプションを選択すると [フォームでラベルを表示する] のオプションが必要です。 |
|
ビュー セレクター |
次の 3 つのオプションがあります。
|
|
形式 |
レイアウト |
コントロールが使用する列数を指定してください。 サブグリッドを含むセクションに複数の列があるとき、フィールドがセクションにある列の数まで占めるように設定できます。 |
行レイアウト |
[行数] は、サブグリッド ページに表示されるレコード数を決定します。 [自動拡張して、使用可能なスペースを広げます] が選択されている場合、フォームは 2 つのレコード分のスペースを許可し、レコード数が増えるにつれスペースを拡張します。 数字が [行数] を超えると、ユーザーは他のページに移動して、レコードを表示できます。 [自動拡張して、使用可能なスペースを広げます] が選択されていない場合、フォームは [行数] によって定義されたレコード数分のスペースを提供し、ユーザーは追加のページに移動して、そのほかのレコードを表示できます。 |
リストの表示動作
フォームの一覧を表示する場合、各サブグリッドには右上隅に [ビューを開く] ボタン が表示されます。エンティティもフォーム エディターのナビゲーション領域に含まれるエンティティの 1 つとして表示されます。 このボタンをクリックすると、ビューが開きます。 動作は、[レコード] プロパティに選択したオプションに応じて異なります。
[関連レコードのみ] を選択すると、ビューが同じウィンドウで関連ビューの 1 つを使用して開きます。 フォームに戻るには、[戻る] ボタンを使用するかナビゲーション バーの現在のレコードのプライマリ名の値をクリックします。
[すべてのレコードの種類] を選択すると、ビューは新しいウィンドウで開かれます。
レコードの動作を追加する
フォームに一覧を表示するとき、各サブグリッドの右側上部に [レコードの追加] ボタン が表示されます。 このボタンをクリックすると、レコードが追加されます。 この動作は、[レコード] プロパティに選択したオプションによって、また検索が活動レコードであるかどうかによって異なります。
[関連レコードのみ] を選択すると、既定で、既存のレコードを追加します。 既存レコードを検索するインライン検索がまず表示されます。 これにより、重複レコードを作成することを防げます。 既存レコードが見つからない場合は、[新規] のオプションをクリックできます。 新しいレコードを作成すると、関連付けで定義されるフィールドのマッピングが適用されます。詳細:エンティティ フィールドのマップ
**[すべてのレコードの種類]**を選択すると、既定で、新しいレコードを追加します。 簡易作成フォームがターゲット エンティティにある場合、それが表示されます。 ない場合、既定のエンティティのメイン フォームが表示されます。
サブグリッドに活動が表示される場合、ユーザーはまず活動の種類をクリックする必要があり、それから "新規レコードを追加する" 動作が表示されます。
レコードの削除動作
サブグリッドのレコードを選択する場合、[削除] ボタン が行の右側に表示されます。 この削除アクションの動作は、現在のエンティティとの関連付けの種類によって異なります。
サブグリッドが 1:N (1 対多数) の関連付けを使用する場合、一般的なレコードの削除動作とは、レコードを削除する前に確認ダイアログを示すことです。
サブグリッドがN:N (多対多) の関連付けを使用すると、2 種類のレコードに関係する関連付け (または交差) エンティティのレコードは確認なしで削除され、レコードはそのサブグリッドでは表示されなくなります。 しかし、表示されていたレコードは削除されません。
簡易表示コントロールのプロパティ
簡易表示コントロールには、フォーム内の検索フィールドで選択されたレコードのデータが表示されます。 コントロールに表示されるデータは、簡易表示フォームを使用して定義されます。 表示されたデータは編集できませんが、主フィールドが簡易表示フォームに含まれると、関連のレコードを開くリンクになります。 参照パネルですぐに使えるように作成された簡易表示フォームも、関連するエンティティのレコードを表示するために使用できます。詳細:簡易表示フォームの作成および編集
プロパティ |
内容 |
---|---|
タブ アイコン |
垂直タブに使用するアイコンを選択します。 Web リソースとしてイメージを使用することができます。 このオプションは、参照パネル セクションに簡易表示コントロールを挿入する場合だけ使用できます。 |
名前 |
必須: スクリプト内で簡易表示フォームが参照されたとき使用される一意の名前。 |
ラベル |
必須: 簡易入力フォームに表示されるラベル。 |
フォームでラベルを表示する |
フォームでラベルを表示します。 |
検索フィールド |
フォームに含まれる検索フィールドの 1 つをクリックします。 |
関連エンティティ |
この値は、クリックする [ルックアップ フィールド] によって異なります。 通常、検索の1:N のエンティティ関連付けの主エンティティです。 エンティティが取引先企業か取引先担当者のいずれかを受け入れる [見込み顧客] 検索を含む場合、[簡易表示フォーム] フィールドで、取引先企業と取引先担当者両方に対する簡易表示フォームをクリックできます。これは、この値を変更してから別の簡易表示フォームを選択することでできます。 |
簡易表示フォーム |
[関連エンティティ] に簡易表示フォームがある場合は、ここで選択できます。 そうしない場合は、[新規] をクリックして、作成します。 [編集] をクリックして、選択した簡易表示フォームを変更します。 |
Web リソースのプロパティ
ユーザーにとってさらに魅力的で便利になるように、フォーム上の Web リソースを追加または編集できます。
注意
-
[メイン - 対話型エクスペリエンス]の種類のフォームには、HTML の種類の Web リソースのみを追加できます。JavaScript のWeb リソースは、[ホーム] タブの [フォーム] グループにある [フォームのプロパティ] ボタンを使用して追加できます 。詳細:フォームのプロパティ
-
フォーム ヘッダーまたはフッターに web リソースを追加することはできません。
詳細な手順については、「フォームの Web リソースの追加または編集」を参照してください。
タブ |
プロパティ |
内容 |
---|---|---|
全般 |
Web リソース |
必須: 目的の HTML Web リソース。 |
名前 |
必須: フィールドを表す一意の名前。 名前には、英数字とアンダースコアのみを使用できます。 |
|
ラベル |
必須: Web リソースに表示されるラベル。 |
|
[既定で表示する] |
Web リソースの表示は任意で、スクリプトを使用して管理します。詳細:表示オプション |
|
カスタム パラメーター |
data クエリ文字列パラメーターとして渡すユーザー定義値。詳細:Web リソースへのパラメーターの引き渡し |
|
[サポートされている場合はクロスフレーム スクリプトを制限します]。 |
ページが異なるドメインにある場合、ページがフォーム ページのコンテンツにアクセスすることを防ぎたい場合があります。 Web リソースはいつも同じドメインにあるため、Web リソースを使用する場合これは問題になりません。 |
|
パラメーターとして、レコードのオブジェクトの種類コードおよび一意の識別子を渡します |
組織、ユーザー、およびレコードに関するデータを Web リソースに渡すことができるので、組織の設定に合わせることができます。詳細:Web リソースへのパラメーターの引き渡し |
|
形式 |
コントロールが使用する列数を指定してください |
Web リソースを含むセクションに複数の列があるとき、フィールドがセクションにある列の数まで占めるように設定できます。 |
コントロールが使用する行数を指定してください |
列数を指定することで、Web リソースの高さを制御できます。 |
|
自動拡張して、使用可能なスペースを広げます |
Web リソースの高さを使用可能なスペースまで広げることができます。 |
|
IFRAME のスクロールの種類を選択してください |
HTML Web リソースは、IFRAME を使用してフォームに追加されます。
|
|
境界の表示 |
Web リソースの周りに境界を表示します。 |
|
依存関係 |
[依存フィールド] |
Web リソースがスクリプトを使用してフォームのフィールドと対話することがあります。 フィールドがフォームから削除されると、Web リソースのスクリプトが破損することがあります。 Web リソースのスクリプトで参照されるフィールドはすべて [依存フィールド] に追加して、誤って削除されないようにします。 |
Web リソースへのパラメーターの引き渡し
HTML Web リソースは、クエリ文字列パラメーターとして渡されるパラメーターを受け入れることができます。
レコードについての情報は、[パラメーターとして、レコードのオブジェクトの種類コードおよび一意の識別子を渡します] オプションを有効にすることで、渡すことができます。 情報が [カスタム パラメーター (データ)] フィールドに入力される場合、データ パラメーターを使用して渡されます。 渡される値は次のとおりです。
パラメーター |
説明 |
---|---|
data |
このパラメーターは、テキストが [カスタム パラメーター (データ)] に提供されている場合のみ渡されます。 |
orglcid |
組織の既定の言語の LCID。 |
orgname |
組織の名前。 |
userlcid |
ユーザーが指定した言語の LCID |
type |
エンティティの種類コード。 この値は、異なる組織のユーザー定義エンティティでは異なります。 代わりにエンティティの種類名を使用します。 |
typename |
エンティティの種類名。 |
id |
レコードの ID 値。 エンティティ レコードを保存するまで、このパラメーターには値がありません。 |
そのほかのどのパラメーターも許可されないので、その他のパラメーターを使用しても Web リソースは開きません。 複数の値を渡す必要がある場合、データ パラメーターはさらにパラメーターを含めるとオーバーロードする可能性があります。 SDK の「サンプル: データ パラメーターを使用した Web リソースへの複数の値の引き渡し」を参照してください。
IFRAME のプロパティ
IFRAME をフォームに追加して、フォーム内の別の Web サイトからコンテンツを統合できます。
注意
-
フォーム ヘッダーまたはフッターに IFRAME を追加することはできません。
-
Microsoft Dynamics 365 フォームは、IFRAME 内に表示されるように設計されていません。
タブ |
プロパティ |
説明 |
---|---|---|
全般 |
名前 |
必須: IFRAME. を表す一意の名前。 名前には、英数字とアンダースコアのみを使用できます。 |
URL |
必須: IFRAME に表示されるページの URL。 重要
|
|
パラメーターとして、レコードのオブジェクトの種類コードおよび一意の識別子を渡します |
組織、ユーザー、およびレコードに関するデータは IFRAME に渡すことができます。詳細:IFRAME パラメーターの引き渡し |
|
ラベル |
必須: IFRAME に表示されるラベル。 |
|
フォームでラベルを表示する |
ラベルを表示するかどうか。 |
|
サポートされている場合はクロスフレーム スクリプトを制限します |
スクリプトを使用して、Microsoft Dynamics 365 アプリケーションと対話するために別のサイトからのページを使用することを許可するのは、セキュリティ上のリスクと見なされます。 このオプションを使用して、管理していないページに対して、クロスフレーム スクリプトを制限します。 |
|
[既定で表示する] |
IFRAMEの表示は任意で、スクリプトを使用して管理します。詳細:表示オプション |
|
形式 |
コントロールが使用する列数を指定してください |
IFRAMEを含むセクションに複数の列があるとき、フィールドがセクションにある列の数まで占めるように設定できます。 |
コントロールが使用する行数を指定してください |
コントロールが占める列数を指定することで、IFRAMEの高さを制御できます。 |
|
自動拡張して、使用可能なスペースを広げます |
最高値を設定するのではなく、IFrame の高さが使用可能なスペースに拡張されるようすることができます。 |
|
IFRAME のスクロールの種類を選択してください |
次の 3 つのオプションがあります。
|
|
境界の表示 |
IFRAMEの周りに境界を表示します。 |
|
依存関係 |
[依存フィールド] |
IFRAME がスクリプトを使用してフォームのフィールドと対話することがあります。 フィールドがフォームから削除されると、IFRAMEのスクリプトが破損することがあります。 IFRAMEのスクリプトで参照されるフィールドはすべて [依存フィールド] にフィールドに追加して、誤って削除されないようにします。 |
IFRAME パラメーターの引き渡し
レコードについての情報は、[パラメーターとして、レコードのオブジェクトの種類コードおよび一意の識別子を渡します] オプションを有効にすることで、渡すことができます。 渡される値は次のとおりです。
パラメーター |
説明 |
---|---|
orglcid |
組織の既定の言語の LCID。 |
orgname |
組織の名前。 |
userlcid |
ユーザーが指定した言語の LCID |
type |
エンティティの種類コード。 この値は、異なる組織のユーザー定義エンティティでは異なります。typename を代わりに使用します。 |
typename |
エンティティの種類名。 |
id |
レコードの ID 値。 エンティティ レコードを保存するまで、このパラメーターには値がありません。 |
ナビゲーションの編集
フォーム内のナビゲーションで、ユーザーが関連レコードの一覧を表示することができます。 各エンティティ関係を表示するかどうかを制御するプロパティがあります。詳細:主エンティティのナビゲーション ウィンドウ項目
表示されるように構成されているエンティティ関係は、フォーム エディター内で上書きされます。
詳細な手順については、「関連エンティティのフォーム ナビゲーションの追加または編集」を参照してください。
ナビゲーションの編集を可能にするには、最初に [ホーム] タブの [選択] グループから [ナビゲーション] を選択する必要があります。
[関連付けエクスプローラー] で、1:N (1 対多) または N:N (多対多) の関連付けに基づいてフィルターするか、使用可能な関連付けすべてを表示できます。[未使用のチェック ボックスのみを示します] は無効および選択済となっています。 したがって 1 回に1つの関連付けを追加できます。
[関連付けエクスプローラー] から関連付けを追加するには、それをダブルクリックすると、ナビゲーション領域の現在選択されている関係付けの下に追加されます。 ナビゲーション領域で関連付けをダブルクリックすると、[表示方法] タブのラベルを変更できます。[名前] タブに、関連付けに関する情報を表示できます。 エンティティの定義を開くには、**[編集]**ボタンを使用します。
ナビゲーション領域には、5 つのグループがあります。 それらをドラッグして場所を変え、ダブルクリックしてラベルを変更できますが、削除することはできません。 グループに何かあるときにのみ表示されます。 グループを表示させたくない場合は、何も追加しないでください。
イベント ハンドラーを構成する
フォーム イベント ハンドラーは、フォームの次の領域に対して設定できます。
要素 |
イベント |
内容 |
---|---|---|
フォーム |
OnLoad |
フォームが読み込まれると発生します。 |
OnSave |
データの保存時に発生します。 |
|
タブ |
TabStateChange |
タブが展開または閉じられたときに発生します。 |
フィールド |
OnChange |
フィールドのデータが変更され、コントロールがフォーカスを失うと発生します。 |
イベント ハンドラーは、JavaScript Web リソースに対する参照と、イベントが発生したときに実行されるその Web リソース内で定義された関数から構成されます。 各要素には、構成された最大 50 個のイベント ハンドラーを指定できます。
重要
イベント ハンドラーの構成が不適切だと、スクリプト エラーが発生し、フォームが正しく読み込んだり機能しなくなります。 スクリプトの開発者でないなら、そのスクリプトに必要な構成オプションが何であるかを完全に理解してください。
信頼できるソースからでないライブラリを使用して、スクリプト イベント ハンドラーを構成しないでください。 スクリプトを使用すると、ユーザーが実行するどのようなアクションでも実行できるため、不完全に書かれたスクリプトはフォームのパフォーマンスを著しく損なうことがあります。
イベント ハンドラーを構成したら、必ず正常に機能することを確認してください。
イベント ハンドラーを構成するには
フォーム エディターで、ハンドラーを構成しようとするイベントのある要素を選択します。
ホーム タブの**[編集]** のグループで、**[プロパティの変更]**をクリックするか、要素をダブルクリックします。
[要素のプロパティ] ダイアログ ボックスで、[イベント] タブを選択します。
[フォーム ライブラリ] 領域を展開します。 イベント ハンドラーとして設定する関数を含むライブラリがまだリストされていない場合、そのライブラリを追加します。
イベント ハンドラーにフォーム ライブラリを追加するには
[イベント リスト] の [フォーム ライブラリ] セクションで、[追加] をクリックします。
使用できる Web リソースの一覧で、JavaScript Web リソースを検索します。 それを選択し、[追加] をクリックします。
必要な JavaScript Web リソースが存在しない場合、[新規] をクリックして、新しくWeb リソース フォームを作成します。
JavaScript Web リソースを作成するには
Web リソース フォームで、次の表に示したプロパティを設定します。
プロパティ
値
名前
必須。 Web リソースの名前を入力します。
[表示名]
必須。 Web リソースの一覧に表示される名前を入力します。
説明
任意。 Web リソースの説明を入力します。
種類
必須。[スクリプト (JScript)] を選択します。
言語
省略可。 組織で利用できる言語の 1 つをクリックします。
スクリプトが提供されている場合、[参照] ボタンを使用して、ファイルを検索し、アップロードすることをお勧めします。
また、[テキスト エディター] ボタンをクリックして、[コンテンツの編集] ダイアログ ボックスにスクリプトの内容を貼り付るか、入力できます。
注意
この簡易テキスト エディターには、スクリプトの正当性をチェックする機能がないため、Microsoft Visual Studio などの別のアプリケーションを使用して、スクリプトの編者およびアップロードを行うことをお勧めします。
[保存] をクリックして、[Web リソース] ダイアログ ボックスを閉じます。[レコードの検索] ダイアログ ボックスで、作成した新しい Web リソースが選択されます。
[追加] をクリックしてダイアログ ボックスを閉じます。
[イベント ハンドラー] セクションで、イベント ハンドラーを設定するイベントを選択します。
[追加] をクリックして、[ハンドラーのプロパティ] ダイアログ ボックスを開きます。
[詳細] タブで、適切なライブラリをクリックし、イベントに対して実行される関数名を入力します。
既定では、イベント ハンドラーは有効です。 このイベントを有効にしたくない場合は [有効] チェック ボックスをオフにします。
いくつかの関数には、関数に渡されるための実行コンテキストが必要です。 これが必要な場合、[実行コンテキストを最初のパラメーターとして渡す] を選択します。
いくつかの関数は、関数の動作を制御する一連パラメーターを許可します。 これからが必要な場合、[関数に渡されるパラメーターのコンマ区切り一覧] に入力します。
[相互関係] タブで、スクリプトが依存するフィールドを**[依存フィールド]** 領域に追加します。
[OK] をクリックして [ハンドラーのプロパティ] ダイアログを閉じます。
イベント ハンドラーが入力されるとき、他の関数との間で実行される関数の順序を調整する場合は、緑色の矢印を使用して関数を上下に移動します。
[OK] をクリックして、[要素のプロパティ] ダイアログを閉じます。
[保存] をクリックして、変更を保存します。 変更を公開するには、公開 をクリックします。
注意
ユーザー インターフェイス (UI) により、緑色の上矢印と下矢印を使用してスクリプトの読み込みの順序を調整できますが、スクリプトは実際には順次に読み込まれません。詳細:MSDN: ライブラリの依存関係の管理
関連項目
対話型サービス ハブの対話型フォームの作成とデザイン
簡易作成フォームの作成および編集
簡易表示フォームの作成および編集
© 2017 Microsoft. All rights reserved. 著作権