帳票システム構築支援 uCosminexus EUR uCosminexus EUR サーバ帳票出力

[目次][索引][前へ][次へ]

3.6.8 UNIX/Linux環境でシェルスクリプトからコマンド実行する場合

シェルスクリプトでエラーメッセージIDを取得する例を出力別に示します。

<この項の構成>
(1) プリンタ出力のコーディング例
(2) PDF形式ファイル出力のコーディング例
(3) EUR形式ファイル出力のコーディング例
(4) CSV形式ファイル出力のコーディング例
(5) Excel形式ファイル出力のコーディング例

(1) プリンタ出力のコーディング例

#!/bin/sh
    
/opt/eurps/bin/eurps -message -p printer1 sample1.fms,data1.csv>$$.log
RC=$?
    
if [ $RC -gt 0 ];then
  ERRID=`awk '{print substr($0,12,3);}' $$.log`
        …メッセージ文字列から
          メッセージIDをERRIDに取り出す
  if [ $ERRID -eq 300 ];then     …KEEU300-Wの場合のエラー処理
  elif [ $ERRID -eq 5 ];then     …KEEU005-Eの場合のエラー処理
  elif [ $ERRID -eq 6 ];then     …KEEU006-Eの場合のエラー処理
  elif [ $ERRID -eq   …
           :     …以下,そのほかのエラー処理を繰り返す
  fi
fi
    
rm $$.log
 

(2) PDF形式ファイル出力のコーディング例

#!/bin/sh
    
/opt/eurps/bin/eurps -message -t pdf -pf output.pdf sample1.fms,data1.csv>$$.log
RC=$?
    
if [ $RC -gt 0 ];then
  ERRID=`awk '{print substr($0,12,3);}' $$.log`
        …メッセージ文字列から
          メッセージIDをERRIDに取り出す
  if [ $ERRID -eq 300 ];then     …KEEU300-Wの場合のエラー処理
  elif [ $ERRID -eq 5 ];then     …KEEU005-Eの場合のエラー処理
  elif [ $ERRID -eq 6 ];then     …KEEU006-Eの場合のエラー処理
  elif [ $ERRID -eq   …
           :     …以下,そのほかのエラー処理を繰り返す
  fi
fi
    
rm $$.log
 

(3) EUR形式ファイル出力のコーディング例

#!/bin/sh
    
/opt/eurps/bin/eurps -message -t eur -pf output.eup sample1.fms,data1.csv>$$.log
RC=$?
    
if [ $RC -gt 0 ];then
  ERRID=`awk '{print substr($0,12,3);}' $$.log`
        …メッセージ文字列から
          メッセージIDをERRIDに取り出す
  if [ $ERRID -eq 300 ];then     …KEEU300-Wの場合のエラー処理
  elif [ $ERRID -eq 5 ];then     …KEEU005-Eの場合のエラー処理
  elif [ $ERRID -eq 6 ];then     …KEEU006-Eの場合のエラー処理
  elif [ $ERRID -eq   …
           :     …以下,そのほかのエラー処理を繰り返す
  fi
fi
    
rm $$.log
 

(4) CSV形式ファイル出力のコーディング例

#!/bin/sh
    
/opt/eurps/bin/eurps -message -t csv -pf output.csv sample1.fms,data1.csv>$$.log
RC=$?
    
if [ $RC -gt 0 ];then
  ERRID=`awk '{print substr($0,12,3);}' $$.log`
        …メッセージ文字列から
          メッセージIDをERRIDに取り出す
  if [ $ERRID -eq 300 ];then     …KEEU300-Wの場合のエラー処理
  elif [ $ERRID -eq 5 ];then     …KEEU005-Eの場合のエラー処理
  elif [ $ERRID -eq 6 ];then     …KEEU006-Eの場合のエラー処理
  elif [ $ERRID -eq   …
           :     …以下,そのほかのエラー処理を繰り返す
  fi
fi
    
rm $$.log

(5) Excel形式ファイル出力のコーディング例

#!/bin/sh
    
/opt/eurps/bin/eurps -message -t xlsx -pf output.xlsx sample1.fms,data1.csv>$$.log
RC=$?
    
if [ $RC -gt 0 ];then
  ERRID=`awk '{print substr($0,12,3);}' $$.log`
        …メッセージ文字列から
          メッセージIDをERRIDに取り出す
  if [ $ERRID -eq 300 ];then     …KEEU300-Wの場合のエラー処理
  elif [ $ERRID -eq 5 ];then     …KEEU005-Eの場合のエラー処理
  elif [ $ERRID -eq 6 ];then     …KEEU006-Eの場合のエラー処理
  elif [ $ERRID -eq   …
           :     …以下,そのほかのエラー処理を繰り返す
  fi
fi
    
rm $$.log