Oracle® Fusion Applications拡張性ガイド 11g リリース1 (11.1.3) B69967-01 |
![]() 目次 |
![]() 次へ |
![]() 次へ |
この章の内容は次のとおりです。
オブジェクト・ワークフローとOracle FusionCRMアプリケーション・コンポーザ: 連携
オブジェクト・ワークフローとアウトバウンド・メッセージ: 連携
オブジェクト・ワークフローは、事前にトリガーとして定義していた条件に基づいてプロセスを起動し、編成するビジネス・プロセスです。オブジェクト・ワークフローを構成するには、管理者権限が必要です。
オブジェクト・ワークフローを構成するには、ワークフローを作成するオブジェクトを選択し、そのオブジェクトに関するイベント・ポイント、イベント条件、イベント処理を指定します。
この図はオブジェクト・ワークフローページを示します。
この図ではオブジェクト・ワークフローの構成、起動などについて、全体的なプロセスを示しています。
一般的なオブジェクト・ワークフローの定義は次のとおりです。
ビジネス・オブジェクト。ビジネス・オブジェクトまたはオブジェクトは、製品またはビジネス・ニーズに基づいて定義されたカスタム・オブジェクトで構成された標準オブジェクトです。
イベント・ポイント。イベント・ポイントは、オブジェクトと関連付けられたイベントが発生時のインスタンスです。イベント・ポイントには、次のタイプがあります。
レコードの作成時。
レコードの更新時。
イベント条件。イベント条件は、オブジェクト・ワークフローを起動するトリガーです。論理演算、数値演算、フィールド値の参照をサポートする式とイベント・ポイントの組み合わせです。式を定義すると、更新または作成のイベント・ポイントのたびにオブジェクト・ワークフローが起動されるのを防ぎます。
イベント処理。イベント処理では、オブジェクトの一連の条件が満たされたときにオブジェクト・ワークフローで予想されている処理を判断します。
イベント処理には、次のタイプがあります。
フィールド更新。
Eメール通知。
タスク作成。
アウトバウンド・メッセージ。
アプリケーション・コンポーザでは、現状の標準的なビジネス・オブジェクトのカスタマイズやビジネス・ニーズに基づいた新しいカスタム・ビジネス・オブジェクトを作成できます。オブジェクト・ワークフローは「標準オブジェクト」と「カスタム・オブジェクト」の両方を使用して定義することができます。これらのオブジェクトの作成および構成方法によって、ワークフローを定義する際に、コンテキストがそのオブジェクトに関連しているデータのみを選択肢として利用可能にすることができます。たとえば、トリガー条件を定義する場合に、選ばれたオブジェクトに関連するフィールドだけを式エディタにリストします。
式エディタは、オプションでトリガー条件の定義に使用するフィールド参照を含む、論理演算と数値演算の構築をサポートします。式エディタのフィールドには、ワークフローを定義しているオブジェクトに基づくデータが移入されています。式に無効な属性名が含まれている場合、式エディタは警告を表示します。しかし、その属性名が実際に無効かどうかは確認する必要があります。ランタイム時に作成された属性が存在している場合は、警告を無視することができます。
この図はオブジェクト・ワークフローのgroovy条件を定義する式エディタを示しています。
式エディタを使用して、オブジェクト・ワークフローをいつトリガーするかを判断するGroovyベースのアプリケーション・ロジックを記述します。トリガー条件として使用できる式の例は、次のとおりです。
例1:
Status=='IN_PROGRESS' && BudgetAvailableDate==Today() + 30
例2:
if (isAttributeChanged('PrimaryContactPartyName') &&
PrimaryContactPartyName =='Business World') return true; else return false;
例3:
WinProb>10 || WinProb<50
また、式エディタを使用してトリガー条件を構築する際には、次の点も考慮してください。
条件の一部として返すブール値が有効であることを確認してください。非ブール値を返すと、ランタイム・エラーが起こる可能性があります。
評価ロジックが複雑なときは、return true
またはreturn false
を使用して明示的にブール値を返し、コードのインデントによりランタイム・エラーのリスクを最小限にしてください。
参照値については、表示値ではなく、参照コードを使用してください。
比較には<
, >
, ==
を使用します。
「レコードの更新時」のイベント・ポイントでは、常に関数isAttributeChanged
を使用してどのフィールド更新でオブジェクト・ワークフローをトリガーするかを指定し、冗長な処理のコールは避けてください。
明示的なブール値を返さないときはGroovy型の制約に注意してください。
ロギング機能を使用して条件をデバッグし、「共通設定」ペインで「ランタイム・メッセージ」を選択して生成されたログをレビューしてください。
詳細は、My Oracle Support(https://support.oracle.com)の「Developer's Guide to Scripting in Oracle Fusion CRM Application Composer」を参照してください。
イベント処理定義中に実行スケジュールをオプションで設定してイベント処理がいつ発生するかを指定できます。それ以外は、イベント処理はすぐに実行されます。複数のイベント処理を構成した場合、ほかのイベント処理がトリガーされる前に、「フィールド更新」が発生します。「フィールド更新」以外のイベント処理には、特定の順序はなく、イベント処理は実行スケジュールの有無やその構成方法に基づいてトリガーされます。イベント処理については、そのイベント処理がワークフローのトリガーまたは発生の日付の前後に実行することが必要かどうかに基づいて時間ルールを設定することができ、「時間」、「日」、「週」で期間を指定することもできます。イベント処理を過去のある時刻にスケジュールした場合、そのイベント処理はトリガーされた後、すぐに実行されます。
この図は「実行スケジュール」リージョンを示しています。
Oracle Fusion CRMアプリケーション・コンポーザは、ブラウザ・ベースの構成ツールです。これは、アプリケーション拡張のメカニズムを提供するCRM Extensibility Frameworkの一部を成しています。アプリケーション・コンポーザを使用してオブジェクト・ワークフローを構成するには、管理者権限が必要です。
この図は、Oracle Fusion CRMアプリケーション・コンポーザによるオブジェクト・ワークフロー定義の仕組みを示しています。
アプリケーション・コンポーザでは、現状の標準的なビジネス・オブジェクトのカスタマイズやビジネス・ニーズに基づいた新しいカスタム・ビジネス・オブジェクトを作成できます。オブジェクト・ワークフローは「標準オブジェクト」と「カスタム・オブジェクト」の両方を使用して定義することができます。 これらのオブジェクトの作成および構成方法によって、ワークフローを定義する際に、コンテキストがそのオブジェクトに関連しているデータのみを選択肢として利用可能にすることができます。たとえば、トリガー条件を定義する場合に、選ばれたオブジェクトに関連するフィールドだけを式エディタにリストします。
ここでは、オブジェクト・ワークフローを採用してビジネス・プロセスを自動化するビジネス・シナリオの例を示します。
ある会社の営業部では、管理者がビジネス・プロセスを自動化しようと考え、初回商談クローズ日をどの商談もその作成日から90日後に自動的に初回のクローズをするよう設定するとします。情報管理者のあなたは、その管理者の指示に基づいてオブジェクト・ワークフローを作成しなければなりません。
この図は、オブジェクト・ワークフロー定義の一部としてトリガーされるイベント処理の例を示しています。
この図は、トリガー条件定義後、オブジェクト・ワークフロー作成ページから呼び出したフィールド更新作成ページを示しています。
ワークフローを作成するには、「商談」を1つのオブジェクトとして選択し、イベント・ポイントを「レコードの作成時」に設定します。式エディタを用いて、イベント条件「クローズ日」をNull
に設定します。
トリガー条件を定義した後、イベント処理「フィールド更新」を選択して、式エディタで「クローズ日」を「現在の日付」プラス90日とします。つまり、ユーザーがこのシステムに新しい「商談」を作成したときに、ワークフローは自動的に「クローズ日」を作成日から90日後として起動したことになります。
ある会社の営業部では、管理者がビジネス・プロセスを設定しようと考え、クローズ日が現在または過去で、ステータスがオープンの商談が更新された場合には、特定の受信者宛てにリマインダEメールを送り、クローズ日を15日間延長することにしたとします。情報管理者のあなたは、その管理者の指示に基づいてオブジェクト・ワークフローを作成しなければなりません。
この図は、オブジェクト・ワークフロー定義の一部として複数のイベント処理がトリガーされる場合の例を示しています。
この図は、トリガー条件定義後、オブジェクト・ワークフロー作成ページから呼び出したEメール通知作成ページを示しています。
2つのイベント処理を行うオブジェクト・ワークフローを作成するには、「商談」オブジェクトを選択し、「レコードの更新時」をイベント処理として設定します。式エディタを使用して、イベント条件「クローズ日」は「現在の日付」もしくはそれ以前、「ステータス」は「オープン」に設定します。
トリガー条件を定義したら、イベント処理「フィールド更新」を選択して、式エディタを使用して式を定義し、「クローズ日」を15日延期します。もう1つのイベント処理は「Eメール通知」とし、受信者を指定します。この結果、「商談」が更新されると、ワークフローがイベント条件をチェックすることになります。条件が満たされていれば、指定された受信者にEメールが送られ、「クローズ日」は15日間延長されます。
オブジェクト・ワークフロー定義の一部として、更新するフィールドとそのフィールドに割り当てる値を指定すると、自動的なフィールドの更新を構成することができます。オブジェクト・ワークフローでフィールドの更新を構成するには、管理者権限が必要です。
この図は、フィールド更新の構成と起動の仕組みを示しています。
オブジェクト・ワークフローでフィールドの更新を構成するには、「オブジェクト」を選択し、ワークフローに意味のある「名前」を付けます。イベントのトリガー条件を定義し、「フィールド更新」をイベント処理として選択し、選択したオブジェクトの1つまたは複数のフィールドを構成して更新します。
「フィールド更新」のイベント処理を構成するときは、フィールド更新処理に関する「名前」と「摘要」を定義し、オプションでその更新をトリガーする「実行スケジュール」を設定します。更新するフィールドを選択すると、フィールドのタイプによっては、フィールド更新処理の構成のためにそのページのオプションが大きく変化します。たとえば、「日付」タイプのフィールドを選択すると、「日付ピッカー」が表示されます。
静的選択リストでは、フィールド値がアルファベット順、あるいは定義によって「高」、「中」、「低」などの表示順序になる場合があります。表示順序をもつ静的フィールドを更新する場合は、フィールド更新中にそのフィールドにリストの次の値を移入するか、それとも前の値を移入するかを指定することができます。たとえば、「高」、「中」、「低」の表示順序で言えば、フィールド更新中、「高」を「中」(リストの次の値)に、あるいは「低」を「中」(リストの前の値)に変更することができます。ただし、現在の値が「低」で、イベント処理がリストの次の値を入力を使用して構成されていると、「低」はすでに表示順序の最後の値なので、処理実行時にフィールドは更新されません。「詳細フィールドの更新」オプションを使用して更新用の追加のフィールドを選択してください。
フィールド更新イベント処理は同じオブジェクトに作用してイベントを実行します。たとえば、「商談」オブジェクトを作成し、「クローズ日」を指定しなかった場合は、「クローズ日」を自動的に作成日の90日後に設定する「フィールド更新」を定義することができます。
イベント処理定義中に実行スケジュールをオプションで設定してイベント処理がいつ発生するかを指定できます。それ以外は、イベント処理はすぐに実行されます。複数のイベント処理を構成した場合、ほかのイベント処理がトリガーされる前に、「フィールド更新」が発生します。「フィールド更新」以外のイベント処理には、特定の順序はなく、イベント処理は実行スケジュールの有無やその構成方法に基づいてトリガーされます。イベント処理については、そのイベント処理がワークフローのトリガーまたは発生の日付の前後に実行することが必要かどうかに基づいて時間ルールを設定することができ、「時間」、「日」、「週」で期間を指定することもできます。イベント処理を過去のある時刻にスケジュールした場合、そのイベント処理はトリガーされた後、すぐに実行されます。
オブジェクト・ワークフローを利用して、希望の受信者に対して自動化されたプロセスでEメールで通知を送ることができます。オブジェクト・ワークフローでEメール通知を構成するには、管理者権限が必要です。
たとえば、ある商談について受注確度が更新されたときに、必要な情報とともにその商談を割り当てられているリソースに対して、自動的にEメール・アラートが送られるワークフローを設定することができます。
この図は、オブジェクト・ワークフローの一部としてEメール通知を構成し、起動する方法を示しています。
オブジェクト・ワークフローでEメール通知を構成するには、「オブジェクト」を選択し、ワークフローに意味のある「名前」と「摘要」を付けます。イベントのトリガー条件を定義し、「Eメール通知」をイベント処理として選択し、選択したオブジェクトの1つまたは複数の通知を構成します。
「Eメール通知」のイベント処理を構成するときは、Eメール通知処理に関する「名前」と「摘要」を定義し、オプションでその通知をトリガーする「実行スケジュール」を設定します。「名前」、「摘要」、「件名」などの一部または全体を「検索」パラメータとして、あるいはテンプレートが「アクティブ」かどうかを指定して、Eメール・テンプレートを検索します。使用するテンプレートを選択し、Eメール・アラートで必要とする情報を提供します。Eメール・アラート用に選択するフィールドは、ランタイム中に移入されます。
「受信者タイプ」リスト・ボックスを使用して、リソースのリストを選択してEメール通知を送るか、「固有のEメール・アドレス」をコンマで区切って入力します。Eメール通知は、関連ユーザー、ロール、固有のユーザーなど、「受信者タイプ」に応じて構成することができます。たとえば、あるユーザーはイベント処理が定義されているオブジェクトの作成者かもしれませんし、最近レコードを更新した人、直接・間接の部下、あるいは、チームとして働いている営業リソースなど、さまざまな場合が考えられます。
イベント処理定義中に実行スケジュールをオプションで設定してイベント処理がいつ発生するかを指定できます。それ以外は、イベント処理はすぐに実行されます。複数のイベント処理を構成した場合、ほかのイベント処理がトリガーされる前に、「フィールド更新」が発生します。「フィールド更新」以外のイベント処理には、特定の順序はなく、イベント処理は実行スケジュールの有無やその構成方法に基づいてトリガーされます。イベント処理については、そのイベント処理がワークフローのトリガーまたは発生の日付の前後に実行することが必要かどうかに基づいて時間ルールを設定することができ、「時間」、「日」、「週」で期間を指定することもできます。イベント処理を過去のある時刻にスケジュールした場合、そのイベント処理はトリガーされた後、すぐに実行されます。
Oracle Fusionのタスクは、BPELのヒューマンタスクに対応しており、BPELのワークリスト・アプリケーションでも使用可能です。Oracle Fusionのタスクについてオブジェクト・ワークフローを構成するには、管理者権限が必要です。
オブジェクト・ワークフローは、1つのオブジェクトについてタスクの自動作成や自動割り当てをトリガーするように構成することができます。タスク・イベント処理は、タスクの作成をサポートするように構成されているオブジェクトに限って定義することができます。他のオブジェクトについては、タスクのオプションは無効です。
この図は、オブジェクト・ワークフローの一部としてのタスクの構成と起動の仕組みを示しています。
「タスク作成」イベント処理でオブジェクト・ワークフローを定義するには、「オブジェクト」を選択し、ワークフローに意味のある「名前」と「摘要」を与えます。イベントのトリガー条件を定義し、「タスク作成」をイベント処理として選択し、選択したオブジェクトについてタスクを構成します。
「タスク作成」のイベント処理を構成するときは、タスク処理に関する「名前」と「摘要」を定義し、オプションで「実行スケジュール」を設定します。
「タスク作成」イベント処理を定義しているオブジェクトが顧客を含んでいれば、その顧客は自動的に作成されるタスクに含まれます。
「タスク詳細」を使用して、要件に基づいてタスクを構成します。
タスク通知のために、適宜、「件名」と「摘要」を選択します。
タスクの「開始日」と「期限」を選択します。日付を選択する場合は、それらの日付の論理的条件も、たとえば、「期限」は「開始日」の30日後でなければならないというように決めることができます。
タスクの「所有者」と「割当先」を選択します。 これらのリストの値は、タスクを定義しているオブジェクトに応じて変化します。たとえば、ある商談オブジェクトでは、「割当先」リストに所有者、リソース・チーム、メンバーのアクセス・レベルの異なるリソース・チーム、さまざまなメンバー機能などが含まれています。
会議、管理など、タスクが属する「カテゴリ」を選択します。
タスクに「優先度」を割り当てます。 デフォルト値は3
です。
たとえば、ある商談のステータスが「クローズ日」になっても依然として「オープン」である場合に、「タスク作成」イベント処理を使用してその商談の所有者にタスクのフォロー・アップを割り当てることができます。
イベント処理定義中に実行スケジュールをオプションで設定してイベント処理がいつ発生するかを指定できます。それ以外は、イベント処理はすぐに実行されます。複数のイベント処理を構成した場合、ほかのイベント処理がトリガーされる前に、「フィールド更新」が発生します。「フィールド更新」以外のイベント処理には、特定の順序はなく、イベント処理は実行スケジュールの有無やその構成方法に基づいてトリガーされます。イベント処理については、そのイベント処理がワークフローのトリガーまたは発生の日付の前後に実行することが必要かどうかに基づいて時間ルールを設定することができ、「時間」、「日」、「週」で期間を指定することもできます。イベント処理を過去のある時刻にスケジュールした場合、そのイベント処理はトリガーされた後、すぐに実行されます。
指定されたエンドポイントURLのWebサービスにアウトバウンド・メッセージを送るオブジェクト・ワークフローを構成することができます。エンドポイントURLはOracle Fusion CRMとデータを共有する外部Webサービスです。
オブジェクト・ワークフローを構成するには、管理者権限が必要です。
この図は、オブジェクト・ワークフローの一部としてアウトバウンド・メッセージが起動する仕組みを示しています。
オブジェクト・ワークフローでアウトバウンド・メッセージを構成するには、「オブジェクト」を選択し、ワークフローに意味のある「名前」と「摘要」を付けます。イベントのトリガー条件を定義し、「アウトバウンド・メッセージ」をイベント処理として選択し、選択したオブジェクトにアウトバウンド・メッセージを送ります。
アウトバウンド・メッセージのイベント処理を構成するときは、そのアウトバウンド・メッセージ処理について「名前」と「摘要」を定義し、処理のトリガーについて「実行スケジュール」を設定します。 外部WebサービスのエンドポイントURLを決定します。たとえば、エンドポイントURLはhttp://GlobalFusion:7011/OMTestOpportunity/OutboundMessageServiceSoapHttpPortのようになります。ランタイム時には、オブジェクト・ワークフローを定義するオブジェクトの詳細を含むサービス・データ・オブジェクトが指定されたエンドポイントURLに送られます。たとえば、トリガーに基づいて、商談、引合、アカウント詳細などのオブジェクトを含むアウトバウンド・メッセージをあるシステムから別のシステムへ自動的に送るオブジェクト・ワークフローを定義することができます。
アウトバウンド・メッセージは処理される前にキュー・アップされます。履歴を含むアウトバウンド・メッセージ、キュー・アップされるメッセージ、それにそれらのステータスは、Oracle Enterprise Managerを使用してモニターできます。
Oracle Enterprise Managerの詳細については、Oracle Fusion Middleware Administrator's Guideを参照してください。
オブジェクト・ワークフロー定義の一部として、フィールド更新イベント処理もアウトバウンド・メッセージ・イベント処理とともにスケジュールされていれば、アウトバウンド・メッセージが更新されたデータを含むように、フィールド更新イベント処理が最初にトリガーされます。
イベント処理定義中に実行スケジュールをオプションで設定してイベント処理がいつ発生するかを指定できます。それ以外は、イベント処理はすぐに実行されます。複数のイベント処理を構成した場合、ほかのイベント処理がトリガーされる前に、「フィールド更新」が発生します。「フィールド更新」以外のイベント処理には、特定の順序はなく、イベント処理は実行スケジュールの有無やその構成方法に基づいてトリガーされます。イベント処理については、そのイベント処理がワークフローのトリガーまたは発生の日付の前後に実行することが必要かどうかに基づいて時間ルールを設定することができ、「時間」、「日」、「週」で期間を指定することもできます。イベント処理を過去のある時刻にスケジュールした場合、そのイベント処理はトリガーされた後、すぐに実行されます。
指定されたエンドポイントURLのサード・パーティのWebサービスにアウトバウンド・メッセージを送るオブジェクト・ワークフローを構成することができます。エンドポイントURLはOracle Fusion Customer Relationship Management(CRM)アプリケーションとともにデータを受け取る外部Webサービスです。サード・パーティWebサービスは、Oracle Fusion CRMが定めているサービスWSDLに適合している必要があります。
この項では、次の内容を説明します。
Webサービスの構成方法
OutboundMessageService.wsdlの例
OutboundMessageService.xsdの例
使用可能なセキュリティ・ポリシー
Webサービスを構成するには、Oracle Fusion Webサービス説明書を使用してOutboundMessageService.xsdファイルのパラメータを交換してください。
Oracle Enterprise Repository(OER)にナビゲートします。
標準オブジェクトとして、OERでADF Serviceをオブジェクト名で検索します。
カスタム・オブジェクトとして、たとえばSales Custom Business Objectなどの対応するアプリケーションにおけるすべてのカスタム・オブジェクトについて、一般のWebサービスを検索します。
サービスのもとに提供されている情報を使用して、ライブ環境URLから.xsdファイルを抽出します。
OutboundMessageService.xsdのパラメータを関連のあるオブジェクトの名前と交換します。
パラメータは.xsdファイルの中で、パラメータ$OBJECT_TARGET_NAMESPACE$ and $OBJECT_NAME$としてマークされます。
Oracle Enterprise Repositoryの詳細については、Oracle Fusion Middleware Configuration Guide for Oracle Enterprise Repositoryを参照してください。
OutboundMessageService.wsdlとOutboundMessageService.xsdの例を参考として示します。
ここでは、OutboundMessageService.wsdlの例を参考として示します。
//Sample OutboundMessageService.wsdl
<wsdl:definitions
name="OutboundMessageService"
targetNamespace="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/"
xmlns:errors="http://xmlns.oracle.com/adf/svc/errors/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:types="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/types/"
>
<wsdl:import namespace="http://xmlns.oracle.com/adf/svc/errors/" location="ServiceException.wsdl"/>
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/types/"
schemaLocation="OutboundMessageService.xsd"/>
</schema>
</wsdl:types>
<wsdl:message name="OutboundMessageService_processOutboundMessage">
<wsdl:part name="parameters" element="types:processOutboundMessage"/>
</wsdl:message>
<wsdl:message name="OutboundMessageService_processOutboundMessageResponse">
<wsdl:part name="parameters" element="types:processOutboundMessageResponse"/>
</wsdl:message>
<wsdl:portType name="OutboundMessageService">
<wsdl:documentation/>
<wsdl:operation name="processOutboundMessage">
<wsdl:input message="tns:OutboundMessageService_processOutboundMessage"/>
<wsdl:output message="tns:OutboundMessageService_processOutboundMessageResponse"/>
<wsdl:fault name="ServiceException" message="errors:ServiceException"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="OutboundMessageServiceSoapHttp" type="tns:OutboundMessageService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="processOutboundMessage">
<soap:operation soapAction="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/processOutboundMessage"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="ServiceException">
<soap:fault name="ServiceException" use="literal" encodingStyle=""/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="OutboundMessageService">
<wsdl:port name="OutboundMessageServiceSoapHttpPort" binding="tns:OutboundMessageServiceSoapHttp">
<soap:address location="http://adc2111013:7101/OMInterface/OutboundMessageService"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
ここでは、OutboundMessageService.xsdの例を参考として示します。パラメータは、.xsdファイルの中で、パラメータ$OBJECT_TARGET_NAMESPACE$ and $OBJECT_NAME$としてマークされます。
//Sample: OutboundMessageService.xsd
<schema elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/types/"
xmlns:ns0="http://xmlns.oracle.com/adf/svc/errors/" xmlns:ns1="$OBJECT_TARGET_NAMESPACE$"
xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/" xmlns:tns="http://xmlns.oracle.com/apps/crmCommon/content/outboundMessage/types/"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://xmlns.oracle.com/adf/svc/types/" schemaLocation="BC4JService.xsd"/>
<import namespace="$OBJECT_TARGET_NAMESPACE$" schemaLocation="$OBJECT_NAME$.xsd"/>
<import namespace="http://xmlns.oracle.com/adf/svc/errors/" schemaLocation="ServiceException.xsd"/>
<element name="processOutboundMessage">
<complexType>
<sequence>
<element name="object" type="ns1:$OBJECT_NAME$"/>
</sequence>
</complexType>
</element>
<element name="processOutboundMessageResponse">
<complexType>
<sequence/>
</complexType>
</element>
</schema>
オブジェクト・ワークフローのアウトバウンド・メッセージは、認証専用クライアント・サイド・セキュリティ・ポリシーoracle/wss10_saml_token_client_policyを使用します。このポリシーはアウトバウンドSOAP要求メッセージのSAMLトークンを含みます。外部サービスはサービス・ポリシーoracle/wss10_saml_token_service_policyを使用してください。このポリシーは、あらゆるSOAPベースのエンドポイントで強制することができます。外部Webサービスは、このポリシーに対応したoracle/wss_saml_or_username_token_serviceなどのセキュリティ・ポリシーを使用する場合があります。
Fusion Webサービスの構成およびセキュリティの詳細については、Oracle Fusion Middleware Security and Administrator's Guide for Web Servicesを参照してください。
オブジェクト・ワークフローの一部としてEメール通知を構成するときは、Eメール・テンプレートを作成、管理、使用できます。Eメール・テンプレートは、特定のオブジェクトに関する同じ種類のビジネス・イベントでトリガーされるEメール通知の外観や印象が統一されるように、Eメールのレイアウトを定義しています。Eメール・テンプレートを定義するには、管理者権限が必要です。
テンプレートは特定の種類のオブジェクトについて作成されており、Eメール通知を定義するときにそのオブジェクト専用に使用されます。Eメール・テンプレートはOracle Fusion CRMアプリケーション・コンポーザのユーザー・インタフェースを使用して構成することができ、また、任意のEメール・エディタでテンプレートを作成し、ユーザー・インタフェースを使用してそのテンプレートをアップロードすることもできます。Eメール・テンプレートは、たとえばアウトバウンドEメール・コミュニケーションで会社のレターヘッドを含める場合などに使用できます。
Eメール・テンプレートは、テンプレートの「名前」、テンプレートを関連付ける「オブジェクト」、そのテンプレートが「アクティブ」かどうかとなどをパラメータとして、検索できます。
Eメール・テンプレートの管理には、「検索」、「表示」、「重複」、「作成」、「編集」、「削除」などのタスクが含まれます。
Eメール・テンプレートの管理では、次のオプションが使用できます。
既存のEメール・テンプレートの表示と表示のカスタマイズ。
ワイルドカードを使用した部分的検索など、既存のテンプレートに関するフィルタリングまたは問合わせ。
既存のテンプレートの編集または複製の作成。
注意
テンプレートが定義されているオブジェクトを変更することはできません。
新しいテンプレートの作成および構成。
フルページ表示でリストされていたテンプレートの取り下げ。
アクティブなテンプレートの表示。
注意
オブジェクト・ワークフローの定義に使用できるのはアクティブなテンプレートのみです。保存しても、テンプレートは自動的にアクティブにはなりません。
テンプレートは、任意のHTMLベースのEメール・クライアントで使用可能なフォーマット機能で定義することができます。テンプレートは、HTMLメールを見ることができないユーザーのために自動的にプレーン・テキストに変換されます。高度なHTMLユーザーは、タグをセットして表示を制御するSource Code Editing Modeをでテンプレートを編集できます。これらの高度なユーザーは、任意のHTMLエディタの中でソース・コードをコピー、編集し、その編集したコードをあらためてOracle Fusionに貼り付けることができます。Eメール・テンプレート定義時にテンプレートの中で選択し、埋め込むフィールドは、選択されているオブジェクトに特定されます。ランタイム時に、このフィールドに値が移入されます。
Eメール・テンプレートの構成では、次のような行為が認められています。
テンプレートの「名前」と「摘要」の指定。
Eメール・テンプレートに関連するアーティファクトの添付。「添付」は、添付ファイルを持つテンプレートを使用するEメールには必ず含まれます。添付ファイルは、受信者のInboxがいっぱいになるのを避けるため、リンクとして送ることもできます。添付ファイルは、ローカル・コンピュータ上のファイルとしても、リポジトリの共有ファイルとしても扱うことができます。
注意
添付できるのは10MBのファイルまでです。
Eメール・テンプレートがアクティブかどうかの指定。
注意
Eメール通知のオブジェクト・ワークフローの作成に使用できるのは、アクティブなテンプレートのみです。
規定に従ってのフィールドまたは関数の挿入。関数は、「日付」、「現在の日時」、またはEメール通知をトリガーする「レコードへのハイパーリンク」の挿入に使用することができます。ブラウズした後にローカル・ファイルコンテンツをEメール・テンプレートのボディに挿入することもできます。
フォント・フォーマット、文字フォーマット、写真のアライメントの調整、箇条書きや採番、任意のHTMLベースのEメール・クライアントで基本的なフォーマットを行うことも認められています。