プロが教える店舗&オフィスのセキュリティ対策術

駆け出しのPGです。すいませんが、教えて下さい。

BLOCK CONTAINS(ブロックの大きさ)句で、
BLOCK CONTAINS 0 RECORDS

と指定されています。どうして0なんですか?

「取りあえず、このプログラム理解しろ」って渡されたプログラムで、最初から引っかかってしまいました。
よく分からなくて。。。宜しくお願いします。

A 回答 (3件)

0の意味はマニュアルの文法書を読めば書いてあるはずです。

COBOLは文の種類が多いので文法書を読まないと既存プログラムのコピー&小修正しか出来ないでしょう。

ブロックサイズの指定は、
(1) プログラムでの指定
(2) JCLでの指定
(3) 既存ファイルの場合はそのファイルのブロックサイズ
の順で優先されます。プログラムで 0 を指定することはプログラムでブロックサイズを指定しないことを意味します。したがって、JCLで指定していればその値、JCLでも指定していなければ既存ファイルの情報が使われます。
ディスク装置のモデルによって最適なブロックサイズは決まっているので、プログラムでは指定せず、JCLで使用するディスクに合わせて指定するのが普通です。
    • good
    • 1
この回答へのお礼

ありがとうございました。
マニュアル等もしっかり調べてみます。

それから、JCLもしっかり勉強しようと思います!

知らないことばかりなので、覚えていくのも楽しいです。

お礼日時:2004/06/16 09:30

かなり昔のことのため、正確には覚えていないのですが、


私がやっていたときは、ブロック長はJCLで指定した方が
管理が楽なため、そんなことをしていたような記憶があります。
    • good
    • 0
この回答へのお礼

JCLを見てみたら、そうみたいでした。

ありがとうございました!

お礼日時:2004/06/16 09:32

もし、AS/400をお使いなら、BLOCK CONTAINS 0 RECORDSという指定があります。


AS/400では、この指定は意味を持たないからです。
下記を参照してみてください。

参考URL:http://as400.aradsys.luu.jp/cob.htm
    • good
    • 0
この回答へのお礼

解答していただいて、ありがとうございました。
勉強になりました。

意味がないって事なんですね。
AS/400かどうかと言うのが、勉強不足で分からないのですが・・・すいません。

ブロックの大きさって、JCLで指定できるんですよね?
その辺も関係あるのでしょうか・・・

私、勉強不足ですね。これからも頑張ります(TT)
ありがとうございました。

お礼日時:2004/06/15 13:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!