選択ルールと例

選択ルール:
  1. 現行レコードでは「真」と評価される再定義基準がある最初のフィールド (および存在する場合は、その子フィールド) が選択されます。同じ領域をマップするその他すべてのフィールド (および存在する場合は、その子フィールド) は選択されません。
  2. 再定義基準が「真」と評価されない場合、この領域をマップし、再定義基準がない最初のフィールド (および存在する場合は、その子フィールド) が選択されます。この領域をマップし、再定義基準を持たないフィールドが存在しない場合、フィールドは選択されません。
  3. 親再定義基準が「真」と評価される場合、ネストされた再定義基準のみが適用可能です。同じ選択ルールがネストされた再定義に適用されます。

この例では、次のデータを処理するとします。
Record 1	AA1A2
Record 2	B0102	
Record 3	C.... (X'C300010002')

再定義基準のないテンプレートを使用して、TABL モードでこのデータを表示すると、次のようになります。

1. 再定義基準のない TABL 表示形式
  Process   Options   Help                                                      
 ───────────────────────────────────────────────────────────────────────────────
 View             FMN.PI97117.DATA(TESTR)                           Top of 3    
 Command ===> _____________________________________________________ Scroll CSR  
                                                  Record AT TOP     Format TABL 
         REDEF-TYPE DATA-A1 DATA-A2 DATA-B1 DATA-B2 DATA-C1 DATA-C2             
         #2         #4      #5           #7      #8     #10     #11             
         AN 1:1     AN 2:2  AN 4:2   ZD 2:2  ZD 4:2  BI 2:2  BI 4:2             
         -          <>      <>          <->     <->  <---+>  <---+>             
 ******* ****  Top of data  ****                                                
 0000001 A          A1      A2          ***     ***  -15887  -15886             
 0000002 B          01      02            1       2   -3855   -3854             
 0000003 C          ..      ..          ***     ***       1       2             
 ******* ****  End of data  ****                                                

前回の例で説明した再定義基準を使用して、このデータを TABL モードで表示すると次のようになります。

2. 再定義基準を使用した TABL 表示形式
  Process   Options   Help                                                      
 ───────────────────────────────────────────────────────────────────────────────
 View             FMN.PI97117.DATA(TESTR)                           Top of 3    
 Command ===> _____________________________________________________ Scroll CSR  
                                                  Record AT TOP     Format TABL 
         REDEF-TYPE DATA-A1 DATA-A2 DATA-B1 DATA-B2 DATA-C1 DATA-C2             
         #2         #4      #5           #7      #8     #10     #11             
         AN 1:1     AN 2:2  AN 4:2   ZD 2:2  ZD 4:2  BI 2:2  BI 4:2             
         -          <>      <>          <->     <->  <---+>  <---+>             
 ******* ****  Top of data  ****                                                
 0000001 A          A1      A2                                                  
 0000002 B                                1       2                             
 0000003 C                                                1       2             
 ******* ****  End of data  ****                                                
                                                                                

選択された再定義フィールドのみが TABL モードで取り込まれます。選択されないフィールドはブランクになり、保護されます。

注: REDEF-TYPE 値を変更すると、再定義基準で異なる結果が生成される場合は、選択フィールドが変更されることがあります。

SNGL モードで再定義データを表示する場合は、次にようになります。

3. 再定義基準のない SNGL 表示形式
  Process   Options   Help 
 ───────────────────────────────────────────────────────────────────────────────
 View             FMN.SAMPLE.DATA(TESTR)                          Rec 1 of 3 
 Command ===> _____________________________________________________ Scroll CSR  
                                                  Record 1          Format SNGL 
                                                      Top Line is 1    of 7 
 Current 01: REDEFINES-LAYOUT                                     Length 5      
 Field               Data  
 REDEF-TYPE          A     
 DATA-A1             A1    
 DATA-A2             A2    
 DATA-B1             ***   
 DATA-B2             ***   
 DATA-C1             -15887
 DATA-C2             -15886
 ***  End of record  *** 
4. 再定義基準を使用した SNGL 表示形式
  Process   Options   Help 
 ───────────────────────────────────────────────────────────────────────────────
 View             FMN.SAMPLE.DATA(TESTR)                          Rec 1 of 3 
 Command ===> _____________________________________________________ Scroll CSR  
                                                  Record 1          Format SNGL 
                                                      Top Line is 1    of 5 
 Current 01: REDEFINES-LAYOUT                                     Length 5      
 Ref Field                      Data
   1 1 REDEFINES-LAYOUT
   2  2 REDEF-TYPE              A
   3  2 DATA-A
   4   3 DATA-A1                A1
   5   3 DATA-A2                A2
 ***  End of record  ***

REDEF-TYPE = 'A' にすると、「DATA-A」フィールドとその子が選択されます。

  Process   Options   Help                                                      
 ───────────────────────────────────────────────────────────────────────────────
 View             FMN.SAMPLE.DATA(TESTR)                          Rec 2 of 3    
 Command ===> _____________________________________________________ Scroll CSR  
                                                  Record 2          Format SNGL 
                                                      Top Line is 1    of 5     
 Current 01: REDEFINES-LAYOUT                                     Length 5      
 Ref Field                              Data                                    
   1 1 REDEFINES-LAYOUT                                                         
   2  2 REDEF-TYPE                      B                                       
   6  2 DATA-B REDEFINES DATA-A                                                 
   7   3 DATA-B1                        1                                       
   8   3 DATA-B2                        2                                       
 ***  End of record  ***                                                        

REDEF-TYPE = 'B' にすると、「DATA-B」フィールドとその子が選択されます。

  Process   Options   Help                                                      
 ───────────────────────────────────────────────────────────────────────────────
 View             FMN.SAMPLE.DATA(TESTR)                          Rec 3 of 3    
 Command ===> _____________________________________________________ Scroll CSR  
                                                  Record 3          Format SNGL 
                                                      Top Line is 1    of 5     
 Current 01: REDEFINES-LAYOUT                                     Length 5      
 Ref Field                              Data                                    
   1 1 REDEFINES-LAYOUT                                                         
   2  2 REDEF-TYPE                      C                                       
   9  2 DATA-C REDEFINES DATA-A                                                 
  10   3 DATA-C1                         1                                      
  11   3 DATA-C2                         2                                      
 ***  End of record  ***                                                        

REDEF-TYPE = 'C' にすると、「DATA-C」フィールドとその子が選択されます。