ジョブスケジュールは、管理者がバッチ操作の作成と繰り返し実行をスケジュールできるシンプルで効率性の高い方法です。組織は、Vault のジョブスケジュール機能を使用して、ドキュメントとオブジェクトを新規ライフサイクル状態に移動させたり、システムメッセージを送信したりすることができます。

ジョブスケジュールへのアクセス

管理者 > ジョブからジョブのスケジュールとジョブステータスの確認ができます。この領域へのアクセスは、管理者: ジョブおよび管理者: ジョブ権限によって制御されます。

ジョブの用語集

ジョブの定義時には複数の主要要素があります:

ジョブ
クエリの結果に対して実行される一連の活動 (常にある主要アクションと、場合によって追加の日付ベースの通知) です。
ジョブの定義
ジョブの内容と実行される日時を定義したルールおよび設定です。
ジョブインスタンス
定義されたジョブの個々の実行です。インスタンスは、インスタンス開始時にジョブの定義に記載されたアクションを実行します。ジョブが実行されるたびに、それが固有のインスタンスとなります。ジョブインスタンスの詳細は監査ログにあるため、アクションを追跡することができます。管理者は、ジョブステータスページでもジョブインスタンスを監視できます。
ジョブステータス
個別のジョブインスタンスの現在のステータスで (スケジュール済み、成功、キャンセルなど)、ジョブステータスページに表示されます。
アクション
例えばドキュメントステータスの変更などを完了させる主要な操作です。
条件
ドキュメント操作ジョブに適格なドキュメントの検索および選択を行うクエリを定義するものです。例えば、ドキュメントは、タイプ = サイト管理およびステータス = 使用の承認済みである必要があります。
トリガー日付
特殊な日付 (ドキュメントフィールドに基づく) で、日付ベースのドキュメント操作ジョブが実行するかどうかを評価するための参照としての役割りを果たします。トリガー日付は、状態を変更するドキュメントの日付、または関連ドキュメントの日付となる場合があります。
オプション通知
ドキュメント操作ジョブに伴う通知です。これらの通知は、ジョブの主要アクションと同じ条件とトリガー日付を使用しますが、トリガー日付とは別のオフセットを持つこともできます。例えば、スケジュール済みのジョブがドキュメントを更新する旨をドキュメント所有者に通知するため、トリガー日付の 7 日前に通知を送信することができます。
実行名
外部 URL コールジョブを完了するために Vault が使用するユーザアカウントを定義します。多くのセキュリティプロファイルでは、選択できるのは自分だけですが、標準Vault 所有者プロファイルを有するユーザは、任意のユーザアカウントを使って実行するジョブを設定することができます。この選択は、URL のトークンに代わるユーザおよびセッション ID を定義するため、重要となります。
プライマリドキュメント
ジョブの影響を受けるドキュメント。例えば、状態変更ジョブによって、プライマリドキュメントの状態が別の状態に移行し、システムメッセージジョブがプライマリドキュメントの所有者に通知します。
関連ドキュメント
リンクされたドキュメントサポート文書といった何らかのドキュメント関係によってプライマリドキュメントに関連付けられたドキュメントです。スケジュールされているジョブは関連ドキュメントに影響を及ぼしませんが、関連ドキュメントの日付フィールドを使用してプライマリドキュメントにジョブをトリガーすることができます。

ドキュメント操作ジョブを定義する方法

