印刷      PDFバージョンのオンラインヘルプを開く


前のトピック

次のトピック

ワークフロールールについて

ワークフロールールは、指定されたイベントが発生した場合に1つ以上のアクションを自動的に実行するようにというOracle CRM On Demandへの指示です。

ワークフロールールのトリガーイベントとアクション

ルールに指定されたイベント(トリガーイベント)が発生すると、ワークフロールールが評価されます。ルールの条件が満たされている場合(またはルールに条件が設定されていない場合)は、ルールに指定されたアクションが実行されます。たとえば、商談が作成されたときに(ワークフロールールトリガーイベント)、商談所有者の管理者に電子メールを送信する(ワークフロールールアクション)ように指定するワークフロールールを作成できます。また、商談の売上が特定の金額を上回った場合にのみ(ワークフロールール条件)電子メールを送信するように指定し、電子メールの内容を指定することもできます。

また、指定期間が経過した後や指定日時にアクションが実行されるようにワークフロールールを設定することもできます。時間ベースのワークフローアクションの詳細は、「時間ベースのワークフロールールについて」および「スケジュール済みイベントについて」を参照してください。

ワークフロールールは次のいずれかの場合にトリガーできます。

  • レコードが作成、更新、復元、マージ、または削除された場合。

    注: ワークフローアクションによるレコードの更新により、一連の新規ワークフロールールがトリガーされることはありません。たとえば、取引先レコードタイプのワークフロールールの[値を更新]アクションにより取引先レコードのフィールドが更新される場合、これらのルールに[更新されたレコードが保存される前に]トリガーまたは[更新されたレコードが保存されたとき]トリガーイベントがあるときでも、レコードに対するこの変更によって取引先レコードタイプのワークフロールールがトリガーされることはありません。レコードに対する変更の結果としてOracle CRM On Demandで追加のアクションを実行する場合は、レコードを更新したアクションと同じワークフロールールに、これらのアクションを設定する必要があります。

  • レコードが、他のレコードに関連付けられた場合、または他のレコードから分離した場合。

    関連付けや関連付け解除のワークフロールールトリガーは、特定のレコードタイプ間の関連付けでのみサポートされます。詳細は、「トリガーイベントの関連付けと分離について」を参照してください。

  • 指定の日時に到達した場合。

注: ワークフロールールでは、カスケード削除操作およびディープ削除操作がサポートされています。たとえば、取引先が削除されると、非共有住所である関連住所も削除されます。次に、住所の削除により、[レコードが削除される前]トリガーイベントが設定されている住所レコードタイプのワークフロールールがトリガーされます。カスケード削除操作およびディープ削除操作の詳細については、「レコードの削除/復元について」を参照してください。

ワークフロールールのトリガーイベントにはいくつかのタイプがありますが、各ワークフロールールに指定できるトリガーイベントは1つのみです。選択したルールのトリガーイベントに応じて、ワークフロールール条件を満たしたときにOracle CRM On Demandで1つ以上のアクションが自動的に実行されるように指定できます。

各ルールのトリガーイベントは、[ワークフロールールリスト]ページと[ワークフロールール詳細]ページに表示されます。ワークフロールールについて選択されたトリガーイベントのタイプに応じて、ルールは次のいずれかのタイプとなります。

  • イベント前ワークフロールール。ルールをトリガーしたイベントの完了前にワークフローアクションが発生します。
  • イベント後ワークフロールール。ワークフロールールをトリガーしたイベントが正常に完了した後、ワークフローアクションが発生します。
  • スケジュール済みイベント。スケジュール済みイベントタイプは、イベント後ルールタイプのサブタイプです。

    スケジュール済みイベントは、ユーザーアクションではトリガーされないワークフロールールです。かわりに、スケジュール済みイベントは、指定された日時になると自動的に実行されます。必要な場合は、スケジュール済みイベントに指定した間隔で複数回実行するように、スケジュール済みイベントを設定できます。

    スケジュール済みイベントの詳細は、「スケジュール済みイベントについて」および「スケジュール済みイベントの作成」を参照してください。

