Google
オフコン練習帳内を検索
インターネット全体を検索

NECオフコン関連
オフコン一般
情報
AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます

投稿者: GAI 投稿日時: 2015-7-14 16:12:14

こんにちはいつも大変お世話になっております。

COBOL85で、
下記の処理をした場合、
最終レコードを削除した後、
AT END が無視されて、再度、DELETE処理を行い、
不正十進数エラーで アボートしてしまいます。

それなりにスキルのある前任者が作ったプログラムです。
最終レコードが削除されたら、レコードがなくなるので、AT END になると思うのですが、
なぜAT END GOTO ABC-090が無視されてしまうのでしょうか?
どう処置すればいいでしょうか?


1.RDBファイルを順読み
2.削除する
3.次のレコードを読む(最終レコード)
4.削除する(最終レコード)
5.次のレコードを読む(AT ENDになるはず)
6.削除する → 不正エラー!!?

ABC-010.

READ XX-FILE AT END GOTO ABC-090.

DELETE XX-FILE .

GO TO ABC-010.

ABC-090.

【例】
READ レコード 99997 →DELETE
READ レコード 99998 →DELETE
READ レコード 99999 →DELETE
READ  E M0021: (PRG=XXXXXX,ADR=00051C12) 不正十進数エラ―


名前※
題名
メッセージ url email imgsrc image code quote
サンプル
bold italic underline linethrough  



 [もっと...]
パスワード※
オプション ※印の項目をクッキーに保存