日付ベースのドキュメント操作ジョブに新しいジョブ定義を作成するには:

  1. 管理者 > ジョブ > ジョブの定義に移動し、作成をクリックします。
  2. ジョブのタイトルを入力します。この値は、ジョブの定義ページ、監査ログ、およびジョブの所有者へのシステムメッセージに表示されます。
  3. 任意の作業: 必要であれば、ジョブの名前を変更してください。このフィールドはタイトルに基づいて自動入力されますが編集可能です。これは、API がジョブの参照に使用する値です。
  4. タイプフィールドで、日付ベースのドキュメント操作を選択します。
  5. ジョブの所有者としてユーザまたはグループ (推奨) を選択します。ジョブの所有者は、ジョブインスタンス中に発生した例外に関する自動通知を受信します。成功したジョブはこれらの通知を生成しません。ユーザをジョブの所有者にしても、他のアプリケーションへのアクセス権限は追加されないため、選択されたジョブの所有者に必要なアクセス権限セットがあるか確認する必要があります。
  6. 時間、または単位のスケジュールを選択します。詳細は、ジョブスケジュールを参照してください。
  7. アクションを選択します。選択されたアクションに基づいて変更されるフィールドがあります。状態変更通知の送信および操作なしアクションに関する詳細は以下をご確認ください。
  8. ライフサイクルを選択します。すべてのジョブはライフサイクル固有のため、ジョブのクエリ条件を満たすには、ドキュメントが選択されたのライフサイクルを使用する必要があります。
  9. 以下に基づくトリガー日付で、ジョブのトリガーの条件を示します。ソースドキュメントの日付および関連ドキュメントの日付については、以下の詳細をご覧ください。
  10. 任意の作業: 追加条件で、ドキュメントフィールド、操作、およびフィールド値を選択して、別の条件をドキュメントクエリに追加することができます。条件を 2 つ以上追加する必要がある場合は、プラスアイコン (+) をクリックして追加します。
  11. 任意の作業: オプション通知または通知で、追加をクリックすると追加の通知を作成できます。通知を 2 つ以上追加するには、続いて追加をクリックします。送信日付では、アクションのトリガー日付までの日数を指定します。通知のメッセージテンプレートを選択します。1 つまたは複数のドキュメントロールを受信者として選択します。システムメッセージおよびメッセージテンプレートで詳細をご確認ください。
  12. 任意の作業: 次回の予定された時間にジョブを実行させるには、ステータス有効に設定します。ジョブの定義が無効の場合、ジョブインスタンスはスケジュールされません。
  13. 保存をクリックします。

オブジェクト操作ジョブを定義する方法

日付ベースのドキュメント操作ジョブに新しいジョブ定義を作成するには:

  1. 管理者 > ジョブ > ジョブの定義に移動し、作成をクリックします。
  2. ジョブのタイトルを入力します。この値は、ジョブの定義ページ、監査ログ、およびジョブの所有者へのシステムメッセージに表示されます。
  3. 任意の作業: 必要であれば、ジョブの名前を変更してください。このフィールドはタイトルに基づいて自動入力されますが編集可能です。これは、Vault REST API がジョブの参照に使用する値です。
  4. タイプフィールドで、日付ベースのオブジェクト操作を選択します。
  5. ジョブの所有者としてユーザまたはグループ (推奨) を選択します。ジョブの所有者は、ジョブインスタンス中に発生した例外に関する自動通知を受信します。成功したジョブはこれらの通知を生成しません。ユーザをジョブの所有者にしても、他のアプリケーションへのアクセス権限は追加されないため、選択されたジョブの所有者に必要なアクセス権限セットがあるか確認する必要があります。
  6. 時間、または単位のスケジュールを選択します。詳細は、ジョブスケジュールを参照してください。
  7. アクションを選択します。選択されたアクションに基づいて変更されるフィールドがあります。状態変更通知の送信および操作なしアクションに関する詳細は以下をご確認ください。
  8. オブジェクトを選択します。例えば、ジョブで、製品を新規状態に移行する必要がある場合、製品オブジェクトを選択します。
  9. 任意の作業: 追加条件で、ドオブジェクトフィールド、操作、およびフィールド値を選択して、別の条件をドキュメントオブジェクトレコードクエリに追加することができます。条件を 2 つ以上追加する必要がある場合は、プラスアイコン (+) をクリックして追加します。
  10. トリガー日付で、トリガー日付として使用するオブジェクトフィールドを選択します。トリガー日付がジョブ日付より前と当日に動作するか、あるいはジョブ日付より前のみ動作するかを選択します。
  11. 任意の作業: オプション通知または通知で、追加をクリックすると追加の通知を作成できます。通知を 2 つ以上追加するには、続いて追加をクリックします。送信日付では、アクションのトリガー日付までの日数を指定します。通知のメッセージテンプレートを選択します。1 つまたは複数のオブジェクトライフサイクルロールを受信者として選択します。システムメッセージおよびメッセージテンプレートで詳細をご確認ください。
  12. 任意の作業: 次回の予定された時間にジョブを実行させるには、ステータス有効に設定します。ジョブの定義が無効の場合、ジョブインスタンスはスケジュールされません。
  13. 保存をクリックします。

