ビジネスルールを作成および編集
ビジネスルールを使用すると、Workfront オブジェクトに検証を適用し、特定の条件が満たされた場合にオブジェクトを作成、編集または削除できないようにすることができます。 ビジネスルールの検証は、データの整合性を損なう可能性のあるアクションを防止することで、データの品質と運用効率を向上させるのに役立ちます。
1つのビジネスルールは、1つのオブジェクトにのみ割り当てることができます。 例えば、特定の条件でプロジェクトを編集しないビジネスルールを作成した場合、同じルールをタスクに適用することはできません。 タスクに対して同じ条件を持つ別のビジネスルールを作成する必要があります。
アクセスレベルとオブジェクト共有は、ユーザーがオブジェクトとやり取りする際のビジネスルールよりも優先されます。 例えば、ユーザーがプロジェクトの編集を許可しないアクセスレベルまたは権限を持っている場合、特定の条件でプロジェクトの編集を許可するビジネスルールよりも優先されます。
1つのオブジェクトに複数のビジネスルールが適用される場合、ルールはすべてフォローされますが、特定の順序で適用されません。 例えば、2つのビジネスルールがあります。 2月の月に費用を作成することを制限します。 2つ目は、プロジェクトのステータスが「完了」の場合に、プロジェクトを編集できないようにします。 ユーザーが6月に完了したプロジェクトに費用を追加しようとすると、2つ目のルールがトリガーされたため、費用を追加できません。
ビジネスルールは、APIおよびWorkfront インターフェイスを使用したオブジェクトの作成、編集、削除に適用されます。
アクセス要件
| table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header | |
|---|---|
| Adobe Workfront パッケージ |
ビジネスルール検証:
ビジネスルールの自動化:
|
| Adobe Workfront プラン | 標準 |
| アクセスレベル設定 | システム管理者 |
詳しくは、Workfront ドキュメントのアクセス要件を参照してください。
ビジネスルールのシナリオ
ビジネスルール検証のシナリオ
ビジネスルール検証の形式は、「定義された条件が満たされた場合、ユーザーはオブジェクトに対するアクションから除外され、メッセージが表示されます」です。
ビジネスルールのプロパティおよびその他の関数の構文は、カスタムフォームの計算フィールドの構文と同じです。 構文について詳しくは、 フォームデザイナーで計算フィールドを追加するを参照してください。
IF ステートメントについて詳しくは、"IF" ステートメントの概要および計算カスタムフィールドの条件演算子を参照してください。
ユーザーベースのワイルドカードについて詳しくは、 ユーザーベースのワイルドカードを使用してレポートを一般化するを参照してください。
日付ベースのワイルドカードについて詳しくは、日付ベースのワイルドカードを使用してレポートを一般化するを参照してください。
API ワイルドカードは、ビジネスルールでも使用できます。 $$ISAPIを使用して、API内でのみルールをトリガーします。 !$$ISAPIを使用して、ユーザーインターフェイスでのみルールを適用し、ユーザーがAPIを通じてルールをバイパスできるようにします。
-
例えば、このルールは、ユーザーがAPIを介して完了したプロジェクトを編集することを禁止します。 ワイルドカードが使用されていない場合、ルールはユーザーインターフェイスとAPIの両方でアクションをブロックします。
code language-none IF({status} = "CPL" && $$ISAPI, "You cannot edit completed projects through the API.")
式では、$$BEFORE_STATEおよび$$AFTER_STATEのワイルドカードを使用して、編集前後にオブジェクトのフィールド値にアクセスします。
- これらのワイルドカードは、どちらも編集トリガーで使用できます。 編集トリガーのデフォルトのステート(ステートがエクスプレッションに含まれていない場合)は
$$AFTER_STATEです。 - オブジェクト作成トリガーでは、before ステートが存在しないため、
$$AFTER_STATEのみが許可されます。 - オブジェクト削除トリガーでは、後のステートが存在しないため、
$$BEFORE_STATEのみが許可されます。
ビジネスルールのシナリオには、次のようなものがあります。
-
ユーザーは2月の最後の週に新しい費用を追加することはできません。 この式は、次のように記述できます。
code language-none IF(MONTH($$TODAY) = 2 && DAYOFMONTH($$TODAY) >= 22, "You cannot add new expenses during the last week of February.") -
ユーザーは、プロジェクトのプロジェクト名を「完了」ステータスで編集することはできません。 この式は、次のように記述できます。
code language-none IF({status} = "CPL" && {name} != $$BEFORE_STATE.{name}, "You cannot edit the project name.")
トリガーごとにオブジェクトごとに1つのビジネスルールを許可します。 例えば、1つのトリガールールを編集して問題を解決できます。 ただし、ネストされたIF ステートメントを使用して、数式に複数のルールを含めることができます。
ネストされたIF ステートメントを持つシナリオは次のとおりです。
ユーザーは完了したプロジェクトを編集できず、3月に完了予定日が設定されているプロジェクトを編集することはできません。 この式は、次のように記述できます。
IF(
$$AFTER_STATE.{status}="CPL",
"You cannot edit a completed project",
IF(
MONTH({plannedCompletionDate})=3,
"You cannot edit a project with a planned completion date in March")
)
ビジネスルールでローカライズを有効にする
組織でカスタムローカライゼーションを使用している場合は、ビジネスルール内のビジネスルールメッセージの翻訳を有効にする必要があります。 翻訳が有効になっていない場合、メッセージのテキストがローカライゼーションリストに含まれ、ユーザーのブラウザーが適切な言語に設定されていても、メッセージは英語でリーダーに表示されます。
ルールを設定する場合は、メッセージの前にTRANSLATEという単語を挿入し、メッセージを括弧で囲みます。
例:
この例では、「完了したプロジェクトは編集できません」というメッセージが設定のローカライゼーション領域に含まれており、ユーザーのブラウザーがローカライズされた言語に設定されていることを前提としています。
IF({status} = "CPL", "You cannot edit completed projects.")
メッセージは英語で表示されます。IF({status} = "CPL", TRANSLATE("You cannot edit completed projects."))
メッセージがローカライズされた言語で表示されます。
カスタムローカライゼーションについて詳しくは、 カスタムローカライゼーションの設定を参照してください。
ビジネスルール自動化のシナリオ
ビジネスルール自動化の形式は、「定義された条件が満たされた場合、選択した自動化がトリガーされます」です。
ビジネスルールの自動化式では、エラーメッセージは必要ありません
プロジェクトの作成時など、選択したオブジェクトとアクションが発生するたびにオートメーションが実行されるようにするには、次の数式を使用します。
IF(true, true)
プロジェクトが承認されている場合にのみプロジェクトを共有するには、次のような数式を使用します。
IF({status} = "APR", true)
ビジネス ルールの検証 シナリオ の節で説明しているように、ビジネス ルール アクションでワイルドカードを使用できます。
新しいビジネスルールの追加
-
Adobe Workfront の右上隅にある メインメニュー アイコン
をクリックするか、または(使用可能な場合)左上隅にある メインメニュー アイコン
、「設定」
の順にクリックします。
-
左側のパネルで「ビジネスルール」をクリックします。
-
「新しいビジネスルール」をクリックします。
-
ルールビルダーダイアログで、ビジネスルールの 名前 を入力します。
-
「はアクティブです」フィールドで、ルールを保存するときにルールをアクティブにするかどうかを選択します。
Noを選択すると、ルールは非アクティブとして保存され、後でアクティブ化できます。
-
(オプション)ビジネスルールの 説明 と、それが適用されたときの処理を入力します。
-
ビジネスルールを割り当てるオブジェクトタイプを選択します。
ビジネスルールは、次のオブジェクトに適用できます。
- プロジェクト
- タスク
- イシュー/リクエスト
- ポートフォリオ
- ドキュメント
- プログラム
- 費用
- 会社
- イテレーション
- 請求記録
- グループ
- 労力以外のリソース
- リスク
- レートカード
- 割り当て
- ユーザー
- 役割
- 時間
- テンプレート
- 休暇
- リソースプール
- 担当業務
- 労力以外のリソースカテゴリ
- リソースプール
- 休暇
- 時間
- 人材の配置プラン
- テンプレート
- 人材の配置プランのリソース
-
ルールビルダーダイアログで、ビジネスルールの 名前 を入力します。
-
「はアクティブです」フィールドで、ルールを保存するときにルールをアクティブにするかどうかを選択します。
Noを選択すると、ルールは非アクティブとして保存され、後でアクティブ化できます。
-
ビジネス ルールの トリガー を選択します。 オプションは次のとおりです。
- 作成済み ユーザーがオブジェクトを作成しようとすると、ルールが適用されます。
- 編集済み ユーザーがオブジェクトを編集しようとすると、ルールが適用されます。
- 削除済み ユーザーがオブジェクトを削除しようとすると、ルールが適用されます。
-
ビジネスルールダイアログの中央にある数式エディターで、数式を作成します。
ビジネスルールの形式は、「定義された条件が満たされた場合、ユーザーはオブジェクトに対するアクションを禁止され、メッセージが表示されます」です。
数式領域では、作成するビジネスルールの部分が条件であり、条件が満たされたときにWorkfrontに表示されるメッセージです。
-
「オブジェクト」は、ビジネスルールの作成時に選択したオブジェクトタイプです。 ダイアログの見出しに表示されます。
-
「アクション」は、ルールに対して選択したトリガー(オブジェクトの作成、編集、削除)です。
-
オブジェクトとアクションは既に定義されているため、数式に含めることはできません。
-
カスタムエラーメッセージ は、ルールが検証用の場合にのみ含まれ、ビジネスルールをトリガーするとがユーザーに表示されます。 問題の原因と修正方法について明確な指示を与える必要があります。
エラーメッセージに静的URLを含めることで、ドキュメントやその他の便利なページにリンクし、ルールの制約の中でユーザーがアクションを変更する方法をガイドできます。
この例では、「詳細情報」がURLにリンクされます。
"You are not allowed to add a new project in November.[Learn more](http://url)"URLは括弧で囲む必要がありますが、括弧内のリンクテキストは必要ありません。 完全なURLを表示することができ、クリック可能なリンクになります。
この例は、プロジェクトのビジネスルールです。 現在の月が11月の場合、ユーザーは新しいプロジェクトを作成できません。このメッセージは、これを説明しています。
ビジネスルールの詳細な例については、この記事の「 ビジネスルールのシナリオ 」を参照してください。
-
-
(オプション)右側のパネルの式 式 と フィールド を使用して、ルールの作成を支援します。
使用可能なアイテムのリストを絞り込む式またはフィールドを検索します。
使用可能なフィールドのリストは、ビジネスルールのオブジェクトタイプに関連するフィールドに限定されます。
-
(条件付き)アクションを検証する場合、組織がWorkfront Ultimate パッケージ上にある場合は、「その後」領域で「オブジェクトを検証する」を選択します。
その他のパッケージの場合、このオプションは事前に選択されています。
-
(条件付き)別のアクションを自動化するには、アクションを選択します。
これらのアクションについて詳しくは、この記事の「 ビジネスルールの自動化オプション 」の節を参照してください。
note note NOTE 検証以外のアクションを使用するには、組織がWorkflow Ultimate パッケージに属している必要があります。 これらの他のオプションが表示されない場合、組織はWorkflow Ultimate パッケージにありません。 -
ビジネスルールの作成が完了したら、保存をクリックします。
ビジネスルールの自動化オプション
これらのアクションは、ビジネスルールがトリガーされたときに自動化するように設定できます。 使用可能なアクションは、選択したオブジェクトタイプによって異なります。
ビジネスルールをアクティブ化
ビジネスルールが非アクティブの場合、ビジネスルールのリストの「アクティブです」フィールドに「False」と表示されます。 リスト ビューでルールのステータスを更新することはできません。
ビジネスルールをアクティブ化するには:
- ルールのリストでビジネスルールを選択し、編集アイコンをクリックします。
- ビジネスルールダイアログで「はアクティブです」の「はい」を選択します。
- 「保存」をクリックします。