DS Scriptとは?
Dr.SumユーザーのみなさんはDS Scriptをつかったことはありますか?
DS ScriptとはDr.Sumの中で書けるスクリプト言語のことです。
マニュアルから引用すると
DS Scriptには、次の特長があります。
-
バッチファイルなどの実行ファイル、SQL文、Dr.Sumが提供するコマンドを1つのスクリプトとして定義できる
-
ブロックモードとテキストモードの両方の利点を活かしたインターフェースでスクリプトを編集できる
-
ワークテーブル(インメモリ上)を使った高速なデータ加工処理ができる
と書いてあります。
Dr.Sum内でデータ加工や細かい処理をするときに大変役に立つスクリプトです。
本記事では作成したDS Scriptをバッチからキックする方法について、サンプルコードを用いて紹介をします。
バッチから起動ができると、そのバッチをサーバーのタスクマネージャーにセットし、自動で実行できるようになるので大変便利です。
さっそく見ていきましょう。
DS Scriptを作成する
別記事で実際に役に立つDS Scriptを紹介していますので、そちらを参照します。
DS Scriptを呼び出すバッチを用意する
実際に使用できるバッチを作りました。
@echo off
rem ##############################################################
rem dwscr_execute_call.bat
rem DS Scriptをキックするバッチ
rem ##############################################################
set COMMAND_PATH=%DWODS_TOOLS_PATH%\cmd\JPN
rem REBUILD_TABLE.dhnのコール
call "%COMMAND_PATH%\dwscr_execute" "localhost" 6001 "Administrator" "" "SCRIPT_ROOT/REBUILD_TABLE.dhn" "C:\logs\DSScript.log"
@echo off
if not %errorlevel% == 0 goto error
goto end
:error
rem ##############################################################
rem エラー処理
rem ##############################################################
rem 異常終了は1を返す
exit /b 1
:end
rem ##############################################################
rem 終了処理
rem ##############################################################
rem 正常終了は0を返す
exit /b 0
実際のバッチは下記からダウンロードできます。
このバッチはDS Scriptを呼び出して、そのスクリプトが正常終了だったら0を、異常終了だったら1を返す作りになっています。
callをしているところは各自の環境に合わせて変更をする必要があります。
本サンプルでは
バッチを起動する場所はDr.Sumのインストールされているサーバー内で、初期設定のユーザー(Administrator)に初期設定のパスワード(パスワードなし)としています。
また起動するDS Scriptは「REBUILD_TABLE.dhn」をキックし、ログはDr.SumがインストールされているサーバーのC:\logs\DSScript.logに出力されます。
コマンドの詳細についてはマニュアルを参照してください。
本記事は以上です。
DS Scriptをつかいこなすとデータ加工が簡単になりますので、ぜひお試しください。