前回、エンティティフォームの基本的なところを作成しました。
エンティティフォームもエンティティリストに負けず劣らずの設定量の多さのため、今回はその辺をつっこんで行きましょう。
フォームの表示と違うところ
エンティティフォームはDynamicsのフォームを取り込んで表示する訳ですが、Dynamics上から見るフォームとポータル上から見るエンティティフォームでは同じレイアウトでも見た目がだいぶ異なります。
フォームとエンティティフォームの見た目の違いについて、主要なところを纏めました。
所有者の表示
ポータルでは所有者を意識しないように使われるらしく、フォームで所有者を配置したとしてもデフォルトでは表示されないようになっています。
「デフォルトでは」といったのは、エンティティフォームで「所有者フィールドの表示」にチェックを入れることによって表示することも可能です。
ただ、仮に表示したとしても所有者の割り当てまではできません。
これは、ポータルユーザが取引先担当者(Contact)になっていることに起因しているからだと思われます。
ポータルユーザは真のDynamicsユーザではないため、データ操作するときはSystemさんを使って動かしているんですね。
Systemさんなので、基本全データの参照・編集ができるんですが、エンティティアクセス許可というポータル設定のフィルターを通してUIとDBの間に関所があり、ここでコントロールの制限をかけていることになります。
なので、ポータルの所有者情報はさほど重要ではなさそうです。
参考情報程度のものとして捉えておきましょう。
重複する項目は表示されない
フォームでは同じ項目を複数箇所に置くことができましたが、エンティティリストでは複数置くことができないようです。
おそらくJavaScriptなどで一意に引っ掛けなくなるからでしょう。
一応、複数配置しても1つは表示され、エンティティフォーム上で警告は出てくれます。
こちらは複数配置は基本しないように心がけることで対応しましょう。
Dynamicsユーザとフォームを併用する場合は注意かな。
タブの表示ができない
エンティティフォームの[全般]タブの「タブ名」はブランクにすることで、フォームで使用しているタブの内容を全て表示することができます。
ただし、エンティティフォーム上の表示はタブとして表示されるのではなく、セクションのような形で1画面内に表示されるような形になります。
このようにフォームにタブを設定しても・・・
エンティティフォームの表示はこうなる
エンドユーザさんにはタブの表示って結構好評な印象だったのでちょっと残念・・・。
タブの表示はできませんが、代替案としてはステップ表示ができます。
エンティティフォームの[フォームのオプション]タブの[追加設定]セクションにある「タブからステップを自動生成」をチェックすることでステップ送りになります。
このようにチェックを入れると
こんな感じでタブ単位で表示され、「前へ」「次へ」のタブ移動ができます。
タブ機能ではありませんが、ニアリーイコールでほぼタブのような機能が実現できます。
一部コントロールが適用できない
フォームでは項目を配置するだけではなく、様々なコントローラが使用できました。
ソーシャルインサイトやリレーションシップアシスタントなど、表示がリッチなコントローラはエンティティフォームでは表示できません。
全て確認した訳ではありませんが、サブグリッド・簡易表示フォーム、スペーサーはOKでした。
電話(モバイル)での表示設定
モバイル表示制限で使用するありがたい設定である、フィールドプロパティの「電話で使用可能」のチェックボックス。
表示をOFFにして、スマホで確認しても表示は維持されたままのようです。
スマホからポータルの画面を見るのは、ブラウザ経由でしか見るしかないようです。
「電話で使用可能」という真の意味は、Dynamics365アプリから見れるかという意味なので、スマホからブラウザで見たところで設定が適用されないみたいです。
ビジネスルールが適用できない
ポータルのエンティティフォームはビジネスルールが適用できません。
何か項目を変えたら、連動して別の項目を表示させたり必須にするアレです。
うまく裏のJavaScriptが動かないからでしょうか。
これは地味に痛い!
エンティティフォームだからこそできる設定も
このように、フォームに比べて表示に縛りがある反面、エンティティフォームでしかできないこともいくつかあります。
必須の設定
エンティティフォームの設定で、「推奨フィールドを必須として設定」「すべてのフィールドを必須にする」といった必須についての設定があります。
設定内容については文言通りで、推奨フィールドをエンティティフォーム上では必須にする、入力項目すべてを必須項目とするといった内容です。
添付ファイルをつけたり地図を表示したり
エンティティフォーム内で添付ファイルを扱ったり、位置情報を使用して地図を表示させるといったやり方も可能です。
フォームのコントロールでいうタイムライン(メモ)やBingマップの代替機能みたいなものです。
添付ファイルについてはその中でも色々な添付方法が存在するので、別途どこかの会で取り上げたいと思います。
地図は・・・余裕あったらやろうかな(汗)。
さらに細かい設定はエンティティフォームメタデータで
エンティティフォーム内で設定できる範囲以外にも、項目単位でエンティティフォームメタデータという設定を使用して入力規則や項目の自動設定などを実現することができます。
こちらは、さらに細かい設定となるので次回取り上げることにしましょう。
コメント