連続したフィールドの定義方法は?

Document created by Masaaki_Iyama Employee on Jun 16, 2015
Version 1Show Document
  • View in full screen mode

文書番号: JTEC000979

製品名: CA-Easytrieve Plus

バージョン: ALL

OS: z/OS, MSP, VOS3

 

Question

連続したフィールドの定義方法は? 

 

Answer

フィールド定義のスタート位置に「*」を指定します。

EASYPLUSでは入出力エリアのフィールドを定義する場合、レコードの何バイト目から始まっているかというスタート位置の情報を与えます。連続するフィールドを定義する場合に各々のフィールドに対しスタート位置を記述するかわりに「*」を記述することで定義が可能です。「*」はそれ以前に定義された最大のポジションに連続するという指定になります。

 

記述例

(例1)  フィールド定義例-1

 

BU     KA     SHAIN-NO   ・・・・・・・・・・・・・・・・・・   TEATE-1    TEATE-2

1        6       11                                                  87              92

 

 FILE  FILEA

   BU           *  5  A

   KA           *  5  A

   SHAIN-NO    *  5  N

   TEATE-1    87  5  P 0

   TEATE-2     *  5  P 0


                                           

途中を省略し連続したフィールドの定義を行う場合、途中のスタート位置を記述します。

(例2)  フィールド定義例-2

 

 FILE  FILEA

   DATA       1 150  A

   BU         1    5  A

   KA          *    5  A

   SHAIN-NO   *   5  N

                                           

BU ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ KA    SHAIN-NO

D A T A (150)                                                                               ↑        156

                                                                                                 151  

 

注意 「*」はそれ以前に定義された最大のポジションに連続するという定義になるため、上の例ではKAはDATAに続くフィールドとして定義されます。BUに連続するフィールドとして正しく定義するには以下のとおり記述します。

 

 FILE  FILEA

   BU         1   5  A

   KA         *   5  A

   SHAIN-NO   *   5  N

   DATA      1 150  A

                                           

BU KA  SHAIN-NO      

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

D A T A (150)    

 

Attachments

    Outcomes