46 CPQ CloudからのJCS - SaaS Extension RESTful Webサービスの使用
このドキュメントでは、文書を見積もるためにパネル、属性およびアクションを追加することにより、CPQ CloudのUIをカスタマイズする方法について学習します。また、CPQ CloudのBML (BigMachines Extensible Language)も使用して、JCS - SaaS Extensionインスタンスでホストされる外部RESTful Webサービスを起動します。
注意:
他のCPQ Cloudエンティティを使用して、属性、承認フロー、文書などの同様の結果を得ることができます。このドキュメントでは、例としてアクションを選択しました。この決定は、特定のビジネス・ロジックや要件によって異なる可能性があります。「CPQ Cloudを拡張するための戦略の選択」を参照してください。前提条件
Oracle CPQ Cloudのコマース・ワークフローをカスタマイズする前に、次の各事項について検討する場合があります。
-
(ユーザーを作成または変更できる)「スーパー・ユーザー」権限を伴うFullAccessロールを持つユーザーが少なくとも1人いることを確認します。
注意:
FullAccessロールを持つユーザーがいない場合、管理者に確認してください。 -
デプロイされて稼働中のJCS - SaaS Extensionアプリケーションがあることを確認します。「ADFを使用しない場合の開発に関する考慮事項」を参照してください。
-
「CPQ Cloudのカスタマイズ機能および統合機能の理解」を必ず読んでおいてください。
CPQ CloudのBML URLアクセス関数について
BML URLアクセス関数を使用して、RESTful WebサービスからHTTPメッセージを直接送受信できます。これを目的として、urldatabypost
およびurldatabyget
と呼ばれる2つのライブラリ関数を使用して、それぞれPOST
およびGET
をコールできます。次の表に、URLアクセス関数で使用可能なすべてのメソッドをまとめます。
関数 | パラメータ | 説明 |
---|---|---|
String makeurlparam({'key':value}) |
{‘key1’:value1,’key2’:value2…}という形式でカンマ区切りのペアが含まれるJSONに似たフォーマットの文字列 | この関数を使用して、アンパサンド(&)で区切られたURLパラメータを構築します。 |
String urldata(String url, String httpMethod, [Dictionary headers, [String parameters]]) |
url ( httpMethod (“ headers ( parameters ( |
この関数を使用して、渡されたパラメータに応じてHTTP GET またはPOST を使用してURLからデータを取得します。 |
String urldatabyget(URL, url_param, default_value) |
url ( url_param ( default_value ( |
この関数を使用して、GET メソッドを使用してURLからデータを取得します。 |
String urldatabypost(String url, String parameters, String defaultValue, [Dictionary headers, [Boolean returnErrorResponse]]) |
url ( parameters ( default_value ( headers ( returnErrorResponse ( |
この関数を使用して、POST メソッドを使用してURLにデータを送信します。 |
urldatabypostasync((String url, String parameters, String defaultValue, String callbackActionVarName, [Dictionary headers, [Boolean returnErrorResponse]]) |
url ( parameters ( defaultValue ( callbackActionVarName ( headers ( returnErrorResponse ( |
この関数を使用して、POST メソッドを使用して非同期でコールするか、カスタムHTTP ヘッダーを渡します。 |
「CPQ Cloudのカスタマイズ機能および統合機能の理解」を参照してください。BML API内の他のBML関数について学習するには、オンライン・ヘルプの「BMLの使用」、「関数およびスクリプト」を参照してください。
カスタム機能を実行するためのボタンのCPQ Cloud見積りへの追加
レイアウト・エディタを使用してパネル、フィールド、ルールおよびアクション・ボタンを追加することにより、CPQ Cloud見積りをカスタマイズしたり、デフォルト機能を拡張したりできます。
たとえば、アクション・ボタンが含まれる新しいカスタム・パネルを作成可能で、そのボタンをクリックすると、コマース・プロセス・ワークフロー内のデータをフェッチする外部JCS - SaaS Extension RESTful Webサービスを起動することができます。
新規アクションの作成
アクションは、コマース・ワークフロー内のイベントをトリガーできるCPQ Cloud内の論理コンポーネントです。
アクション内では、CPQ Cloudには、属性、文書および他のCPQ Cloudエンティティなどの他のコンポーネントより複雑なユースケースを実現する機能が用意されています。CPQ Cloudにより、一連のデフォルト・アクション(システム生成済)が作成され、カスタム・アクションも使用可能になります。これらのアクションは、ボタンやリンクなどのUIウィジェットにアタッチできます。
RESTful Webサービス・コールを起動するボタン上の新しいカスタム・アクションを作成する手順:
CPQ Cloud BML APIを使用したRESTful Webサービスの起動
BML URLアクセス・ライブラリの機能を使用して、BMLエディタを使用してRESTful Webサービス・コールを作成できます。