ピッカーの構成
ピッカーは、ユーザーが必要なレコードをすばやく見つけることができるように、通常の値リスト・フィールドを強化します。 設定に応じて、ピッカーは、選択元の保存済検索のリスト、またはユーザーのコンテキストに最も関連のある結果のリストを表示できます。 ピッカーは特定の標準フィールドですでに使用可能であり、変更することはできませんが、必要に応じてこれらのフィールドに新しいピッカーを構成できます。 カスタム値リスト・フィールドのピッカーを構成することもできます。 Oracle Visual Builder Studioのcx-pickerフラグメントを使用して、新しいピッカーを構成します。
ピッカーのないフィールドの例を次に示します。 ピッカーがない場合、フィールドには、ユーザーがクリックして値リストを表示できるボタンがあります。
この基本的な値リストには、ユーザーがフィールドに入力した値をフィルタリングする機能が含まれています。 たとえば、ユーザーがpi
と入力すると、名前にpi
が含まれるアカウントのリストが選択のために表示されます。
この基本的なフィルタリング機能は役に立ちますが、ベスト・プラクティスは、フィールドに対してより広範な検索機能を有効にするピッカーを追加することです。
ピッカーとは何ですか。
ピッカーは、動的選択リスト・フィールドでの特殊な検索です。 ピッカーを使用すると、ユーザーは1つの属性のみでなく、レコードの複数の属性を検索できます。 たとえば、取引先ピッカーでは、取引先名、住所詳細、および担当者名を検索できます。 次のスクリーンショットは、市区町村名の検索を示しています。
さらに、ピッカーはフィールドの標準検索よりも強力です。これは、設定によっては、保存検索のリストまたはユーザーのコンテキストに最も関連のある結果のリストをピッカーに表示できるためです:
-
「保存検索」は、オブジェクトに対して事前定義された検索フィルタです。 (およびエンド・ユーザー)は、必要に応じて新しい保存済検索を定義できます。
ピッカーが保存済検索のリストを表示するように構成されている場合、ユーザーは実行時に保存済検索を適用して、検索に使用できるレコードをフィルタできるため、選択する適切なレコードをすばやく検索できます。
次に、保存済検索のリストを含むピッカーの例を示します:
実行時に、ピッカーは、そのオブジェクトに対して有効なデフォルトの保存済検索またはユーザーが選択した最後の保存済検索に基づいてレコードを表示します。
-
ピッカーが「ユーザーのコンテキストに最も関連のある結果のリスト」を表示するように構成されている場合、ユーザーが値リストを開くと、現在のコンテキストに関連するレコードがなんらかの形で表示されます。
ピッキング担当者のシナリオ例
このトピックでは、ピッカー構成の例を示します。 この例では、ユーザーがアカウントを検索して支払レコードに関連付けることができるように、アカウント・ピッカーを「支払の作成」ページに追加します。
この例では、次の操作を行います:
-
アプリケーション・コンポーザで、カスタム動的選択リスト・フィールドを作成します。
-
Visual Builder Studioの場合:
-
動的選択リスト・フィールドをページ・レイアウトに追加します。
-
ピッカー・フラグメントを使用するフィールド・テンプレートにフィールドを関連付けます。
-
ピッカー・レイアウトの構成。
-
前提条件
-
カスタム・オブジェクトを操作する場合は、適応型検索の設定を完了します。
カスタム・オブジェクトのフィールドのピッカーを構成する場合は、適応型検索のカスタム・オブジェクトを有効にしていることを確認してください。 ピッカーの操作は、適応型検索にすでに設定されている内容によって異なります。
ピッカーは、キーワード検索が有効になっているすべての「適応型検索」フィールドを検索します。 検索に追加の属性を有効にするには、『Oracle Fusion Cloud Sales Automation実装リファレンス』ガイドのAdaptive Search and Workspaceの章の「UIでフィールドを検索可能にします」を参照してください。
-
まだワークスペースがない場合は、Visual Builder Studioで独自のワークスペースを作成します。
まだ公開されていないカスタム動的選択リスト・フィールドのピッカーを構成する場合は、ワークスペースがクラウド・アプリケーション・サンドボックスに関連付けられていることを確認してください。
-
「共通アプリケーション・コンポーネント」依存関係をワークスペースに追加します。
依存関係を追加するには、Visual Builder Studioの依存関係サイド・タブをクリックします。
検索フィールドを使用して「共通アプリケーション・コンポーネント」依存関係を検索し、「追加」をクリックします。
-
この例では、Visual Builder Studioですでにページが構成されているカスタム支払オブジェクトがあると想定しています。
CX拡張ジェネレータを使用して、この設定を迅速に設定できます。 「CX拡張ジェネレータを使用した新規アプリケーションの作成」を参照してください。
1. カスタム動的選択リスト・フィールドの作成
開始するには、アプリケーション・コンポーザでカスタム・オブジェクト「支払」にカスタム動的選択リスト・フィールドを作成します。 この動的選択リスト・フィールドには、アカウント・レコードが表示されます。
カスタム動的選択リスト・フィールドを作成するには:
-
アクティブなサンドボックスで作業していることを確認します
-
アプリケーション・コンポーザで、「支払オブジェクト」>「フィールド」ノードにナビゲートします。
-
次の値を使用して、カスタム動的選択リスト・フィールドを作成します:
フィールド
値
表示ラベル
アカウント
名前
アカウント
関連オブジェクト
アカウント
リスト選択表示値
組織名
アプリケーション・コンポーザで動的選択リスト・フィールドを作成すると、2つのフィールドが作成されます。
-
1つのフィールドは、Redwood以外の標準Oracle applicationsで使用します。 この標準フィールドの命名規則は、customfield_cです。
この例では、Account_cフィールドが自動的に作成されます。 このフィールドは、アプリケーション・コンポーザおよびVisual Builder Studioで表示および変更できます。
-
1つのフィールドは、Redwood Salesで使用します。 この標準フィールドの命名規則は、customfield_Id_cです。
この例では、Account_Id_cフィールドが自動的に作成され、Visual Builder Studioにのみ表示されます。 これは、「Redwood営業」ページ・レイアウトに追加するフィールドです。
Visual Builder Studioで、Account_Id_cフィールドをページ・レイアウトに追加できるようになりました。 次のセクションで説明します。
2. ページ・レイアウトへのフィールドの追加
カスタム・フィールドをページ・レイアウトに追加しましょう。 この例では、フィールドを作成ページに追加します。 通常は、編集ページにもフィールドを追加します。
-
SalesのRedwoodユーザー・エクスペリエンスで、拡張する領域が表示されるページにナビゲートします。 この例では、「支払」リスト・ページにナビゲートします。
-
設定およびアクション・メニューで、「Visual Builder Studioのページの編集」を選択します。
-
すでに設定されているプロジェクトを選択します。 1つのプロジェクトのみが存在する場合は、そのプロジェクトに自動的に移動します。
-
Visual Builder Studioでは、ワークスペースが自動的に開きます。 ただし、複数のワークスペースが存在する場合は、最初にワークスペースを選択する必要があります。
-
Visual Builder Studioでワークスペースに入ったら、「レイアウト」サイド・タブをクリックします。
-
「レイアウト」サイド・タブで、Payment_cノードをクリックします。
-
Payment_cタブの「ルール」「セット」タブで、「レイアウトの作成」ルール・セットをクリックします。
ノート: オプションで、レイアウトの編集ルール・セットに対して同じステップを繰り返します。 -
「開く」アイコンをクリックして、デフォルト・レイアウトを編集します。
-
フィールドのリストをスクロールして、カスタムの動的選択リスト・フィールドを見つけます。 Visual Builder Studioには、表示名ではなく内部API名が表示されます。
ヒント: フィールドをより迅速に検索するには、フィルタ・フィールドを使用します。 たとえば、「フィルタ」フィールドにaccount
と入力します。 -
フィールド・リストからフィールドAccount_Id_cを選択します。
フィールドを選択すると、リストの右下にあるフィールドのリストに表示されます。 オプションで、フィールドのハンドルを使用して、フィールドを目的のロケーションにドラッグできます。
この時点で作成ページをプレビューする場合、表示される取引先フィールドは、基本的な検索フィルタリングのみを含む単純なリストです。
ピッカーをフィールドに追加するには、ピッカー・フラグメントを使用するフィールド・テンプレートにフィールドを関連付ける必要があります。 次にそれをしましょう。
3. フィールドとフィールド・テンプレートの関連付け
カスタム動的選択リスト・フィールドにピッカーを追加して、ユーザーが検索機能を拡張できるようにします。 これを行うには、ピッカー・フラグメントを使用するフィールド・テンプレートにフィールドを関連付けます。
-
デフォルトのレイアウトを表示して、「ルール」の「セット」タブが表示されていることを確認します。
-
Account_Id_cフィールドをクリックします。
-
「プロパティ」ペインの「テンプレート」フィールドの上にある「作成」をクリックします。
ノート: レイアウトの編集ルール・セットのレイアウトに対してこれらのステップを2回実行する場合は、「テンプレート」フィールドでフィールド・テンプレートを作成する必要はありません。 かわりに、次のステップで作成しようとしているテンプレートを選択できます。 -
「テンプレートの作成」ダイアログの「ラベル」フィールドに、テンプレートのラベルを入力します。
この例では、
AccountPickerTemplate
と入力します。 -
「作成」をクリックします。
Visual Builder Studioは、基本構造を持つプレースホルダー・テンプレートを作成します。これには、「構造」ペインに表示される「入力テキスト」ノードが含まれます。
-
「構造」ペインからデフォルトの「入力テキスト」ノードを削除するには、ノードを右クリックして「削除」をクリックします。
-
「コード」ボタンをクリックします。
-
テンプレート・エディタで、accountPickerTemplateテンプレート・タグを選択します。
-
コンポーネント・パレットのフィルタ・フィールドに、
cx-picker
と入力します。 -
cx-pickerフラグメントをテンプレート・エディタのテンプレート・タグの間にドラッグ・アンド・ドロップします。
-
このスクリーンショットに示すように、フラグメント・コードが選択されていることを確認します。
ヒント: 「構造」ペインで、ピッカー・テンプレートのフラグメント・コンテナ・ノードを選択すると、同じ処理が実行されます。 -
cx-pickerフラグメントの「プロパティ」ペインで、「入力パラメータ」セクションで、必要なピッカー・パラメータの値を設定します。
cx-pickerフラグメントの必須パラメータ
パラメータ
サンプル値
説明
dynamicLayoutContext
[[ $dynamicLayoutContext ]]
このパラメータはデフォルトで設定されており、作成または編集ページにフィールドが表示されている場合、変更する必要はありません。
このフィールドが作成または編集ページに表示されない場合、詳細は、「cx-pickerフラグメントのパラメータ」のdynamicLayoutContextの説明を参照してください。
pickerLayoutId
PickerLayout
このパラメータは、実行時にピッカーがどのように見えるかを制御するレイアウトを持つルール・セットを示します。
変更する必要のないデフォルト値は、
PickerLayout
です。これは、カスタム・オブジェクトを含む各オブジェクトに事前定義されている「ピッカー・レイアウト」ルール・セットのIDです。カスタム・ルール・セットを作成する必要がある場合は、動的表としてルール・セットを作成し、「ラベル」フィールドと「ID」フィールドの値が同一であることを確認します。 次に、このパラメータにIDを追加します。
リソース
[[ {"name": "accounts","displayField":"OrganizationName","endpoint":"cx-custom","primaryKey":"PartyId" } ]]
このパラメータを使用して、ターゲット・オブジェクト名とエンドポイントを渡します:
-
name
- ターゲット・オブジェクト名 -
endpoint
- ターゲット・オブジェクトの終了点
オプションで、次の追加属性を渡します:
-
displayField
- ユーザーが選択した後にピッカー・フィールドに表示されるフィールド値。 ここで指定しない場合、ピッカーはデフォルトでピッカー・レイアウトの最初のフィールドを表示します。 -
primaryKey
- primaryKeyを導出するフィールド。 指定しない場合、オブジェクトのprimaryKeyフィールドが使用されます。
ユース・ケースに適した値で「リソース」パラメータを必ず更新してください。 たとえば、
accounts
を、動的選択リスト・フィールドの基になるオブジェクトのREST API名に置き換えます。cx-pickerフラグメントに設定できるその他のパラメータについては、「cx-pickerフラグメントのパラメータ」を参照してください。
-
4. ピッカー・レイアウトの構成
最後に、「ピッカー・レイアウト」ルール・セットを変更して、ピッカーに表示するフィールドを選択します。 このルール・セットのレイアウトによって、ピッカーの実行時の外観が制御されます。
「ピッカー・レイアウト」ルール・セットおよびデフォルト・レイアウトは、カスタム・オブジェクトを含むオブジェクトごとに事前定義されています。
この例では、アカウント・ピッカーを追加します。これは、アカウント・オブジェクトの「ピッカー・レイアウト」ルール・セットを変更する必要があることを意味します。
-
「レイアウト」サイド・タブで、 ノードをクリックします。
-
「アカウント」タブの「ルール」「セット」タブで、「ピッカー・レイアウト」ルール・セットをクリックします。
-
「デフォルト」レイアウトを複製し、「開く」アイコンをクリックしてdefault_copyレイアウトを編集します。
-
フィールドのリストをスクロールして、任意のフィールドをピッカー・レイアウトに追加します。
ヒント: フィールドをより迅速に検索するには、フィルタ・フィールドを使用します。 たとえば、「フィルタ」フィールドにcity
と入力します。 -
フィールド・リストからフィールド「都市」を選択します。
フィールドを選択すると、リストの右下にあるフィールドのリストに表示されます。 オプションで、フィールドのハンドルを使用して、フィールドを目的のロケーションにドラッグできます。
ピッカー・フローのテスト
「値リスト」フィールドに追加したピッカーをテストできるようになりました。
payment_c-listページで、プレビュー・ボタンをクリックして、ランタイム・テスト環境の変更を表示します。
-
結果のプレビュー・リンクは次のようになります:
https://<servername>/fscmUI/redwood/cx-custom/payment_c/payment_c-list
-
プレビュー・リンクを次のように変更します:
https://<servername>/fscmUI/redwood/cx-custom/application/container/payment_c/payment_c-list
ノート: プレビュー・リンクに/application/container
を追加する必要があります。次のスクリーンショットは、データを使用したリスト・ページの外観を示しています。
-
アクション・バーに、
Create Payment
と入力します。 -
「支払の作成」をクリックします。
「支払の作成」ドロワーが表示されます。
-
「支払の作成」ドロワーで、「アカウント」フィールドの横にある3つのドットをクリックして、保存済検索のリストを表示します。
-
フィールドにテキストを入力すると、ピッカーは適応型検索を利用して一致した結果を返します。 次の例では、
pinnacle tech
と入力しました。ピッカーで、
austin
などの市区町村を検索してみてください。これにより、他のレコード属性の検索方法を確認できます。検索の仕組みを理解するには、Oracle Fusion Cloud Sales Automation Using Digital Sales (Redwood Sales)ガイドの検索およびリストの章の「フィールド内で検索」を参照してください。
-
ピッカーの外観に満足したら、編集レイアウトで同じステップを繰り返します。
2番目のレイアウトを構成する場合、新しいフィールド・テンプレートを作成し、ピッカー・フラグメントを再度構成する必要はありません。この手順で作成したフィールド・テンプレートを選択できます。
また、ピッカー・レイアウトを2回構成する必要はありません。
Push Gitコマンドを使用して作業内容を保存します。
Gitタブに移動し、変更内容を確認し、Gitプッシュを実行します(これはコミットとGitリポジトリへのプッシュの両方を行います)。