ワークフロールールは、個々のフィールドに対してではなく、レコード全体に対して設定されます。スケジュール済みイベントは、レコードのリストに対して設定されます。

注:ルールの作成後に、そのルールのレコードタイプやトリガーイベントを変更することはできません。ただし、ルールに条件がある場合は条件を更新できます。スケジュール済みイベントに対して、スケジュールを更新したり別のリストを選択できます。

次の表では、各トリガーイベントで使用可能なアクションについて説明します。

トリガーイベント

ルールタイプ

使用可能なアクション

新規レコードが保存されたとき

イベント後

  • 電子メールの送信
  • タスクの作成
  • ブックの割り当て
  • 統合イベントの作成
  • 待機
  • 値の更新

更新されたレコードが保存されたとき

イベント後

  • 電子メールの送信
  • タスクの作成
  • ブックの割り当て
  • 統合イベントの作成
  • 待機
  • 値の更新

レコードが削除される前

イベント前

  • 電子メールの送信
  • タスクの作成
  • 統合イベントの作成

更新されたレコードが保存される前に

イベント前

  • 値の更新

親との関連付けの後

イベント後

  • 電子メールの送信
  • 統合イベントの作成
  • 待機

親との関連付け解除の後

イベント後

  • 電子メールの送信
  • 統合イベントの作成
  • 待機

レコードの復元時

イベント後

  • 電子メールの送信
  • 統合イベントの作成
  • タスクの作成

レコードのマージ時

イベント後

  • 電子メールの送信
  • 統合イベントの作成
  • タスクの作成

スケジュール済みイベント

スケジュール済みイベント

  • 電子メールの送信
  • タスクの作成
  • ブックの割り当て
  • 待機
  • 値の更新

一部の追加ワークフローアクションは、Oracle CRM On Demand Life Sciences EditionおよびOracle CRM On Demand for Partner Relationship Managementで使用できます。詳細は、「ワークフローアクションについて」を参照してください。

注: Oracle CRM On Demandでワークリストを使用する場合、サンプルリクエスト項目に対するブロック製品の処理はサポートされません。詳細は、「サンプルリクエスト項目ワークフローとブロック製品ルールについて」を参照してください。

注: 特定のレコードタイプについては、現在そのタイプのレコードの復元が不可であるため、[レコードの復元時]トリガーイベントで設定されたワークフローはトリガーされません。たとえば、取引先チームレコードの復元は現在不可です。このようなレコードタイプの復元のサポートが将来追加された場合、[レコードの復元時]トリガーイベントで設定されたワークフロールールは適宜トリガーされます。

ワークフロールールとルールアクションに適用される制限事項

スケジュール済みイベント以外のトリガーイベントがあるワークフロールール、およびそれらのルールに対するアクションには、次の制限が適用されます。

  • ワークフロールール条件。ワークフロールールに条件を定義した場合は、ルールがトリガーされたときにルール条件が満たされている場合にのみ、ワークフロールールのアクションが実行されます。条件が満たされていない場合、アクションは実行されません。ワークフロールールに条件を定義していない場合は、ルールがトリガーされるたびにワークフロールールのアクションが実行されます。
  • シングルレコードコンテキスト。ワークフロールールは、レコードが作成、更新、削除された場合にトリガーされます。1つのレコードのコンテキスト内でのみ動作するため、ワークフロールールがアクセスおよび更新できるフィールドも1つのレコードだけです。

    注:ワークフロールールがレコードの関連付けまたは分離アクションによってトリガーされると、そのワークフローによって作成された統合イベントは、子レコードおよび親レコードの両方のフィールドを含めることができます。

