EDTTRN・EDTFILでキー以外の重複チェックを行いたい

Document created by Toshikazu_Toyama Employee on Dec 28, 2015Last modified by Toshikazu_Toyama Employee on May 11, 2016
Version 1Show Document
  • View in full screen mode

文書番号:JTEC002441

対象製品 CA 2E

バージョン V8.7 V8.6

プラットフォーム i5/OS

 

◆ 詳細内容

[質問]

EDTTRN・EDTFILのサブファイル(RCDコンテキスト)で、キー以外のフィールドに対し重複チェックを行いたいのですが、どのような方法がありますか?

 

◆ 回避方法/設定方法

[回答]

生成時に配列に展開される特殊なファイル*ARRAYSを使用し重複チェックを行う方法、および、一時的なワークファイルを使用する方法があります。

以前はQTEMP等にワークファイルを作成する方法が一般的でしたが、2Eの機能を活用するという意味では*ARRAYSの方がより工数が少なくて済むでしょう。

 

具体的な処理手順は次の通りです。

 

  1. *ARRAYSに配列を登録します。
    キーフィールドには重複チェックを行いたいフィールドを用意します。
    「項目の数」(=最大レコード数)に注意して下さい。
  2. 該当ファンクションの「USER :ヘッダーの非キーフィールドの検査処理」において、配列に対するDLTOBJを挿入します。
    その際、DTLOBJのパラメータは指定しません。この場合は全件がクリアされます。
  3. 「USER : サブファイルレコードのフィールド検査処理」において、RTVOBJでチェックを行い、存在時にはエラー処理を、不在時にはCRTOBJによるレコード追加処理を行います。

Attachments

    Outcomes