フィールド値に基づくパネルおよびサブビューの表示
フィールドの値に基づいて、異なる一連のパネル(および対応するサブビュー)を表示できます。
これを行うには、パネル・レイアウトまたはサブビュー・レイアウトを作成し、フィールド値条件を追加します。レコードのフィールドが指定された値に一致する場合は、関連するレイアウトが表示されます。そうでない場合は、異なるレイアウトが表示されます。
このトピックでは、アカウントのタイプ(「顧客」または「見込み客」のいずれか)によって、アカウントの詳細ページのパネル・レイアウトおよびサブビュー・レイアウトがどのように変化するかを説明します。
前提条件
フィールド値を参照するレイアウト条件を作成するには、最初にこの機能を有効にして、ヘッダーを評価した後でのみパネルおよびサブビューがページに読み込まれるようにする必要があります。
-
Visual Builder Studioで、「アプリケーションUI」サイド・タブをクリックします。
-
にナビゲートします。
-
「accounts-detail」ページで、「変数」サブタブをクリックします。
-
「定数」リージョンで、deferRelatedDataLoad定数をクリックします。
-
「プロパティ」ペインの「デフォルト値」フィールドで、「True」を選択します。
フィールド値条件をパネル・コンテナ・レイアウトおよびサブビュー・コンテナ・レイアウトに追加する場合は、この値を「True」に設定する必要があります。
新しいパネル・レイアウトの作成
この機能を有効にしたら、フィールド値条件をパネル・レイアウトに追加できます。アカウントの詳細ページに条件を追加しましょう。
-
アカウント・レコードからVisual Builder Studioにナビゲートします。
-
「accounts-detail」ページで、ページ・デザイナ・サブタブをクリックします。
-
構造パネルで、パネル・コンテナ・レイアウト・ノードをクリックします。
-
「プロパティ」ペインで、営業管理者ケースの隣にある「複製」アイコンをクリックします。
-
営業管理者ケース(コピー)パネル・レイアウトの条件の隣にある式エディタ・アイコンをクリックします。
-
式エディタ・ダイアログで、テストのために既存の式をこの新しい式で置き換えます:
$base.page.variables.row.Type=='ZCA_CUSTOMER'
-
「保存」をクリックします。
-
商談パネル・テンプレートを削除します。
先に指定したフィールド条件により、これはCustomerタイプのアカウントには、アカウントの詳細ページに「商談」パネルが表示されないことを意味します。
この変更をテストしてみましょう。
「accounts-list」ページで、「プレビュー」ボタンをクリックして、ランタイム・テスト環境の変更を表示します。
-
結果のプレビュー・リンクは次のようになります:
https://<servername>/fscmUI/redwood/cx-sales/accounts/accounts-list
-
プレビュー・リンクを次のように変更します:
https://<servername>/fscmUI/redwood/cx-sales/application/container/accounts/accounts-list
ノート:プレビュー・リンクに
/application/container
を追加する必要があります。 -
「自分のチームのアカウント」ページで、任意のアカウントをクリックします。
-
アカウント・タイプが「顧客」の場合、「商談」パネルは表示されません。
-
アカウント・タイプが「見込み客」の場合は、「商談」パネルが表示されます。
-
新しいサブビュー・レイアウトの作成
次は、フィールド条件をサブビュー・レイアウトにも追加します。フィールド条件をサブビュー・レイアウトに追加することは重要です。そうしない場合、アカウントが「顧客」であっても、処理バーから「商談の表示」スマート処理を使用できます。
-
任意のサブビュー・ページからVisual Builder Studioにナビゲートします。サブビュー・ページには、アカウント・レコードの任意のパネルからナビゲートできます。
-
「accounts-detail」ページで、ページ・デザイナ・サブタブをクリックします。
-
構造パネルで、サブビュー・コンテナ・レイアウト・ノードをクリックします。
-
「プロパティ」ペインで、サブビュー・コンテナ・レイアウトの隣にある「複製」アイコンをクリックします。
-
サブビュー・コンテナ・レイアウト(コピー)サブビュー・レイアウトの条件の隣にある式エディタ・アイコンをクリックします。
-
式エディタ・ダイアログで、次の式を追加します:
$base.page.variables.row.Type=='ZCA_CUSTOMER'
-
「保存」をクリックします。
-
商談サブビュー・テンプレートを削除します。
先に指定したフィールド条件により、これは「Customer」タイプのアカウントには、アカウントの詳細ページに「商談の表示」スマート処理が表示されないことを意味します。
この変更をテストしてみましょう。
「accounts-list」ページで、「プレビュー」ボタンをクリックして、ランタイム・テスト環境の変更を表示します。
-
結果のプレビュー・リンクは次のようになります:
https://<servername>/fscmUI/redwood/cx-sales/accounts/accounts-list
-
プレビュー・リンクを次のように変更します:
https://<servername>/fscmUI/redwood/cx-sales/application/container/accounts/accounts-list
ノート:プレビュー・リンクに
/application/container
を追加する必要があります。 -
「自分のチームのアカウント」ページで、任意のアカウントをクリックし、そのアカウントのタイプが「顧客」であることを確認します。「商談」パネルは表示されません。
-
「商談の表示」スマート処理が処理バーから使用可能かどうかを確認して、サブビュー・レイアウトのフィールド条件をテストします。アカウントが「顧客」の場合、これは表示されなくなります。