0

宿題では、ファイル処理で複数レベルのコントロール ブレークを練習しています。入力ファイルからデータを取得し、各グループを処理し (この場合は、オフィス、建物、および管理エージェントからの 1 か月の合計賃料を計算するプロパティ管理ルーチン)、きれいなレポート ファイルにデータを吐き出します。私はこれまでに得たものへのリンクを書いて提供しました。まだ出力の書式設定を気にしていないという点で大雑把ですが、最初に実行できることを確認したかっただけです。「-free」スイッチを使用すると、エラーや警告なしでコンパイルされます。ただし、プログラムを実行すると、次のメッセージが表示されます。

libcob: File sharing conflict (STATUS = 61) File : 'income-report.txt'
WARNING - Implicit CLOSE of propmanager-in-file ("prop-records.txt")

いくつかの検索の後、ファイル I/O の "STATUS = 61" コードは通常、別のファイル コネクタで既に開かれている物理ファイルに対して OPEN が実行されているときにスローされることがわかりました。当時、私は別の vi ウィンドウで Income-report.txt を開いていました。私はそれを閉じ、再コンパイルして実行し、同じメッセージを受け取りました。私は困惑しています。

Income-report.txt と prop-record.txt は、プログラムと同じディレクトリにあります。前回コンパイルしたとき、どちらのファイルも自分のマシンのどこでも開いていませんでしたが、それでも上記のメッセージが表示されました。

コードへのリンク: http://pastebin.com/WrPuTUW9

4

1 に答える 1

3

私たちはSourceForgeのOpenCOBOLプロジェクトに関するディスカッションフォーラムであなたをもっと助けることができるでしょう。そこでは、より自由な形式で議論することができ、ここで好まれる質問と回答の形式に制限されません。それについて不平を言うことはありませんが、私たちが助けることができるいくつかの誤解があるかもしれないので、あなたはもっとオープンなフォーラムから利益を得るかもしれないと思います。

コンパイル時と実行時を間違えているような気がします。プログラムをコンパイルするときに開いているデータファイルは関係ありません。ファイル共有ステータスコードは実行時エラーです。プログラムを実行すると、データファイルが開いていると思います。

SourceForgeにアクセスしてください。可能であれば、さらにサポートさせていただきます。

于 2012-11-23T22:02:50.177 に答える