外部 URL コールジョブを定義する方法

外部 URL コールジョブに新しいジョブ定義を作成するには:

  1. 管理者 > ジョブ > ジョブの定義に移動し、作成をクリックします。
  2. ジョブのタイトルを入力します。この値は、ジョブの定義ページ、監査ログ、およびジョブの所有者へのシステムメッセージに表示されます。
  3. 任意の作業: 次回の予定された時間にジョブを実行させるには、ステータス有効に設定します。ジョブの定義が無効の場合、ジョブインスタンスはスケジュールされません。
  4. 任意の作業: 必要であれば、ジョブの名前を変更してください。このフィールドはタイトルに基づいて自動入力されますが編集可能です。これは、Vault REST API がジョブの参照に使用する値です。
  5. タイプフィールドで、外部 URL コールを選択します。
  6. ジョブの所有者としてユーザまたはグループ (推奨) を選択します。ジョブの所有者は、ジョブインスタンス中に発生した例外に関する自動通知を受信します。成功したジョブはこれらの通知を生成しません。ユーザをジョブの所有者にしても、他のアプリケーションへのアクセス権限は追加されないため、選択されたジョブの所有者に必要なアクセス権限セットがあるか確認する必要があります。
  7. 時間、または単位のスケジュールを選択します。詳細は、ジョブスケジュールを参照してください。
  8. アクション設定URL テキストフィールドで、このジョブの実行時に Vault がコールする URL を入力します。URL には必ず https:// を含めてください。
  9. 任意の作業: フィールド領域から、URL に含めるトークン (インスタンス ジョブ ID、ユーザ詳細、および Vault 詳細) を検索します。フィールドのトークンを追加するには、フィールド名をダブルクリックします。
  10. 任意の作業: 検証をクリックすると、URL が有効であるかどうかを自動的にチェックします。Vault はリモートホストへの接続を行いません。検証は、URL の構造およびトークンの有効性のみが対象となります。
  11. 任意の作業: 「Session.id」キーを使用しフォームデータを介してセッション認証情報を投稿するチェックボックスをオンにして、フォームデータを介してセッション認証情報を投稿します。これにより、URL で Vault API などを呼び出すことができます。URL は、このセッション ID を取得する準備ができている必要があります。詳しくは、開発者ポータルをご確認ください。
  12. 実行名選択リストで、外部コールの実行時に Vault が使用するユーザアカウントを選択します。Vault 所有者以外のセキュリティプロファイルを有している場合、自分のみ選択できます。
  13. 保存をクリックします。

ジョブの定義を編集する方法

既存のジョブの定義を編集するには:

  1. 管理者 > ジョブ > ジョブの定義に移動し、ジョブのタイトルをクリックします。
  2. 必要に応じて変更を行います。
  3. ステータス有効に設定します。編集すると、Vault は常にステータスを無効に自動設定します。
  4. 保存をクリックします。

ジョブの条件が無効なコンポーネント (無効なライフサイクルなど) を参照している場合、条件の値ではなく (未定義の値) が表示されます。ジョブ定義を更新するには、無効なコンポーネントを削除するか、再度有効にする必要があります。

