[SFDC vs D365]ページレイアウトとフォームの作成

エンティティ定義は一旦完了したので、次は画面から入力できるようにユーザインタフェース定義をします。
Salesforceでいうところのページレイアウト、Dynamicsではフォームと言われるところです。

スポンサーリンク

今回の作成対象

今回はオブジェクト・エンティティ単位で定義されるユーザインタフェース部分の作成になります。

各エンティティのユーザインタフェースを作成

では、エンティティ単位でページレイアウトとフォームを定義してみます。

SFDC:ページレイアウトの定義

まずは、球団オブジェクトのページレイアウトから作成。
[設定]→[カスタマイズ]→[取引先]→[ページレイアウト]から「Account Layout」を選択します。
(今回はデフォルトのページレイアウトを編集)
球団はこのように配置します。
余分なアクションやボタンはレイアウトから外しています。

続いて、所属選手。
[設定]→[カスタマイズ]→[取引先責任者]→[ページレイアウト]から「Contact Layout」を選択します。
(これもデフォルトのものを編集)

最後に球場オブジェクト。
[設定]→[作成]→[オブジェクト]から「球場」を選択し、ページレイアウトの「球場レイアウト」を選択します。
(デフォルトのページレイアウトがこの名前になっているはず)

D365:フォームの定義

お次はDynamics側でのフォーム設定。

こちらはデフォルトのフォームはありますが、編集するよりも新規で作成した方が早いのでフォームを作成します。
新しくフォームを作成するには、ソリューションの[エンティティ]→[球場]→[フォーム]から、左上のウィンドウアイコン(!?)から作成します。

まず、フォームに名前をつけましょう。
メニューのフォームのプロパティから

表示タブのフォーム名に名前を入力(日本語でOK)。

既定のフォームをベースにデフォルトで配置されていますが、不要なものもあるので、一旦必須以外は全部消しましょう。

削除はフィールドやセクションを選択して、メニューの削除ボタンでレイアウトから外すことができます。
あくまで、レイアウト上を除外するだけなので、フィールドの定義情報は残ったままです。

ヘッダーやナビゲーションメニューも必須以外は全部消します。

ヘッダーはメニュー内選択セクションのヘッダーを選択すると、フォーム上のヘッダー部分がアクティブになるので、フィールドを指定し、あとは削除するだけです。
(フッターも同じ要領で)

ナビゲーションメニューもまずは不要なので外します。
同じようにナビゲーションを選択して、削除します。

これから、フォームの配置をしていくわけですが、ちょっとややこいです。
ページレイアウトは基本ドラッグアンドドロップでの配置でしたが、フォームはまた違った設定方法になるため、慣れが必要です。

ページレイアウトのように、セクション内2列で表示したいわけですが、セクションの上にタブが作られている構造ですので、まずはタブに対して、セクションが何列あるか(フィールドではない!)を定義します。
タブ(ここでいう「概要」と書いていることろ)から見ると、セクションは横幅いっぱいに表示する訳なので、列は1列設定になります

まずは、タブを選択し、フォームのプロパティから列設定します。

タブのプロパティで、「形式」タブからレイアウトを1列にします。

これで、セクションが広がったと思います。

今度はセクションに対しての列設定をします。
セクション上からはフィールドが2列での配置となるため、同じ要領で列設定をします。

セクションを選択し、プロパティの変更から

形式タブで2列を選択すればOK。

これで配置設定上はページレイアウトと同じになりました。

あとは、フィールドを割り当てるだけなので、ページレイアウトに合わせてフィールドを右側の一覧からドラッグアンドドロップしていきます。

空白スペースは、スペーサーという名前になっているので、メニューの[挿入]→[コントロール]→[スペーサー]から挿入します。

最後に関連リストの設定です。
こちらは、サブグリッドという名前のコントローラーになりますので、メニューの[挿入]→[コントロール]→[サブグリッド]から挿入します。

プロパティの設定では、関連するエンティティを選択する欄があるため、以下のように設定します。
レコード:関連レコードのみ
エンティティ:所属選手(会社名)
既定のビュー:自分のアクティブな取引先担当者(まだビューの設定はしていないので何でもいいです)
ラベルと名前は任意名でOKです(名前は半角英数)。

これで一通りフォームの設定が終わりました。
最後に保存する訳ですが保存の際に「公開」を忘れないように。
Salesforceとは違い、保存即公開にはならないため、公開癖はつけておきましょう。

球団フォームで多くの説明を費やしましたが、所属選手、球場エンティティも設定内容は同じですので、あとはページレイアウトに合わせてもらえれば配置については同じ設定が可能です。

こちらが同じように設定した所属選手のフォーム

こちらが同じように設定した球場のフォーム

今回はここまで

フォームのレイアウト配置だけで結構な量になったので、今回はここまでとします。
やや、Dynamics側が複雑でしたが、配置だけであれば、ページレイアウト<フォームなので移行は可能です。
まだ細かい設定があるため、次回に相違点について述べたいと思います。


レイアウト・デザインの教科書

コメント