すべてのワークフロールールおよびスケジュール済みイベント、およびそのルールおよびスケジュール済みイベントに対するアクションには、次の制限が適用されます。

  • ワークフロールールおよびスケジュール済みイベントに対する複数のアクション。ワークフロールールまたはスケジュール済みイベントには、ルールまたはスケジュール済みイベントごとに最大25個までアクションを作成できます。1つのルールまたはスケジュール済みイベントに25個を超えるアクションを作成しようとすると、エラーメッセージが表示されます。

    注: ワークフロールールまたはスケジュール済みイベントに対するワークフローアクションが完了せずに予期しない終了となった場合、ワークフロールールまたはスケジュール済みイベントの残りのアクションは実行されない可能性があります。ワークフローアクションが失敗した場合の動作については、「ワークフロールールおよびワークフローアクションの失敗について」を参照してください。

  • レコードタイプ。さまざまなレコードタイプについてワークフロールールおよびスケジュール済みイベントを作成できます。ただし、各ワークフロールールまたはスケジュール済みイベントは、1種類のレコードタイプにのみ適用されます。つまり、特定のレコードタイプに対してワークフロールールまたはスケジュール済みイベントを作成した後、別のレコードタイプに対して同じアクションを実行する場合は、2番目のレコードタイプに対して、同じワークフロールールまたはスケジュール済みイベントを作成する必要があります。

ワークフロールールの順序

ワークフロールールを作成すると、Oracle CRM On Demandにより、同じレコードタイプと同じトリガーイベントに基づいたルールに対して未使用の次の順序番号が自動的に割り当てられます。ワークフロールールに対するトリガーイベントが[親との関連付けの後]または[親との関連付け解除の後]の場合は、Oracle CRM On Demandにより、同じレコードタイプ、同じトリガーイベント、および同じ親レコードタイプに基づいたルールに対して未使用の次の順序番号が自動的に割り当てられます。スケジュール済みイベント以外のトリガーイベントがあるワークフロールールでは、順序番号により、同じレコードタイプと同じトリガーイベント(および該当する場合は同じ親レコードタイプ)に基づいた一連のワークフロールールをOracle CRM On Demandが呼び出す順序が決まります。ルールの順序は変更できます。

注: スケジュール済みイベントのトリガーイベントがあるワークフロールールにも順序番号が割り当てられますが、それらは順番どおりに実行されません。スケジュール済みイベントの順序番号は読み取り専用です。

ワークフロールールの順序の変更の詳細は、「ワークフロールールの順序の変更」を参照してください。

一連のワークフロールールの終了

スケジュール済みイベント以外のトリガーイベントがあるワークフロールールでは、ワークフロールールの条件を満たした場合に一連のワークフロールールの処理をOracle CRM On Demandが停止するように指定できます。ワークフロールールがトリガーされると、ルールの条件が評価されます。ルールの条件を満たし、ワークフロールールの[終了]チェックボックスがオンの場合は、現在のワークフロールールで有効なアクションが実行されますが、同じレコードタイプと同じトリガーイベント(および該当する場合は同じ親レコードタイプ)に基づいている後続のワークフロールールは処理されません。

ワークフローアクションの順序

ワークフロールールまたはスケジュール済みイベントに複数のアクションがある場合は、アクション1から指定の順序でアクションが実行されます。アクションが完了するまで、次のアクションは実行されません。ルールのアクションの順序は変更できます。ワークフローアクションの詳細は、「ワークフローアクションについて」を参照してください。

スケジュール済みイベントの場合は、その日付でフィルターされたリストに基づいて返されたレコードに対してアクションが実行されます。レコードは順番に処理されます。つまり、リストの最初のレコードに対してスケジュール済みイベントのすべてのワークフローアクションがスケジュール済みイベントに指定された順序で実行され、次にリストの2番目のレコードに対してすべてのアクションが実行され、その後も同様の要領でレコードが処理されます。

ワークフロールールおよびワークフローアクションの失敗

