ジョブスケジューラ¶
ジョブスケジューラとは¶
ジョブスケジューラとは、ジョブと呼ばれる処理単位に事前にいつ実行するかというスケジュールを定義しておくことで自動的に実行する機能です。1つの業務を定期的に複数回実行する場合や、大量データを扱うため時間かかる業務処理を夜間に実行する場合などに利用します。intra-mart Accel Platform のジョブスケジューラは、このような要求を実現するためサーバ上の Java やサーバサイドJavaScript で構成された任意の業務処理をスケジュールで定義されたタイミングで自動的に実行する機能や、実行状況の監視や実行結果の管理を行うための機能を提供します。
サンプルプログラム¶
プログラムソース¶
/** * @parameter message world! */ function execute() { let accountContext = Contexts.getAccountContext(); let jobSchedulerContext = Contexts.getJobSchedulerContext(); let message = jobSchedulerContext.getParameter('message'); if (null == message) { return { status : 'error' , message : 'パラメータにメッセージが存在しません。' }; } else if ('' == message) { return { status : 'warning' , message : 'メッセージが空です。' }; } Debug.console('Hello. ' + message); return { status : 'success' , message : 'ジョブが正常に実行されました。' }; }サーバサイドJavaScript のジョブプログラムは、任意のJSファイルにexecute関数を記述します。ジョブ開発者は、このexecute関数にジョブ処理で実行したいプログラムを記述します。
コラム
ジョブ処理では、アカウントコンテキストとジョブスケジューラコンテキストが取得可能です。
この2つのコンテキストを利用して任意の業務処理を記述します。
アカウントコンテキスト
アカウントコンテキストには、ジョブスケジューラから実行されたことを表すアカウント情報が格納されています。
ジョブスケジューラコンテキスト
ジョブスケジューラコンテキストには、ジョブ、ジョブネット、トリガの定義情報と実行日時などの実行情報が格納されています。