- 締切済み
CシェルとCOBOLについて
初めて質問させて頂きます。 初心者の為、あまりうまく質問が出来るかどうかわかりませんが宜しくお願い致します。 今、 CシェルからCOBOLを呼び 呼ばれたCOBOLの内部で処理をしています。 そこで、 COBOLの内部で処理した値を呼び元のシェルに返すことは 出来るのでしょうか? 返す項目は、複数あり数値項目、文字項目両方あります。 プログラムのほうもあまり詳しくはありませんので、 初歩的な質問かも知れませが、 何方かご教授願いませんでしょうか。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- toysmith
- ベストアンサー率37% (570/1525)
COBOLを使ったのは大昔なので自信が無いんですが… unix,linux向けのCOBOLならSELECTでASSIGN TOを使ってファイルをstdoutにアサインすることができると思います。 そして、stdoutにアサインしたファイルに対してwriteすれば標準出力(=stdout)に表示されるのでは?と想像します。 displayがstdoutにアサインされてる場合、specialnamesでDISPLAYをstdoutにアサインできる場合… 色々な可能性は考えられますが、INPUT-OUTPUT SECTIONのFILE-CONTROLでSELECTって言うのが一般的ではないかと…
- mr_flogman
- ベストアンサー率62% (5/8)
文字列に関しては、COBOLのロードモジュールが標準出力に文字列を出力しているとすれば、以下のような方法がとれます。 COBOLのロードモジュールをloadmoduleとした場合、 set string=`loadmodule`
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
普通シェルから起動したプログラムがシェルに返せるのは、終了コードだけだと思います。 色々な項目を返すなら出力用に割り当てられたファイルに出力するのがいいと思います。
お礼
早速の御回答ありがとうございました。 やはり終了コードだけしか返せないですね。 ファイルに出力したり、テーブルに登録することも 考えましたが、 その後の処理でも使用する為に いくつも同じ処理をすると余計に時間がかかってしまうと思い質問させていただきました。
お礼
早速の御回答ありがとうございました。 文字列を出力できるんですね。 ただ何分、あまり詳しく理解しているわけではないので、 出来ればcobolの出力する部分を教えていただけないでしょうか? 度々すいませんが、宜しくお願い致します。