【IRIS】 Linux のシェルスクリプトでルーチンやメソッドの戻り値を取得する方法を教えてください

 

Linux で シェルスクリプト(shell script) からルーチンやメソッドを実行し戻り値を取得するには、iris コマンドを使用します。以下ドキュメントをご参照ください。
インスタンスの接続について

コマンド記述例は以下の通りです。

iris session インスタンス名 -U ネームスペース名 "実行ルーチン・メソッド" 


シェルスクリプトへの戻り値の指定は、ルーチンやメソッド終了時に指定する QUIT や RETURN コマンドに引数を指定する方法ではなく、プロセス処理終了時に %SYSTEM.Process クラスの Terminate() メソッドを使用して 特殊変数 $? に値を返す方法を利用します。
値は、0~255 を指定できます。

ルーチンでの利用例は以下の通りです。
 

// ルーチン名をTestとします
start1() public {
 hang 5  // 5秒待つ
 //第2引数に指定した数値がシェルスクリプトに戻ります
 set st=$system.Process.Terminate($JOB,11)
}


実行例は以下の通りです。
 

# iris session iris -U USER "start1^Test()"
# echo $?
11



クラスメソッドでの利用例は以下の通りです。
 

Class Test.Class1
{

ClassMethod test()
{
 hang 5 // 5秒待つ
 //第2引数に指定した数値が シェルスクリプトに戻ります
 set st=$system.Process.Terminate($JOB,12)
}
}


実行例は以下の通りです。
 

# iris session iris -U USER "##class(Test.Class1).test()"
# echo $?
12

該当する製品: IRIS Data Platform, HealthShare/IRIS Based, IRIS for Health
関連トピック: Windowsバッチでターミナルスクリプトを実行する方法を教えてください
関連トピック:Windows のバッチスクリプトでIRISのルーチンやメソッドの戻り値を取得する方法を教えてください。
添付ファイル:

アンケートにご協力をお願いします
このトピックは参考になりましたか?
このトピックに関するお問い合わせ

FAQトップに戻る