状態変更アクションの詳細

状態変更アクションで作成または編集する場合、上記以外に以下のフィールドが表示されます:

  • (ドキュメント操作のみ) ドキュメントバージョンは、ジョブが実行されるドキュメントのバージョンです。他のすべてのバージョンは無視されます。固定状態であるかどうかに関係なく、ドキュメントの最新バージョンでジョブを実行するには、唯一の最新を選択します。ドキュメントの最新の固定状態バージョンでジョブを実行するには、最新固定状態を選択します。
  • (ドキュメントジョブのみ) 開始状態はドキュメントジョブのジョブのクエリの一部です。ドキュメントがジョブに選択されるには、トリガー日付に指定された状態の 1 つである必要があります。このアクションタイプを使うと、追加条件ステータスフィールド条件を追加できないことにご留意ください。
  • (ドキュメントジョブのみ) 保存先状態は、ジョブがドキュメント情報を変更する状態です。例えば、期限切れのジョブは、ドキュメントを開始状態の承認済みから保存先状態の期限切れに変更します。Vault は、保存先状態のエントリアクションと条件を実行します。ジョブ経由の状態変更では、ユーザアクションの設定が開始状態に存在している必要はありません。
  • (ドキュメントジョブのみ) 変更先状態は、ジョブがオブジェクトレコードを変更する状態です。例えば、期限切れのジョブは、オブジェクトレコードを期限切れ状態に変更することができます。ドキュメントジョブとは異なり、開始状態を指定しません。現在の状態でオブジェクトレコードをフィルタリングする必要がある場合は、追加条件を使用します。
  • 既存のワークフローをキャンセルしてアクションを実行する設定が有効化されている場合、アクションを完了するため、クエリが見つけたドキュメント/オブジェクトレコード上のオープンワークフロー (R&U ワークフローを除く) がキャンセルされます。この設定が無効である場合、Vault はオープンワークフロー付きのドキュメント/オブジェクトレコード上でアクションを実行せず、これらのアイテムにエラーを記録します。Vault がワークフローをキャンセルすると、ドキュメント/オブジェクトレコードはまずキャンセル状態に移動し、その後ジョブが指定する保存先状態に移動します。これが両状態のエントリアクションを起動し、Vault の設定に基づいて影響を及ぼします。このアクションは、複数ドキュメントワークフローに含まれているドキュメントのワークフローをキャンセルしません。

場合によっては、ドキュメント状態変更ジョブによって、ジョブがユーザによる R&U ワークフローの完了が行えないドキュメント状態に移行する可能性があります。この場合、管理者はワークフローを手動でキャンセルする必要があります。

通知アクションの詳細

通知の送信アクションで作成または編集する場合、上記以外に以下のフィールドが表示されます:

メッセージテンプレート
通知として送信されるテキストを定義します。管理者 > コンテンツ設定 > メッセージで定義することができます。詳しくは以下を参照してください。
受信者
(ドキュメントジョブのドキュメントロール経由で、あるいはオブジェクトジョブのオブジェクトライフサイクルロール経由で) システムメッセージを受信するユーザを定義します。

ジョブなしアクションの詳細

ジョブなしは、ローカルアイテムに対してアクションは取らず、管理者が指定された条件に一致しシステムメッセージを送信するドキュメントまたはオブジェクトレコードを見つけることができるジョブアクションの特殊なタイプです。特定の状況では、オプションシステムメッセージの動作が異なるため、システムメッセージの送信アクションを使用するよりも便利です。システムメッセージの送信アクションはトリガー日付を使用して無制限の範囲のドキュメントまたはオブジェクトレコード (アイテム数が多数になったり、関連しなくなったりする可能性がある今日までの [日付フィールド] 付きのアイテム) を選択します。オプション通知は、バインドされたトリガー日付 (トリガー日付の X 日前) を使用します。例えば、「5 日前」では、[日付フィールド] が今日の日付、あるいは今日から 5 日後以内のアイテムしか選択しません。

