スマート処理の作成
アプリケーション・コンポーザを使用してカスタム・オブジェクトを作成した場合は、アクション・バーが実行時に適切なアクションを移入できるように、対応するスマート・アクションを作成する必要があります。 CX拡張ジェネレータでは、トップレベル・オブジェクトおよび子オブジェクトに必要なスマート処理を作成できますが、アプリケーション・コンポーザを使用して関連オブジェクトに対してスマート処理を作成する必要があります。 このトピックでは、様々なタイプのカスタム・オブジェクトに対して作成する必要があるスマート処理の例をいくつか示します。
この章の例をフォローしている場合は、次に説明するスマート・アクションを作成する必要があります。
アクション・バー内のスマート・アクション
Oracle SalesのRedwoodユーザー・エクスペリエンスでは、アクション・バーは、ユーザーがキーワードを入力して情報にアクセスして更新し、アクションを実行できる多数のページの上部にあるフィールドです。 たとえば、ユーザーは「作成」または「追加」を入力でき、アクション・バーに可能なアクションのリストが自動的に移入されます。
アクション・バーのスクリーンショットを次に示します:

create
と入力した後、アクション・バーと推奨されるアクションのスクリーンショットを次に示します:
拡張ジェネレータでは、トップレベル・カスタム・オブジェクトおよび子カスタム・オブジェクトに必要なスマート処理を作成できますが、アプリケーション・コンポーザを使用して関連オブジェクトに対してスマート処理を作成する必要があります。 関連するオブジェクトに対して作成する必要があるスマート処理のリストを次に示します:
オブジェクト・タイプ |
このスマート処理の作成: |
---|---|
関連オブジェクト(1対多関係経由) |
「関連オブジェクトに対する「作成」スマート処理の作成(1対多)」を参照してください。 |
関連オブジェクト(多対多関係経由) |
「関連オブジェクトに対する「追加」スマート処理の作成(多対多)」を参照してください。 |
アクション・バーでのアクションの表示について
拡張にサブビューを追加すると、表示アクションが自動的に作成され、アクション・バーに表示されます。
ただし、表示アクションはスマート・アクションではなく、手動で作成する必要はありません。
「表示」アクションについてを参照してください。
関連オブジェクトに対する「作成」スマート処理の作成(1対多)
この手順は、関連オブジェクトに対してスマート処理を作成する方法を示しています。
PaymentオブジェクトがShipmentというカスタム・オブジェクトとの1対多関係にある例を見てみましょう。 実行時には、ユーザーは支払から直接出荷を作成できる必要があります。 これを有効にするには、Shipmentオブジェクトに対して「作成」スマート・アクションを作成する必要があります。
まず、アプリケーション・コンポーザから関係名を取得する必要があります。
「出荷の作成」スマート・アクションを作成するには:
-
サンドボックスを作成します
-
アプリケーション・コンポーザの「共通設定」メニューで、「スマートなアクション」をクリックします。
-
ページの上部で、「作成」をクリックします。
-
「Kind of Action」ページで、次の手順を実行します:
-
「UIベースのアクション」をクリックします。
-
「続行」をクリックします。
-
-
「基本詳細」ページで、次の手順を実行します:
-
名前フィールドに、スマート・アクション名を入力します。
たとえば、
Create Shipment
と入力します。 -
オブジェクト・フィールドで、1対多関係のソース・オブジェクトを選択します。
この場合は、「支払」を選択します。
-
「続行」をクリックします。
-
-
「可用性」ページで、次の手順を実行します:
-
「アプリケーション」フィールドで、「販売」を選択します。
-
「UI可用性」フィールドで、「リスト・ページ」を選択します。
-
「続行」をクリックします。
-
-
「処理タイプ」ページで、次の手順を実行します:
-
「タイプ」フィールドで、「作成」を選択します。
-
ターゲットの「オブジェクト」フィールドのトップ・レベルの「オブジェクト」見出しで、1対多関係のターゲット・オブジェクトを選択します。
たとえば、「出荷」を選択します。
-
フィールド・マッピング・リージョンで、「追加」をクリックします。
-
処理列で、編集アイコンをクリックし、次のフィールド値を設定します:
フィールド・マッピング
列
値
名前
ソース・オブジェクトのIDと関係名を保持する1対多関係のターゲット・オブジェクト上のフィールドを選択します。 これはターゲット・オブジェクト(出荷)の標準フィールドです。
フィールド名の形式は、常に
<Source object name>_Id_<Relationship name>
です。 たとえば、「支払ID PaymentShipment1M (Payment_Id_PaymentShipment1M)」を選択します。ノート: このフィールドは、アプリケーション・コンポーザのターゲット・オブジェクトには表示されません。タイプ
属性
値
「レコードID (ID)」を選択します。 これはソース・オブジェクト(支払)の標準フィールドです。
つまり、ユーザーが出荷を作成すると、「作成」スマート・アクションによって、支払のIDが出荷レコードの「支払ID PaymentShipment1M (Payment_Id_PaymentShipment1M)」属性にデフォルト設定されます。
ユーザーがページにナビゲートして出荷を作成するときに、出荷の作成ページに支払レコードからの追加の値を事前移入できます。 出荷の作成スマート処理を構成する方法を次に示します。
フィールド・マッピング
何を渡すのか。
スマート処理設定
ソース・オブジェクト・レコードからターゲット・オブジェクト・レコードに値を渡します
たとえば、支払オブジェクトと出荷オブジェクトの両方にEメール・フィールドがあるとします。 出荷の作成スマート処理を構成して、支払のEメールを新しい出荷レコードに事前移入できます。
-
名前: 電子メール(Email_c)
-
タイプ: 属性
-
値: 電子メール(Email_c)
ハードコードされた値をターゲット・オブジェクト・レコードに渡します
出荷の作成スマート処理は、常にハードコードされた値を新しい出荷レコードに渡すように構成できます。 たとえば、出荷の作成スマート処理によって出荷レコードが作成されるたびに、出荷名は
Manual payment
として事前移入されます。-
名前: 出荷名(RecordName)
-
タイプ: User-entered
-
値: 手動支払
前述の設定のスクリーンショットを次に示します:
-
-
「完了」をクリックします。
-
「続行」をクリックします。
-
-
「処理詳細」ページで、次の手順を実行します:
-
「ナビゲーション・ターゲット」フィールドで、「ローカル」を選択します。
-
「続行」をクリックします。
-
-
「確認メッセージ」ページで、次の手順を実行します:
-
「処理実行後の確認メッセージ」フィールドに、オプションでユーザーに表示するメッセージを入力します。
-
「トークンの追加」リージョンを使用して、メッセージにトークンを含めます。
-
「続行」をクリックします。
-
-
「レビューおよび発行」ページで、「発行」をクリックします。
このスマート処理を作成した後、CX拡張ジェネレータが出荷オブジェクトのページおよびレイアウトを生成したことを確認してください。 次に、出荷パネルとサブビューを支払詳細ページに追加します:
関連オブジェクトに対する「追加」スマート処理の作成(多対多)
この手順では、オブジェクトが多対多関係にある関連オブジェクトのスマート・アクションを作成する方法を示します。
PaymentオブジェクトがContactオブジェクトとの多対多関係にある例を見てみましょう。 実行時に、ユーザーは担当者を支払に追加できる必要があります。 これを有効にするには、Paymentオブジェクトに対して「追加」スマート・アクションを作成する必要があります。
-
サンドボックスを作成します
-
アプリケーション・コンポーザの「共通設定」メニューで、「スマートなアクション」をクリックします。
-
ページの上部で、「作成」をクリックします。
-
「Kind of Action」ページで、次の手順を実行します:
-
「UIベースのアクション」をクリックします。
-
「続行」をクリックします。
-
-
「基本詳細」ページで、次の手順を実行します:
-
名前フィールドに、スマート・アクション名を入力します。
たとえば、
Add Contact
と入力します。 -
オブジェクト・フィールドで、多対多関係のソース・オブジェクトを選択します。
この場合は、「支払」を選択します。
-
「続行」をクリックします。
-
-
「可用性」ページで、次の手順を実行します:
-
「アプリケーション」フィールドで、「販売」を選択します。
-
「UI可用性」フィールドで、「リスト・ページ」を選択します。
-
「続行」をクリックします。
-
-
「処理タイプ」ページで、次の手順を実行します:
-
「タイプ」フィールドで、「追加」を選択します。
-
ターゲットの「オブジェクト」フィールドで、多対多関係の交差オブジェクトを選択します。
たとえば、PaymentContactMMInter_Src_Payment_cToPaymentContactMMInter_c_Tgtを選択します。
-
「続行」をクリックします。
-
-
「処理詳細」ページで、次の手順を実行します:
-
「ナビゲーション・ターゲット」フィールドで、「ローカル」を選択します。
-
「続行」をクリックします。
-
-
「確認メッセージ」ページで、次の手順を実行します:
-
「処理実行後の確認メッセージ」フィールドに、オプションでユーザーに表示するメッセージを入力します。
-
「トークンの追加」リージョンを使用して、メッセージにトークンを含めます。
-
「続行」をクリックします。
-
-
「レビューおよび発行」ページで、「発行」をクリックします。
このスマート処理を作成した後、ユーザーが支払レコードの担当者を追加および表示できるように、担当者UIコンポーネントを支払詳細ページに追加します。
トップレベル・オブジェクトの「削除」スマート・アクションの作成
拡張ジェネレータでトップレベルのカスタム・オブジェクトに必要なスマート処理を作成できますが、既存の拡張に新しいカスタム・オブジェクトを追加した場合は、スマート処理を手動で作成する必要がある場合があります。 その場合は、これらの指示に従ってください。
トップレベル・オブジェクトの「削除」スマート・アクションを作成するには:
-
サンドボックスを作成します
-
アプリケーション・コンポーザの「共通設定」メニューで、「スマートなアクション」をクリックします。
-
ページの上部で、「作成」をクリックします。
-
「Kind of Action」ページで、次の手順を実行します:
-
「RESTベースのアクション」をクリックします。
-
「続行」をクリックします。
-
-
「基本詳細」ページで、次の手順を実行します:
-
名前フィールドに、スマート・アクション名を入力します。
たとえば、
Delete Payment
と入力します。ノート: 必要に応じて、スマート・アクションの定義時に入力した文字列を翻訳できます。 たとえば、Delete Payment
文字列をスペイン語に変換できます。 「ユーザー・インタフェース・テキスト・ツールを使用してテキストを変更」を参照してください。 -
オブジェクト・フィールドで、オブジェクトを選択します。 この場合は、「支払」を選択します。
-
「続行」をクリックします。
-
-
「可用性」ページで、次の手順を実行します:
-
「アプリケーション」フィールドで、「販売」を選択します。
-
「UI可用性」フィールドで、「リスト・ページ」を選択します。
-
「続行」をクリックします。
-
-
「処理詳細」ページで、次の手順を実行します:
-
「パス」フィールドで、/crmRestApi/resources/11.13.18.05/Payment_c/{Payment__c_Id}を選択します。
-
メソッド・フィールドで、DELETEを選択します。
-
パス・パラメータ・リージョンのアクション列で、鉛筆アイコンをクリックします。
-
値フィールドで、「レコードID (ID)」を選択します。
-
「完了」をクリックします。
-
「続行」をクリックします。
-
-
「確認メッセージ」ページで、次の手順を実行します:
-
「プライマリ・メッセージ」フィールドに、
Are you sure you want to delete this record?
と入力 -
「続行ボタン・ラベル」フィールドに、
Yes
と入力します。 -
「取消ボタンのラベル」フィールドに、
No
と入力します。 -
「続行」をクリックします。
-
-
「レビューおよび発行」ページで、「発行」をクリックします。
子オブジェクトに対する「作成」スマート・アクションの作成
拡張ジェネレータで子オブジェクトに必要なスマート処理を作成できますが、既存の拡張に新しい子オブジェクトを追加した場合は、スマート処理を手動で作成する必要がある場合があります。 その場合は、これらの指示に従ってください。
カスタム子オブジェクトの「作成」スマート・アクションを作成するには:
-
サンドボックスを作成します
-
アプリケーション・コンポーザの「共通設定」メニューで、「スマートなアクション」をクリックします。
-
ページの上部で、「作成」をクリックします。
-
「Kind of Action」ページで、次の手順を実行します:
-
「UIベースのアクション」をクリックします。
-
「続行」をクリックします。
-
-
「基本詳細」ページで、次の手順を実行します:
-
名前フィールドに、スマート・アクション名を入力します。
たとえば、
Create Payment Lines
と入力します。 -
オブジェクト・フィールドで、子オブジェクトの親オブジェクトを選択します。 この場合は、「支払」を選択します。
-
「続行」をクリックします。
-
-
「可用性」ページで、次の手順を実行します:
-
「アプリケーション」フィールドで、「販売」を選択します。
-
「UI可用性」フィールドで、「リスト・ページ」を選択します。
-
「続行」をクリックします。
-
-
「処理タイプ」ページで、次の手順を実行します:
-
「タイプ」フィールドで、「作成」を選択します。
-
ターゲットの「オブジェクト」フィールドで、子オブジェクトを選択します。
たとえば、PaymentLineCollection_cを選択します。
-
「フィールド・マッピング」リージョンで、「追加」をクリックします。
-
処理列で、編集アイコンをクリックし、次のフィールド値を設定します:
属性デフォルト
列
値
名前
親オブジェクトのIDを保持する子オブジェクトのフィールドを選択します。 これは子オブジェクトの標準フィールドです。
フィールド名の形式は、常に
<Parent object name>_Id_c
です。 たとえば、Payment_Id_cを選択します。タイプ
属性
値
「レコードID (ID)」を選択します。 これはトップレベル・オブジェクトの標準フィールドです。
つまり、ユーザーが支払明細を作成すると、「作成」スマート・アクションによって支払のIDが支払明細のPayment_Id_c属性にデフォルト設定されます。
-
「完了」をクリックします。
-
「続行」をクリックします。
-
-
「処理詳細」ページで、次の手順を実行します:
-
「ナビゲーション・ターゲット」フィールドで、「ローカル」を選択します。
-
「続行」をクリックします。
-
-
「確認メッセージ」ページで、次の手順を実行します:
-
「処理実行後の確認メッセージ」フィールドに、オプションでユーザーに表示するメッセージを入力します。
-
「トークンの追加」リージョンを使用して、メッセージにトークンを含めます。
-
「続行」をクリックします。
-
-
「レビューおよび発行」ページで、「発行」をクリックします。
サンドボックスの公開
拡張機能をまだテストしている場合は、サンドボックスをまだ公開する必要はありません。
ただし、準備ができている場合は、必要なスマート処理を作成した後にサンドボックスを公開できます。