6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Salesforce】動的フォームを試してみた

Last updated at Posted at 2020-11-08

#どんな機能?
・レコードの状態によって項目の表示可否が制御できる機能
・現在はカスタムオブジェクトのみ対応

#設定してみる
①まず詳細コンポーネントをレコードページに配置します。

②その詳細コンポーネントをクリックすると、画面右側に以下のリンクが表示されるのでクリックします。詳細コンポーネント.png

③動的フォームのチュートリアル画面がでます。
 「次へ」ボタンをクリックします。動的フォームチュートリアル.png

④動的フォーム表示元となるページレイアウトを選択し、「完了」ボタンを押します。動的フォームチュートリアル2.png

⑤これで動的フォームが設定されました。
 設定されると同時にアコーディオンコンポーネントも設定されます。 設定後.png

#試してみる
①動的フォームは項目の位置を自由に変更できます。
項目移動.png

②項目の表示条件を設定してみます。
 設定方法は他のコンポーネントの表示条件設定と変わりません。
 項目をクリックすると画面右側に以下のキャプチャの通り、
 「検索条件の追加」リンクが表示されるのでクリックします。表示条件設定1.png

③例として、”参加人数”項目が10以上のとき、"レベル"項目を表示させてみたいと思います。
 条件を設定したら「完了」→レコードページを保存します。表示条件設定2.png

④参加人数が「0」のとき表示されていません。条件外.png

⑤参加人数を「10」とすると表示されました。条件満たす.png

#さらに試してみる
##セクション/項目を追加する
レコードページ内でセクション/項目を追加できるようになります

①レコードページ編集画面左側に「項目」というタブがあります。
 ここからセクションや項目をドラッグ&ドロップすることで追加することが可能です。セクションと項目を追加.png

##プロファイルに割り当てられているレイアウトと別のレイアウトをソースにするとどうなるか
上記の通り、動的フォームを生成する時にソースとなるレイアウトを選択します。
このとき、どのプロファイルにも割り当てられていないレイアウトを選択したらどうなるのでしょうか。

①セッションという名のカスタムオブジェクトには、「セッションレイアウト」を「セッションレイアウト2」がある状態です。レイアウト2種.png

③ちなみに「セッションレイアウト2」の中身はこのような感じです。セッション2レイアウトの中身.png

③現在「セッションレイアウト2」はどのプロファイルにも割り当てられてません。レイアウト割り当て状況.png

④動的フォーム設定画面では問題なく選択できます。セッションレイアウト2選択可能.png

⑤レコードページ上も「セッションレイアウト2」レイアウトと同じ配置となります。セッションレイアウト2で動的フォーム.png

⑥システム管理者以外のユーザでログインしてみても同様です。システム管理者以外で.png

⑦編集画面も「セッションレイアウト2」の内容となってしまいます。編集画面.png

##動的フォーム追加した後、ソース元のレイアウトを変更するとどうなるか
動的フォームを設定した後、ソース元のレイアウトにセクションや項目を追加したらどうなるのでしょうか。

①上記から引き続き、セクションレイアウト2で試してみます。
 現在はこのようなレイアウトです。 セッションレイアウト2で動的フォーム.png

②「セクションレイアウト2」を編集してみます。
 「テスト2」というセクションを追加し、"参加人数"項目と"取引先"項目を配置しました。レイアウト2編集後.png

③どうやら反映されないようです。レイアウト2編集後レコードページ.png

#動的フォーム上必須に設定した項目が非表示の場合、必須チェックエラーが発生するか【2020/11/18追記】
①"参加人数"項目を動的フォーム上必須にし、検索条件で"レベル"項目が「中級」のときに表示させるとします。
必須を非表示に.png

②レベル「初級」だと”参加人数”項目は表示されません。
 この状態で適当に保存すると・・・非表示ではエラーとなるか.png

③エラーは発生しませんでした。非表示ではエラーとなるか_エラーなし.png

④レベルを「中級」にした途端に以下のメッセージが表示されました。中級に.png

⑤レベル「中級」の状態で”参加人数”が未入力のまま保存するとエラーが発生します。中級で未入力.png

#まとめ

  • 条件をつけて項目出し分け出来るのは便利
  • ページレイアウトとして割り当てらてないレイアウトでもソースとして選択できる
  • 動的フォームとして設定すると、ソース元のレイアウトとは独立したレイアウトとなる
  • 作成/編集画面のレイアウトも動的フォームのレイアウトと同様となる
  • レコードタイプと動的フォームを合わせて使いたい場合は、レイアウトの割り当てではなくレコードページ側で割り当てを行うことが必要
6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?