2E以外で作成された物理ファイルの取込方法について

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

文書番号:JTEC002437

対象製品 CA 2E

バージョン V8.7 V8.6

プラットフォーム i5/OS

 

◆ 詳細内容

[質問]

2E以外で開発した物理ファイルを、2Eで利用したいと考えていますが、DDSで定義したフィールド名が2E(RPG)で指定できる6桁を超えています。

このファイルをモデルに取り込むことは可能ですか?

 

◆ 回避方法/設定方法

[回答]

DDSは2Eとは異なり6桁を超えるフィールド名を指定することが可能です。

YRTVPFMDLコマンドにより2Eに取り込む際、「物理ファイルの同化」により自動的に2E生成名と外部DDS名を関連付けることが可能です。

ただし、元の物理ファイルがGENライブラリ存在する場合、取り込んだ設計情報をコンパイルすると物理ファイルは上書きされます。

元の物理ファイルのデータをそのまま使用する場合2Eに取り込んだファイル情報を元にアクセスパスとファンクションだけを作成してください。

 

下記はPlexで作成したテーブルを2Eで取り込んだ例です。

 

1. PLEXで作成された、物理ファイル(TSFILEP)のソース

 

0000.18      A*

0000.19      A****************************************************************

0000.20      A*

0000.21      A*

0000.22      Z* CRTPF

0000.23      A*

0000.24      A                 R   TSFILER                             TEXT( 'TESTFILE.PHYSICAL TA

0000.25      A                      TSCODEAAAA    10A         TEXT( 'TEST CODE' )

0000.26      A                                                                  COLHDG( 'TEST CODE' )

0000.27      A                      TSNAMEBBBB    50O        TEXT( 'TEST FLD' )

0000.28      A                                                                  COLHDG( 'TEST FLD' )

 

2. 2Eモデルに物理ファイルの情報を取り込むためのコマンド
   設計モデルの編集を終了し、次のコマンドを入力して下さい。

 

YRTVPFMDL FILE(ライブラリー/物理ファイル名)

注:2Eで扱われる生成名は3~6桁目が使用されますが、ユニークとならない場合、また2Eのフィールド生成名のルールに従いたい場合は、

YRTVPFMDL FILE(ライブラリー/物理ファイル名) RMVFLDPFX(*NO)

として下さい。


例:YRTVPFMDL FILE(TSFILER)

 

3. YRTVPFMDL取り込み結果の確認と編集

 

設計モデルを開き「編集:データベースリレーション」画面でファイル(TESTFILE.PHYSICAL TABLE  )が登録さたことが確認できます。

  *DSNR  xxxxxxxMDL                 OP: xxxxx      QPADEV0002  1/06/16 11:09:55

  編集 : データベースリレーション      xxxxxxxxxx

=>                               REL LVL:

?  TYP オブジェクト                      リレーション SEQ TYP 参照 オブジェクト

    FIL   TESTFILE.PHYSICAL TABLE   HAS               1 FLD TEST CODE

   FIL   TESTFILE.PHYSICAL TABLE   HAS               2 FLD TEST FLD

 

      キーフィールド'TEST CODE'のリレーションとフィールドユーセージを変更します。

   3-1 リレーションをHAS から KNOWN BYに変更します。

       3-2 ’Z2'で「編集 : フィールド 詳細」に移動してフィールドユーセージをATRからCDEに変更します。

 

4. 「編集:ファイルエントリー」画面での確認

 

2Eで扱われる生成名は3~6桁目が使用されます。

   TSCODEAAAAはCODEの部分が、TSNAMEBBBBはNAMEの部分が使用されます。

  編集 : ファイルエントリー              xxxxxxxxxx

   ファイル . . . . . . : TESTFILE.PHYSICAL TABLE

? FIELD                    タイプ    OCR  ET KSQ  生成名     長さ    RENAMED

   TEST CODE            CDE             K         CODE          10

   TEST FLD                IGC               A         NAME          50

      

YRTVPFMDLのパラメータRMVFLDPFX(*NO)とした場合は、生成名が2E側で自動生成されます。

  編集 : ファイルエントリー             xxxxxxxxxx

   ファイル . . . . . . : TESTFILE.PHYSICAL TABLE

? FIELD                    タイプ    OCR  ET KSQ  生成名     長さ    RENAMED

   TEST CODE            CDE               K        ADCD          10

   TEST FLD                IGC                A        AAIG           50       

 

5. 「編集:ファイル詳細」画面での確認

 

物理ファイルの同化が「Y」となっていることを確認して下さい。

  編集 : ファイル詳細

  ファイル名  .. . . . . . : TESTFILE.PHYSICAL TABLE

  属性 . . . . . . . . . . : REF          フィールド参照ファイル . : *NONE

  文書化順序 . . . . . . . :              原始ライブラリー . . .   :  xxxxxxxGEN

  フォーマット接頭辞の生成 : TS           分散 . . . . . . . .     :   (Y,N)

  物理ファイルの同化 . . . : Y

(中略)

? TYP アクセスパス         ソースメンバー  キー   索引 OPT           自動 ADD

Z PHY   物理 ファイル (PHY)            TSFILEP    NONE                       ATR ONLY

   UPD  更新 インデックス (UPD)       TSFILEL0   UNIQUE IMMED         ATR ONLY

   RTV  検索 インデックス (RTV)       TSFILEL1   UNIQUE IMMED         ATR ONLY

 

 

6. 「編集:物理ファイルフォーマットエントリー」画面で実際のDDS名称の確認

 

  タイプPHYの前の?に「Z」を入力し「 編集 : アクセスパス詳細」画面へ、その画面のフォーマットの前の?に「Z」を入力し「編集 : アクセスパスフォーマットエントリー」画面へ、

  その画面でF8キーを押下します。

---上書--- の部分が実際のPFのDDS名となります。

(論理ファイルを生成すると分かりますが、LFで2Eの生成名(接頭辞+生成名)にRENAMEされ、ファンクションで使用されます。)

  編集 : 物理ファイルフォーマットエントリー

ファイル 名 . . .    : TESTFILE.PHYSICAL TABLE     属性 . .   : REF

アクセスパス. . .    :  物理 ファイル (PHY)            タイプ . . : PHY

フォーマットテキスト : TESTFILE.PHYSICAL TABLE

                                                       -------------- 上 書 --------------

FIELD                               タイプ 長さ     SEQ   DDS名         タイプ 長さ

TEST CODE                CDE     A    10       1.00  TSCODEAAAA

TEST FLD                     IGC      A    50       2.00  TSNAMEBBBB

 

尚、YRTVMDLPFは追加のみの機能です。Plex側で変更があった場合は「編集 : 物理ファイルフォーマットエントリー」画面で修正して下さい。

   「YRTVPFMDLコマンドで取り込んだ物理ファイルが変更された場合の、2Eでの修正方法について」をご覧ください。

Attachments

    Outcomes