例えば、オプション通知 (同じジョブの一部) でジョブなしアクションを使用し、ドキュメントの所有者にコンテンツの定期レビューの期限が近づいていることを警告することができます。Vault は、ユーザに通知しますが、責任を持つ当事者がアクションを取らない場合には Vault は実際にコンテンツを変更しません (定期レビューが期限切れになっても)。

このアクションを使用してジョブを実行する前に Veeva サポートにご相談ください。

ジョブなしアクションを使用してジョブの作成または編集を行う場合は、さらに指定する必要のある詳細はありません。

外部 URL コール HTTPS Post アクションの詳細

外部 URL コールは、渡されたパラメータを理解する外部サービス用の URL に進み、その後の詳細処理を行います。「Session.id」キーを使用しフォームデータを介してセッション認証情報を投稿するチェックボックスが選択されている場合、アクションはセッション ID を渡し、サービスは Vault REST API を使用して Vault にコールバックし、ユーザが実行パラメータで指定した任意の数のアクションを実行できます。アクションには、詳細データの問合せやドキュメントの作成などが含まれます。外部サービスは、このセッション ID を取得する準備ができている必要があります。詳しくは、開発者ポータルをご確認ください。

外部 URL コールを定義する際には、HTTPS URL を使用してください。

ドキュメントのトリガー日付

Vault は、影響を受けるドキュメント/プライマリドキュメントの日付、または関連ドキュメントの日付に基づいてジョブをトリガーすることができます。例えば、お使いの Vault には、ドキュメントを要レビュー状態に移動させる 2 つのジョブが含まれる場合があります: 一つはプライマリドキュメントの日付を使用し、もう一つは関連ドキュメントの日付を使用します。これらのジョブの両方が、オプションのシステムメッセージで状態変更アクションタイプを使用します。

  • ジョブ A では、トリガー日付はプライマリドキュメントに基づきます。CholeCap パンフレット再承認の日付までの 4 週間、Vault はドキュメント所有者の Tracy にシステム通知を送信します。再承認の日付に、スケジュール済みジョブが Cholecap パンフレットから要レビューの状態に移動します。
  • ジョブ B では、トリガー日付はプライマリドキュメントに関連するドキュメントに基づきます。このタイプのトリガー日付は、関連ドキュメントのライフサイクル状態および日付を使用して、ジョブをトリガーするかどうかを決定します。CholeCap パンフレット (プライマリドキュメント) はドキュメント 治験 2039 報告書を参照しているため、これらのドキュメント間にリンクされたドキュメント関係があります。治験 2039 報告書有効期限までの 4 週間、Vault は CholeCap パンフレットのドキュメント所有者の Tracy にシステムメッセージを送信し、リンクされたドキュメントの起源が切れることを知らせます。治験報告書の有効期限に、スケジュールされたジョブは Cholecap パンフレット要レビュー状態に移動します。関連する参照ドキュメントの有効期限が切れると、パンフレットをレビューする必要があるため、このジョブは重要です。

影響を受けるドキュメント日付を使用してジョブをトリガーする

影響を受けるドキュメントの日付に基づいてトリガーを設定するには:

  1. 以下に基づくトリガー日付プライマリドキュメント日付を選択します。
  2. トリガー日付として使用するドキュメントフィールドを選択します。
  3. トリガー日付がジョブ日付より前と当日に動作するか、あるいはジョブ日付より前のみ動作するかを選択します。

