ページの先頭です。
ここから本文です。

よくあるご質問(サポートFAQ)

【COBOL Standard Edition】OCF21からの移行でCOBOL独自相対ファイルをオープンするとエラーになる

質問内容

Open COBOL Factory 21/COBOL85 Proで使用していたCOBOL独自形式の相対ファイルを、COBOL Standard Editionでオープンすると、FILE STATUS=30のエラーになります。

回答内容

COBOL独自形式の相対ファイルは、Open COBOL Factory 21(以降OCF21)とCOBOL Standard Edition(以降COBOL SE)とでファイル構成が異なっています。
このため、OCF21で使用していたCOBOL独自形式の相対ファイルを、COBOL SEのファイル形式に変更する必要があります。

ただし、変換ツールは提供していませんので、COBOLプログラムにて変換する方法の概要をご紹介します。
実際の変換では、エラーチェック等を必要に応じて実施してください。

1. ファイル定義
(A) OCF21のデータファイル(TBL01)をCOBOL独自形式の順ファイルとして定義
(B) OCF21の制御ファイル(TBL01.rel)もCOBOL独自形式の順ファイルとして定義
(C) COBOL SEの相対ファイルを動的アクセスで定義

2. データ定義
相対キー番号(RELATIVE KEYに指定したデータ)を 0 で初期化

3. 変換手順
■OCF21のデータファイル(TBL01)からCOBOL SEの相対ファイルを作成
3-1. (A) を INPUT OPEN
3-2. (C) を OUTPUT OPEN
3-3. (A) が AT END になるまで、3-3-1 ~ 3-3-3 を繰り返し実行
3-3-1. (A) を READ
3-3-2. 3-3-1 で読み込んだレコードを (C) のレコードに転記
3-3-3. 相対キー番号を 1 加算し、(C) を WRITE
3-4. (A) および (C) を CLOSE

■COBOL SEの相対ファイルにOCF21の制御ファイル(TBL01.rel)の情報を反映
※制御ファイル中に”D”が無ければ実行不要です
3-5. 相対キー番号を 0 で初期化
3-6. (B) を INPUT OPEN
3-7. (C) を I-O OPEN
3-8. (B) が AT END になるまで、3-8-1 ~ 3-8-3 を繰り返し実行
3-8-1. 相対キー番号を 1 加算
3-8-2. (B) を READ
3-8-3. 3-8-2 で読み込んだレコードの値が ”D” のとき (C) を DELETE
3-9. (B) および (C) を CLOSE


【確認済みのバージョン】すべて
【確認済みの対象OS】Windows

製品名カテゴリ

COBOL

対象製品

品名: COBOL Standard Edition
  • コンテンツID: 3150114415
  • 公開日: 2019年06月07日
  • 最終更新日:2019年06月07日

アンケート

サポート情報充実のためアンケートにご協力をお願いいたします。



コメント欄:
ここからページ共通メニューです。 ページ共通メニューを読み飛ばす。