PDAutomationProvider - スコープ指定、グローバル
PDAutomationProvider API を使用すると、実行中にオプションのアクティビティをプロセスに挿入できます。
この API は プレイブック プラグイン (com.glide.pad.core) の一部であり、 sn_pad 名前空間で実行されます。
- 発信者が、オプションのアクティビティトリガーが作成されたのと同じスコープ内にいる必要がある。
- 管理者権限がある。
プロセスは、レーンで順序付けされた一連のアクティビティです。オプションのアクティビティは、プロセス設計時に事前定義されます。アクティビティは正確な時間に実行されるようにスケジュールされていません。アクティビティをレーンにアサインし、レーンの実行中に実行できるようにすることができます。アクティビティをプロセスにアサインし、レーンの実行中に実行できるようにすることができます。
オプションのアクティビティを作成するには、アクティビティ [sys_pd_activity] テーブルで [開始ルール] が [手動] に設定されている必要があります。 プレイブック では現在、手動アクティビティの作成はサポートされていません。
エージェントは、オプションのアクティビティを、別のアクティビティに関連してレーンまたはアクティビティに追加します。オプションのアクティビティを挿入するには、プロセスが実行されている必要があります。
PDAutomationProvider – activateProcess(文字列 processDefinitionSysId)
プレイブックをアクティブ化します。
| 名前 | タイプ | 説明 |
|---|---|---|
| プロセス定義 SysID | 文字列 | プロセス定義 [sys_pd_process_definition] テーブルにあるプレイブックのsys_id。 |
| プロパティ | 説明 |
|---|---|
| オブジェクト | プロセス定義のアクティブ化の詳細を含むオブジェクト。 |
| エラー | エラーのリスト。成功した場合は空。 データタイプ:文字列のアレイ |
| process_definition | アクティブ化されたプレイブックとそのプロパティ。 データタイプ: オブジェクト |
| process_definition.active | 非アクティブ化されたプレイブックのプロセス定義がアクティブかどうかを示すフラグ。プロセス定義 [sys_pd_process_definition] リストでプロセス定義を検索します。 有効な値:
データタイプ:ブーリアン |
| process_definition.snapshot | アクティブ化時のプロセス定義に関する詳細が含まれます。 データタイプ: オブジェクト |
| process_definition。スナップショット。作成 | プレイブックが作成された日付。 データタイプ:文字列 |
| process_definition。スナップショット。プロセス定義 SysID | アクティブ化されたプレイブックのsys_id。 データタイプ:文字列 |
| process_definition.status | プレイブックの公開ステータスを示します。 可能な値:
データタイプ:文字列 |
| state | アクティブ化の要求が成功したかどうかを示します。 可能な値:
データタイプ: オブジェクト |
次の例は、プレイブックをアクティブ化する方法を示しています。
var myPlaybook = sn_pad.PDAutomationProvider.activateProcess('cdd1b85e43000210d96e29c28ab8f275');
gs.info(JSON.stringify(myPlaybook));出力: {
"process_definition": {
"active": true,
"snapshot": {
"processDefinitionId": "cdd1b85e43000210d96e29c28ab8f275",
"created": "2024-02-19 22:58:12"
},
"status": "published"
},
"state": "SUCCESS",
"errors": []
}PDAutomationProvider – addOptionalActivityRelativeToActivityContext(文字列 contextID, 文字列 activityId, 文字列 where, 文字列 relatedToId)
指定されたオプションのアクティビティを、プロセスの実行中に別のアクティビティに関連して実行されるように追加します。
プロセスが実行されると、アクティビティごとにアクティビティコンテキストが作成されます。このコンテキストは、アクティビティが実行を処理する方法も処理します。詳細については、「 Process Automation Designer のレーンとアクティビティ」を参照してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| contextID | 文字列 | オプションのアクティビティを追加するアクティビティ実行の sys_id。アクセスするには、プロセス実行 [sys_pd_context] テーブルにリストされているプロセスをクリックします。選択した実行はステータスが [処理中] である必要があります。 |
| activityId | 文字列 | アクティビティ [sys_pd_activity] テーブルにリストされているオプションのアクティビティの sys_id。 注: オプションのアクティビティを作成するには、アクティビティ [sys_pd_activity] テーブルで [開始ルール] が [手動] に設定されている必要があります。 |
| where | 文字列 | プロセス内のどこにアクティビティを配置するかを示します。 有効な値:
|
| relativeToId | 文字列 | オプションのアクティビティの前または一緒に実行される相対アクティビティコンテキストの ID。アクティビティコンテキスト [sys_pd_activity_context] テーブルのリストにあります。 |
| タイプ | 説明 |
|---|---|
| ブーリアン | アクティビティの実行が正常にスケジュールされたかどうかを示すフラグ。
有効な値:
エラーが発生した場合は、1 つ以上のエラーメッセージのリスト。それ以外の場合は、0 個以上の要素のアレイを示すメッセージ。 |
| アレイ | エラーが発生した場合は、1 つ以上のエラーメッセージのリスト。それ以外の場合は、0 個以上の要素のアレイを示すメッセージ。 考えられるエラーメッセージ:
|
次の例は、オプションのアクティビティを相対アクティビティコンテキストと同時に実行する方法を示しています。
var contextId = '<context_id>';
var optionalActivityId = '<optional_activity_id>';
var where = 'WITH'; // options AFTER, WITH
var relativeToId = '<relative_activity_context_id>'; // relative activity context ID
var response = sn_pad.PDAutomationProvider.addOptionalActivityRelativeToActivityContext(contextId, optionalActivityId, where, relativeToId);
gs.info(JSUtil.describeObject(response));
success: boolean = true
errors: Array of 0 elementsPDAutomationProvider – addOptionalActivityRelativeToLaneContext(文字列 contextID, 文字列 activityId, 文字列 where, 文字列 relatedToId)
レーンの実行コンテキスト中に実行するオプションのアクティビティをレーンにアサインします。
プロセスが実行されると、レーンごとにレーンコンテキストが作成されます。このコンテキストは、レーンが実行を処理する方法も処理します。詳細については、「 Process Automation Designer のレーンとアクティビティ」を参照してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| contextID | 文字列 | オプションのアクティビティを追加するアクティビティ実行の sys_id。アクセスするには、プロセス実行 [sys_pd_context] テーブルにリストされているプロセスをクリックします。選択した実行はステータスが [処理中] である必要があります。 |
| activityId | 文字列 | アクティビティ [sys_pd_activity] テーブルにリストされているオプションのアクティビティの sys_id。 注: オプションのアクティビティを作成するには、アクティビティ [sys_pd_activity] テーブルで [開始ルール] が [手動] に設定されている必要があります。 |
| where | 文字列 | プロセス内のどこにアクティビティを配置するかを示します。 有効な値:
|
| relativeToId | 文字列 | オプションのアクティビティが実行される相対レーンコンテキストの ID。レーンコンテキスト [sys_pd_lane_context] テーブルのリストにあります。 |
| タイプ | 説明 |
|---|---|
| ブーリアン | アクティビティの実行が正常にスケジュールされたかどうかを示すフラグ。
有効な値:
|
| アレイ | エラーが発生した場合は、1 つ以上のエラーメッセージのリスト。それ以外の場合は、0 個以上の要素のアレイを示すメッセージ。 考えられるエラーメッセージ:
|
次の例は、オプションのアクティビティをレーンコンテキスト内の最後のアクティビティとして実行する方法を示しています。
var contextId = '<context_id>';
var optionalActivityId = '<optional_activity_id>';
var where = 'LAST'; // options LAST, NEXT
var relativeToId = '<relative_lane_context_id>'; // relative lane context ID
var response = sn_pad.PDAutomationProvider.addOptionalActivityRelativeToLaneContext(contextId, optionalActivityId, where, relativeToId);
gs.info(JSUtil.describeObject(response));
success: boolean = true
errors: Array of 0 elementsPDAutomationProvider – deactivateProcess(文字列 processDefinitionSysId)
プレイブックを非アクティブ化します。
| 名前 | タイプ | 説明 |
|---|---|---|
| プロセス定義 SysID | 文字列 | プロセス定義 [sys_pd_process_definition] テーブルにあるプレイブックのsys_id。 |
| プロパティ | 説明 |
|---|---|
| オブジェクト | プロセス定義の非アクティブ化の詳細を含むオブジェクト。 |
| エラー | エラーのリスト。成功した場合は空。 データタイプ:文字列のアレイ |
| process_definition | 非アクティブ化されたプレイブックとそのプロパティ。 データタイプ: オブジェクト |
| process_definition.active | 非アクティブ化されたプレイブックのプロセス定義がアクティブかどうかを示します。プロセス定義 [sys_pd_process_definition] リストでプロセス定義を検索します。 可能な値:
データタイプ:ブーリアン |
| process_definition.説明 | 非アクティブ化されたプレイブックの詳細。 データタイプ:文字列 |
| process_definition.label | ユーザーのインターフェイスに表示される非アクティブ化されたプレイブックの名前。 データタイプ:文字列 |
| process_definition.name | コード内の非アクティブ化されたプレイブックの名前。スクリプティングで要求パラメーターとしてのみ使用されます。 データタイプ:文字列 |
| process_definition.スコープ | プレイブックが非アクティブ化されるアプリケーションスコープのsys_id。 データタイプ:文字列 |
| process_definition.status | プレイブックが公開されると、ドラフトに戻ります。 データタイプ:文字列 |
| state | 非アクティブ化が成功したかどうかを示します。 可能な値:
データタイプ:文字列 |
プレイブックを非アクティブ化します。
sn_pad.PDAutomationProvider.deactivateProcess('cdd1b85e43000210d96e29c28ab8f275')
出力:
{"process_definition":{"scope":"global","name":"test","active":true,"description":"","label":"test","status":"draft"},"state":"SUCCESS"}
PDAutomationProvider – duplicateProcess(文字列 processDefinitionSysId, 文字列 label, 文字列 description, 文字列 scopeId, 文字列 triggerTypeId)
プレイブックを複製します。
| 名前 | タイプ | 説明 |
|---|---|---|
| プロセス定義 SysID | 文字列 | プロセス定義 [sys_pd_process_definition] テーブルにあるプレイブックのsys_id。 |
| label | 文字列 | 複製されたプレイブックの名前。 |
| 説明 | 文字列 | オプション。プレイブックの詳細を追加します。 |
| scopeId | 文字列 | プレイブックを実行するアプリケーションスコープのsys_id。スコープ名は、プロセス定義 [sys_pd_process_definition] テーブルから取得した scope.name 形式の名前です。グローバルスコープのsys_idを入力すると、任意のアプリケーションスコープでプレイブックを実行できます。 |
| triggerTypeId | 文字列 | プレイブックの実行を開始するトリガーのsys_id。トリガータイプ [sys_pd_trigger_type] テーブルでトリガータイプを検索し、そのsys_idをコピーします。 |
| プロパティ | 説明 |
|---|---|
| オブジェクト | プロセス定義重複の詳細を含むオブジェクト。 |
| エラー | エラーのリスト。成功した場合は空。 データタイプ:文字列のアレイ 考えられるエラーメッセージ:
|
| プロセス定義 SysID | プロセス定義 [sys_pd_process_definition] テーブル内の新しいプレイブックのsys_id。 データタイプ:文字列 |
| state | プレイブックの複製が成功したかどうかを示します。 可能な値:
データタイプ: オブジェクト |
この例では、sys_id f8ca6192ec210210f8772cbd595eab20 を使用してプレイブックを複製する方法を示します。新しいプレイブックの名前は 「プレイブック 2.0」で、アプリケーションスコープは 「グローバル」で、レコードが作成されるとトリガーされます。[レコード作成] トリガータイプのsys_idは ab6951170f1200108c87f4f0ff767e4f です。
sn_pad.PDAutomationProvider.duplicateProcess('f8ca6192ec210210f8772cbd595eab20', 'Playbook 2.0', '', 'global', 'ab6951170f1200108c87f4f0ff767e4f');
出力:
{"processDefinitionSysId":"6e4f0b8fece9c210f8772cbd595eabda","state":"SUCCESS"}