影響を受けるドキュメントに関連するドキュメントの日付に基づいてトリガーを設定するには:

  1. 以下に基づくトリガー日付関連ドキュメント日付を選択します。
  2. 1 つ以上の関連タイプを選択します。これは、ジョブが確認する関連ドキュメントの種類を決定します。
  3. 関連ドキュメントライフサイクルを選択します。ジョブはこのライフサイクルの関連ドキュメントのみを確認します。
  4. 関連ドキュメント状態を選択します。ジョブはこれらのライフサイクル状態の関連ドキュメントのみを確認します。
  5. トリガー日付として使用する (関連ドキュメント上の) ドキュメントフィールドを選択します。
  6. トリガー日付がジョブ日付より前と当日に動作するか、あるいはジョブ日付より前のみ動作するかを選択します。

オブジェクトのトリガー日付

Vault は、影響を受けるオブジェクトレコードの日付に基づいてジョブをトリガーすることができます。例えば、お使いの Vault は、オブジェクトレコードを承認終了日付の要レビュー状態に移動する可能性があります。

ジョブのトリガー

影響を受けるオブジェクトレコードの日付に基づいてトリガーを設定するには:

  1. トリガー日付として使用するオブジェクトフィールドを選択します。
  2. トリガー日付がジョブ日付より前と当日に動作するか、あるいはジョブ日付より前のみ動作するかを選択します。

ドキュメント、オブジェクト通知、通知テンプレート

Vault は、通知送信アクションを持つジョブ定義の実行がスケジュールされるたびに通知を送信します。ジョブの定義に関連付けられるその他のすべての通知 (主要アクションと日付ベースの両方) は、「期限切れ」通知です。これは、受信者、ドキュメントバージョン、またはオブジェクトレコード、通知テンプレートの各固有の組み合わせに対して、Vault は通知を 1 件しか送信しないことを意味します。異なるジョブや、同じジョブの異なる通知であっても同じです。これを考慮して、通知インスタンスごとに別のメッセージを定義する必要があります。

例えば、ドキュメントの期限を切るジョブがあり、状態変更が起こる 28 日前、14 日前、7 日前にドキュメントの所有者に通知を送信したい場合、3 件のメッセージを別々に定義する必要があります。

監査ログ

ドキュメント操作ジョブの一部として起こるアクションは、ドキュメント監査履歴に含まれます。オブジェクトジョブに基づいたアクションは、オブジェクトレコード監査履歴に含まれます。ログでこれらのアクションは、システムのユーザ名で表示されます。

Vault は、監査ログの外部 URL コールを追跡しません。

ジョブモニタリング

アクションにエラーが発生した場合、Vault はジョブの所有者 (ユーザまたはグループ) に電子メールで通知します。さらに Vault には拡張オプションがあり、スケジュール済みおよび完了済みのジョブインスタンスに対するジョブのリアルタイム追跡と連携が行えます。

ジョブスケジュール

ジョブ定義ページで、1 時間に 1 回から 1 か月に 1 回まで繰り返すジョブをスケジュールします。

毎時
指定された時間間隔で繰り返します。
毎日
指定された時間 に 1 日 1 回繰り返します。
毎週
指定された時間に、指定された 1 つ以上の曜日に繰り返します。
毎月
指定された暦日や平日の指定された時間に繰り返します。例えば、ジョブを常に毎月 13 日に実行するには、日付の繰り返しオプションを使用します。毎月第 2 水曜日に常にジョブを実行するには、曜日オプションを使用します。

スケジュールされたジョブが設定されている場合、Vault はスケジュールされた開始時間にジョブをタスクのキューに置きます。メンテナンス、システム機能停止、または同時実行のジョブ件数が多すぎるため、予定された時間に Vault が使用できない場合、ジョブはスケジュールされた時間後 5 時間は実行を試行し続けます。この時間枠でジョブが開始できない場合、Vault はインスタンスをスキップします。これらのジョブはスキップされたスケジュールの完了ステータスを表示します。ジョブが頻繁にスケジュールをスキップする場合は、Veeva サポートにご連絡ください。ジョブの開始時間が重ならないように調整するか、似たようなジョブをまとめてジョブ件数を少なくさせる必要があります。