カスタム販売オブジェクトの管理
Oracle CX Sales and Fusion Serviceには、多くのビジネス・ニーズおよびシナリオに対応する標準オブジェクトが含まれています。 ただし、Oracle CX Sales and Fusion Serviceで情報を取得する一意のビジネス・コンポーネントがある場合は、常にカスタム・オブジェクトを作成できます。
カスタム・オブジェクトの使用例およびユースケースについては、「カスタム・オブジェクトの操作」を参照してください。
Oracle Application Composerでのカスタム・オブジェクトの作成
アプリケーション・コンポーザ・ツールを使用して、カスタムの最上位レベル・オブジェクトと子オブジェクトを作成できます。 これは、ビジネス・アナリスト、管理者およびプログラマがOracle CX Sales and Fusion Serviceを構成するために使用できるブラウザベースのツールです。 強力な機能: 以前にアプリケーション開発者のみが実行できたデータ・モデルの変更を行うことができます。
素早く: アプリケーション・コンポーザは設計時ランタイム・ツールでもあるため、Oracle CX Sales and Fusion Serviceから直接アプリケーションにナビゲートし、変更を加えて即時に表示できます。 詳細は、「売上の拡大」ガイドを参照してください。
- セキュリティ・オプションの設定
- ユーザーがオブジェクトにアクセスする方法を指定
- 必須属性を取得するためのフィールドの追加
- ユーザーがオブジェクト・レコードを操作できるように、作業領域ページにオブジェクトを表示
詳細は、「セールスとサービスの拡張」ガイドを参照してください。
カスタム・オブジェクトはどこにありますか。
- 「アプリケーション・コンポーザ」にナビゲートします。
- 「カスタム・オブジェクト」をクリックして、「オブジェクト」表のカスタム・オブジェクトのリストを表示します。
- 特定のオブジェクトのURIを表示するには、「RESTリソース」列で、そのオブジェクトに対応する「サービス」リンクをクリックします。 ブラウザのアドレス・バーからURIを切り取って貼り付けることができます。
- 特定のオブジェクトの説明を表示するには、「RESTリソース」列で、そのオブジェクトに対応する「説明」リンクをクリックします。
カスタム・オブジェクトの説明URIは/describe
で終わる点を除き、カスタム・オブジェクトとその説明のURIは同じであることに注意してください。 親オブジェクトのdescribeリンクから子オブジェクトURIを導出することもできます。 たとえば:
.../YourRESTApi/resources/<api version>/<custom object>
.../YourRESTApi/resources/<api version>/<custom object>/describe
.../YourRESTApi/resources/<api version>/<custom object>/<identifier>/<custom child object>
.../YourRESTApi/resources/<api version>/<custom object>/<identifier>/<custom child object>/<describe>
REST APIを使用したカスタム・オブジェクト・リソースの管理
作成したオブジェクトの検索方法がわかりました。次に、REST APIを使用してオブジェクトとどのように相互作用できるかを見てみましょう。 たとえば、カスタム・オブジェクトのレコードを作成、更新、表示または削除するには、標準オブジェクトの場合と同様に、対応するリソースをREST APIで管理します。
- 属性値リスト
- 添付(タスクおよびペイロードを含む)
- ノート(タスクおよびペイロードを含む)
- 関数、親レベルおよび子レベル
- カスタム保存済検索はサポートされていないため、カスタム・オブジェクトに対して問合せパラメータはサポートされていません。
- カスタム・オブジェクトの添付は、Base64でエンコードされたコンテンツで作成する必要があります。
- アプリケーション・コンポーザで作成されたカスタム・オブジェクト関数を公開するには、その表示を外部システムによるコール可能に設定します。 その後、公開されたカスタム・アクションをPOSTリクエストで呼び出すことができます。
- カスタムREST APIを使用する前に、カスタムREST APIでサンドボックスを公開する必要があります。 サンドボックス内のオブジェクトに対するREST APIコールは低速で、パフォーマンスが低下します。
カスタム・オブジェクト属性の追加
カスタム属性またはカスタム・オブジェクトにフィールドを定義できます。 このような追加されたカスタム属性は、RESTリクエストを介して管理されます。 次の例は、カスタム・オブジェクト・リソースにカスタム属性を追加する方法を示しています。
例
アプリケーション・コンポーザで、Productカスタム・オブジェクト・リソースにCustField_cカスタム属性を追加します。 カスタム属性を追加する前にメタデータを次に示します。
{
"Resources" : {
"Product_c" : {
"discrColumnType" : false,
"title" : "Product",
"titlePlural" : "Product",
"attributes" : [ {
"name" : "Id",
"type" : "integer",
"updatable" : false,
"mandatory" : true,
"queryable" : true,
"allowChanges" : "never",
"precision" : 32,
"title" : "Record ID",
"properties" : {
"fnd:FND_AUDIT_ATTR_ENABLED" : "false"
}
}
...
}
カスタム属性を追加した後のメタデータは次のとおりです:
{
"Resources" : {
"Product_c" : {
"discrColumnType" : false,
"title" : "Product",
"titlePlural" : "Product",
"attributes" : [ {
"name" : "Id",
"type" : "integer",
"updatable" : false,
"mandatory" : true,
"queryable" : true,
"allowChanges" : "never",
"precision" : 32,
"title" : "Record ID",
"properties" : {
"fnd:FND_AUDIT_ATTR_ENABLED" : "false"
}
}
...
{
"name" : "CustField_c",
"type" : "string",
"updatable" : true,
"mandatory" : true,
"queryable" : true,
"allowChanges" : "always",
"precision" : 80,
"title" : "Productrrf Name",
"maxLength" : "80",
"properties" : {
"Indexed" : "Y",
"fnd:OSN_ENABLED_ATTR" : "true",
"TOOLTIP" : null,
"description" : null,
"DISPLAYWIDTH" : "30",
"AttributeType" : "Text",
"ExtnCustom" : "Y"
}
...
}
ノート:
すべてのカスタム・オブジェクトには、レコードの作成時に移入されるConflictId属性が含まれます。 これは、レコードを識別し、重複レコードが作成されないようにするために使用されます。詳細は、『販売の拡張スタート・ガイド』を参照してください。
カスタム・オブジェクト間の関係
親オブジェクト・リソースは、最上位レベルのカスタム・オブジェクトの子オブジェクトを公開します。 最上位レベルのカスタム・オブジェクトでdescribe
操作を使用して、その子オブジェクトへのリンクを返すことができます。 子オブジェクト・リソースのURIは、これらの子オブジェクト・リンクから検索できます。
オブジェクトが相互に相互作用するには、オブジェクト間に関係を作成する必要があります。 関連オブジェクトは、標準オブジェクトまたはカスタム・オブジェクトのいずれかです。 たとえば、従業員オブジェクトの属性をトラブル・チケット・オブジェクト・ワークスペースで使用できるようにする場合は、従業員オブジェクトとトラブル・チケット・オブジェクトの間に関係を定義する必要があります。
- Parent-child: 親子関係を定義すると、子オブジェクトへのリンクが親オブジェクトの説明に含まれます。 子オブジェクトには独自のワークスペースがなく、親オブジェクト・レコードが削除されると、子オブジェクトのレコードが削除されます。
- 参照: 参照関係を定義すると、ソース・オブジェクトの主キーが、ターゲット・オブジェクトの説明に外部キーとして含まれます。
交差オブジェクト
- 割当リソースには、ソース・オブジェクトとしてトラブル・チケットがあり、ターゲット・オブジェクトとしてリソースがあります。 オブジェクト・トラブル・チケットとリソースには多対多の関係があります。
- 割当リソースは、トラブル・チケットとリソースの両方の子リソースです。
- すべてのリソースIDを取得するためのトラブル・チケット・オブジェクトへの1つのコール。
- 各リソースの追加詳細を取得するために、リソース・オブジェクトに対して1回コールします。