- 締切済み
COMP-3
こんにちわ。COBOLプログラマーです。 現在単体試験の入力データ作成で困ってます。 COMP-3形式のデータをPC上で作成するのはどのようにすれば良いのでしょうか? 例えば. NUM_A PIC X(10). NUM_B PIC S9(10) COMP-3. とかだと、テキストでは 1234567890?????? になると思いますが「?」部分の編集方法が分かりません。 ちなみに今までは 1.Excelで作成→CSV形式で保存→ホスト上のプログラムで変換 2.ホスト上のエディタでHEX表示して編集 3.JCLで置換 などの方法でデータを作成してました。 ちょろっと調べてみたんですけどバイナリエディタっての使えばいいんですかね? その場合、2の手順と同じになると思うのですが項目数が数百個あるレコードのため、1の手順のように一括で変換出来るフリーウェアがあればなと思いました。 皆様の知恵をお借りしたいと思います。 宜しくお願いしますm(__)m
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- kampfer5412
- ベストアンサー率100% (1/1)
No.1の人と同意見です。 変換するツールをCOBOLで作成できるのなら、 作ったほうが楽かと思います。 MOVE文だけで、変換できますし。 手作業よりよっぽど汎用的にもできると思います。
- chukenkenkou
- ベストアンサー率43% (833/1926)
他の方にも分かるように、、、 COMP-3は、内部10進(パック)形式ですね。 項目が数百個もあるなら、PC上で編集したり、ホストに転送したり大変ではないですか? どこのホストを使っているのか分かりませんが、OSのユティリティで、データ生成を支援するものがあると思いますよ? COBOLのプログラマなら、テストデータを生成したり、変換するツールをCOBOLで作るのもいいでしょう。 COBOLは、そういう処理は得意ですよ? こんな感じでしょうか。。。 (1)PC上のテキストでは、CSV形式で0~9の数字(必要なら符号も付けて)で作成 (2)ホストに転送 (3)ホスト上で、ツールで幾つかの項目をパックに変換
お礼
ありがとうございます。 説明不足でしたが今回はPC COBOLなんですよ。 なのでそういったユティリティが今の開発環境で無かったためどうやって作ろうかと思った次第です。 確かにテストデータを作成するプログラム自分で作ればいいかなと思ったのですが、時間の余裕もないのでそういったツールがあればそれでやっちゃおうと思ったので質問させて頂きました。 ちゃんと作成するとなると入力データはCSVで 1レコード目 :属性情報1,属性情報2,属性情報3,・・・・ 2レコード目 :桁数情報1,桁数情報2,桁数情報3,・・・・ 3レコード目以降:データ1,データ2,データ3,・・・ というようなファイルを作成してプログラム内で属性情報がCOMP-3のデータは変換して出力するというようなイメージですかね。 今は汎用的なやつを作ってる時間がないのでとりあえず入出力のレイアウトを固定して単純移送するだけのもので対処しようと思います。
お礼
ありがとうございます。 時間がないため入力レコードのレイアウトを問わない汎用的なものは諦めてとりあえず今回は固定レイアウトでMOVE文ONLYの単純なプログラムで対処しようと思います。