コンテンツにスキップ

ジョブ定義

バッチサービスはジョブ定義の作成からはじめます。ジョブ定義を実行するとジョブはジョブキューに送信され、準備が整った段階で処理が実行開始されます。ジョブキューに送信するタイミングをトリガー条件によって決めるスケジューリング機能も利用できます。

作成と編集

  1. [サイドメニュー] - [バッチ] の順に進みます。画面上部の[ジョブ定義]ボタンを選択します。(デフォルトでは、[ジョブ定義]タブが選択済みです。)
  2. ジョブの一覧が表示されます。
  3. 画面右上の[作成] - [新規]ボタンをクリックします。
  4. ジョブを定義する画面が開きます。
  5. ジョブ定義は「全般設定」「トリガー」「スクリプト」の3つのメニューから構成され、左ツリーから各メニューを選択することができます。
  6. 各メニューの内容を記述し、右下の[作成]ボタンをクリックすると、ジョブ定義が保存されジョブ定義一覧に追加されます。
  7. ジョブ定義は一覧右メニューから[編集]を選択することで内容を編集できます。

Tips

全般設定

ジョブ定義の全般設定を設定します。

項目指定説明備考
ジョブ定義名必須ジョブ定義の名前を設定します。64文字以内の任意の文字列
説明任意ジョブ定義の説明512文字以内の任意の文字列
実行タイムアウト時間任意ジョブの実行タイムアウト時間 (秒)
未指定の場合はタイムアウトなし
タイムアウトした場合はジョブはFailedステータスで終了する
60~2147483646 範囲の整数
パラメータ任意ジョブのスクリプトから参照可能なパラメータ
詳細は「パラメータ参照」の項目を参照してください
JSON

トリガー

条件によってジョブを実行したい場合、トリガーを設定します。

項目指定説明備考
タイプ任意トリガーのタイプを指定します。
  • Schedule/Cron
64文字以内の任意の文字列
トリガー必須トリガーの設定を行います。 自動リピートと固定スケジュールで予定時間を入力します。
表示タイムゾーン必須トリガー指定に従い次の10件の予定実行時刻が表示されます。この項目では上記を表記するタイムゾーンを指定します。

Tips

スクリプト

ジョブが実行するスクリプトをエディタ領域に記述します。アクション同様、メインスクリプトの他、メインスクリプトから呼び出すJavaScript関数、SQL関数、REST関数を定義できます。

ジョブ定義一覧

作成したジョブ定義はジョブ定義一覧に表示されます。ジョブ定義一覧の各項目の意味は以下の通りです。

項目説明
ジョブ定義ジョブ定義名を表示します。
トリガートリガー名を表示します。
ステータスジョブ定義の有効・無効ステータスを表示します。
次回の実行時刻ジョブの次回実行予定時刻を表示します。
トリガー未設定または無効化されている場合は表示されません。
作成時刻ジョブ定義の作成時刻を表示します。
右メニューコンテキストメニューを開きます。
メニューは、1.[実行] 2.[詳細] 3.[編集] 4.[有効化/無効化] 5.[削除] 6.[エクスポート]となります。

スクリプト付録

バッチスクリプトの記述についてアクションと基本的に同様ですが異なる点もあります。ここではできることや注意点について説明します。

パラメータ参照

スクリプト内ではユーザがジョブ定義に設定したパラメータ内容 (JSON) を「$param」オブジェクトとして参照することができます。

パラメータ記述例1

{
"param1": 1234,
"param2": true,
"param3": ["Sun", "Fri"],
"param4": {
"test": "test-value"
}
}

スクリプトからの呼び出し例1

console.log($param.param1); // 1234
console.log($param.param2); // true
console.log($param.param3.join(",")); // Sun,Fri
console.log($param.param4.test); // test-value

パラメータ記述例2

1234

スクリプトからの呼び出し例2

console.log($param); // 1234

環境変数参照

スクリプト内では特定の環境情報を「$env」オブジェクトとして参照することができます。 $envオブジェクトのプロパティは次になります。

プロパティ名説明
BATCH_JOB_ID自動的に割り当てられるジョブのIDstring
BATCH_JOB_DEFINITION_NAMEユーザが設定したジョブ定義名string
BATCH_JOB_NAMEユーザが設定したジョブ名string

ビルトイン関数

バッチスクリプト内で使用できるビルトイン関数について説明します。

ビルトイン関数説明使用例
$fn.addUsers(param)$fn.addUsers(param) を参照してください。
$fn.createFolder(path)$fn.createFolder(path) を参照してください。
$fn.createUser(param)$fn.createUser(param) を参照してください。
$fn.deleteFile(path)$fn.deleteFile(path)を参照してください。
$fn.deleteFolder(path)$fn.deleteFolder(path)を参照してください。
$fn.deleteUser(email)$fn.deleteUser(email) を参照してください。
$fn.exit(exitCode)ジョブを指定した終了コードで終了します。
引数:終了コード (数値)
戻り値:なし

Tips
本ビルトイン関数はバッチスクリプト専用となっています。アクションでは使用できません。
try {
// do something
} catch(err) {
console.error(err);
$fn.exit(2);
}
$fn.getFile(path)$fn.getFile(path) を参照してください。
$fn.getFileNames(path)$fn.getFileNames(path) を参照してください。
$fn.getGroups(option)$fn.getGroups(option) を参照してください。
$fn.getUsers(groupName?,option)$fn.getUsers(groupName?,option) を参照してください。
$fn.listUsersByEmail(email,option)$fn.listUsersByEmail(email,option) を参照してください。
$fn.listUsersByName(name,option)$fn.listUsersByName(name,option) を参照してください。
$fn.putFile(path, obj)$fn.putFile(path, obj)を参照してください。
$fn.removeUsers(param)$fn.removeUsers(param)を参照してください。
$fn.resetPassword(param)$fn.resetPassword(param)を参照してください。
$fn.sendMail(param)$fn.sendMail(param)を参照してください。
$fn.updateUser(param)$fn.updateUser(param)を参照してください。

インポート

ローカルにエクスポートしたジョブ定義はサービスにアップロードすることができます。画面右上の[作成]ボタンから[インポート]を選択します。[インポート]ダイアログからジョブ定義フォルダを選択して、アップロードを実行します。

Tips