イントラマートのスクリプト開発モデルからシステムコマンドを呼び出してみる

2018-02-07イントラマート

イントラマートのスクリプト開発モデルからシステムコマンドを呼び出す方法です。

イントラマートとは
株式会社NTTデータイントラマート社が開発・販売している、Webアプリケーションシステムのシステム共通基盤(統合型フレームワーク)で、国内の著名企業を中心に6,000社以上に導入されています。 イントラマートを導入することにより、Webシステム開発における短納期・低コスト・標準化推進・品質向上を実現できます。
詳しくはこちらをご覧ください。

スクリプト開発モデルからシステムコマンドを呼び出す

イントラマートのスクリプト開発モデルからシステムコマンドを呼び出して見ます。

呼び出すファンクションコンテナです。
今回はバッチとして作成しました。

var logger = Logger.getLogger() ;
function init( argv )
{
    var ret = execute( "c:/tmp/aaa.bat" ) ;

    if( !isUndefined( ret.exception )){
        logger.error( "ret.exception=[" + ret.exception + "]" ) ;
    }
    if( ret.exit == 0 ){
        logger.info( "コマンド実行正常終了" ) ;
        logger.info( "ret.output=[" + ret.output + "]" ) ;
    }
    else{
        logger.error( "コマンド実行異常終了" ) ;
        logger.error( "ret.exit=[" + new String(ret.exit) + "]" ) ;
        logger.error( "ret.error=[" + ret.error + "]" ) ;
    }
    logger.info( "バッチ 終了" ) ;
}

呼び出すファイルの内容です。(aaa.bat)

dir c:tmp

実行結果です。(ちょっと編集してます。)

C:>dir c:tmp 
 ドライブ C のボリューム ラベルがありません。
 ボリューム シリアル番号は XXXXXX です

 c:tmp のディレクトリ

2013/01/25  16:32    <DIR>          .
2013/01/25  16:32    <DIR>          ..
2013/01/25  16:34                12 aaa.bat
               x 個のファイル          xxxxx バイト
               x 個のディレクトリ      xxxxx バイトの空き領域

戻り値は

・実行したプロセスが正常終了した場合 
     return_object
         ├ output // プロセスからの標準出力ストリーム(String)
         ├ error // プロセスからのエラー出力ストリーム(String)
         └ exit // プロセスの終了コード

・実行したプロセスが正常終了しなかった場合 
     return_object
         ├ error // エラー内容(String)
         └ exit // プロセスの終了コード

・プロセス実行時にランタイム内でエラーが発生した場合 
     return_object
         └ exception // エラー内容(String)
プロセスの終了コードは、0 の場合正常終了となります。 

です。

株式会社システムトラスト

イントラマートの導入・開発についてなど気軽にご相談ください。

お問合せ