MENU
Dr.SumのDS Scriptは複雑なデータ加工をするときにとても便利なスクリプト言語です。
特にこちらの記事のようにデータベースやテーブルのメンテナンスをしたいときにもDS Scriptは活用できます。
例えばテーブルの再構築などのメンテナンス作業は会社の営業日には行わず、休業日にやりたいというニーズがあると思います。
本記事ではDS Scriptが動くタイミングをDr.Sumに入れているカレンダーマスタで設定する方法を解説します。
今回は動作確認用にものすごくシンプルなカレンダーマスタを用意しました。
日付と実行フラグだけ持っています。
処理が実行したらその当日の年月日と、日付項目を比較し、その日付の実行フラグが”1″の場合は、継続する処理を実施するという流れですね。
ではスクリプトを見てみましょう。
SET() {
$VAR_CURRENT_DATE = CURRENT_DATE();
// データベース名(引数が未指定の場合の値を指定)
$VAR_DB_NAME := "SALES";
}
CONNECT($VAR_DB_NAME) {
}
SET_FROM_QUERY() {
$VAR_IS_RUN = SELECT 実行フラグ FROM タスク実行カレンダー WHERE 日付='${VAR_CURRENT_DATE}';
}
CASE {
WHEN ($VAR_IS_RUN == "1") {
PRINT() {
CONCAT($VAR_CURRENT_DATE, ":実行する");
}
}
ELSE {
PRINT() {
CONCAT($VAR_CURRENT_DATE, ":実行しない");
}
}
}
実際のサンプルプログラムはこちらからダウンロードできます。
IS_TASK_RUN.dhnのダウンロードはこちら |
先ほどのカレンダーマスタは[SALES]データベースの[タスク実行カレンダー]テーブルに格納している状態です。
dhnファイルをダウンロードしたら、ファイルを開いて4行目と11行目のデータベース名とテーブル名を自社の環境のデータベースとテーブルに変更します。
そしてScript Editorを開き、左下のスクリプトファイルを右クリックし[アップロード]から該当のdhnファイルを取り込みます。
[実行]をしてみて、エラーが出ないことを確認したら、dhnファイルを保存しましょう。
これで自社環境でサンプルスクリプトを使用することができます。
バッチでdhnファイルを呼び出し、DS Scriptを動かしましょう。
DS Scriptのバッチからの起動方法についてはこちらの記事を参照してください。
日々のメンテナンスをしっかり行うことで、Dr.Sumは最高のパフォーマンスで活躍します。
日々のメンテナンスも自動化できるところをしっかりと検討し、効率的にDr.Sumの最高のパフォーマンスを維持するようにしましょう。
Related article
Pick up
Ranking
Info