AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます

1:AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
GAI 07/14 16:12
こんにちはいつも大変お世話になっております。

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) 不正十進数エラ―


4:Re: 久々COBOL85を見ました。(AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます)
江須扇 07/16 11:02

5:Re: AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
GAI 07/17 11:24

6:Re: AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
gai 07/17 11:53

7:Re: 久々COBOL85を見ました。(AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます)
gai 07/17 13:14

8:Re: AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
gai 07/17 14:09

9:Re: AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
GAI 07/17 15:57

10:Re: AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
EXCHANGE 07/19 16:24

11:AT ENDは正しく動いているのでは?
tahrayan 07/22 00:23

12:Re: AT ENDは正しく動いているのでは?
gai 07/23 15:07

13:Re: AT END が無視されて、再度、DELETE処理を行い、 不正十進数エラーで アボートしてしまいます
MAKI 08/04 14:53

1-

BluesBB ©Sting_Band