ワークフロールール、スケジュール済みイベントまたはワークフローアクションが失敗して完了しなかった場合、ワークフロールールまたはスケジュール済みイベントのトリガーイベントのタイプおよびエラーのタイプに応じて、[ワークフローエラーモニター]で、またはワークフロールールをトリガーしたアクションを実行したユーザーに、失敗が報告されます。詳細は、「ワークフロールールおよびワークフローアクションの失敗について」を参照してください。

レコードの表示およびワークフローアクション

ワークフロールールをトリガーするアクションをユーザーが実行し、ユーザーのアクションの結果としてレコードを表示できなくなった場合、ワークフロールールに対する一部のアクションが失敗することがあります。

たとえば、変更した取引先レコードの保存時にトリガーされるワークフロールールがあるとします。取引先レコードを所有するユーザーが取引先を別のユーザーに再割当した場合、その取引先レコードの保存時にワークフロールールがトリガーされます。レコードの元の所有者が他のどのような手段(チームまたはブックのメンバーシップなど)によっても取引先レコードを表示できなくなった場合、その取引先レコードにアクセスする必要があるワークフローアクションは失敗します。

同様に、スケジュール済みイベントを有効にしたユーザーがスケジュール済みイベントで選択されたリストにアクセスできなくなった場合も、スケジュール済みイベントのインスタンスは失敗します。

レコード所有権モードおよびワークフローアクション

カスタムブックを異なる所有権モード(ユーザーモード、混合モードまたはブックモード)でサポートするレコードタイプを設定できます。レコード所有権モードの詳細は、「レコード所有権モードについて」を参照してください。レコード所有権モードはワークフローのルールおよびアクションと相互作用します。

[ブックを割り当て]ワークフローアクションでプライマリカスタムブックをレコードから削除しようとした場合の動作は次のとおりです。

  • レコードタイプがブックモードに設定されている場合は、ワークフローアクションが失敗します。
  • レコードタイプが混合モードに設定されている場合は、プライマリカスタムブックがレコードから削除されるときに、Oracle CRM On Demandによってレコードの[ブック]フィールドの値が削除されます。
  • レコードタイプがユーザーモードに設定されている場合は、レコードのいずれのブックもプライマリカスタムブックではないため、レコード所有権モードはワークフローアクションに影響しません。

[レコード上の電子メールアドレス]オプションを使用して電子メールを送信するように[メール送信]アクションが設定されている場合など、ワークフローアクションがレコードの[所有者]フィールドの値に依存する場合は、次の状況が発生します。

  • レコードタイプがブックモードに設定されている場合は、ワークフローアクションが失敗します。
  • レコードタイプがユーザーモードまたは混合モードに設定され、レコードで関係のあるユーザーを識別するフィールドが空白の場合は、ワークフローアクションが失敗します。

    たとえば、取引先所有者に電子メールを送信する[メール送信]アクションを設定する場合、取引先レコードの[所有者]フィールドが空白になっていると、ワークフローアクションは失敗します。一方、[所有者]フィールドに値が挿入されていると、ワークフローアクションは正常に実行されます。

待ち時間

スケジュール済みイベントのトリガーイベント以外のトリガーイベントがあるワークフロールールは、順次かつ同期して評価されます。すべてのルールが評価されるまで、全体の更新操作は完了しません。したがって、ワークフロールールでは、操作に対して一定の待ち時間(操作の開始と操作の終了までの時間)を設けています。たとえば、ワークフローによって作成される各タスクは、レコードの更新操作に対して最大で20%の待ち時間を追加することができます。ワークフロールールによって作成される各電子メールには、約5%の待ち時間が追加されます。

式の評価には、それほど時間はかかりません。待ち時間を最短にするには、相互排他的な式をワークフロー条件に追加します。ワークフロールールは、パフォーマンスを念頭に置いたうえで、段階的に構築します。

次に示した作業の手順を参照するには、該当するトピックをクリックしてください。


公開日 2018 年 8 月 Copyright © 2005, 2018, Oracle. All rights reserved. Legal Notices.