SUSPEND IDENTICAL SUPPRESS

SUSPEND IDENTICAL [SUPPRESS] [(rep)]

このドキュメントでは、次のトピックについて説明します。

構文図で使用されている記号については、「構文記号」を参照してください。

関連ステートメント:AT END OF PAGE | AT TOP OF PAGE | CLOSE PRINTER | DEFINE PRINTER| DISPLAY | EJECT | FORMAT | NEWPAGE | PRINT | SKIP | WRITE | WRITE TITLE | WRITE TRAILER

関連機能グループ:出力レポートの作成


関数

SUSPEND IDENTICAL SUPPRESS ステートメントは、1 レコードの処理に対して(同一フィールド値の出力を省略する)Natural セッションパラメータ設定 IS=ON を中止するために使用します。

セッションパラメータ IS(『パラメータリファレンス』)も参照してください。

構文説明

構文要素 説明
(rep)
レポート指定:

表記 (rep) は、SUSPEND IDENTICAL SUPPRESS ステートメントを適用するレポートの ID を指定するために使用できます。

範囲 0 - 31 の値、または DEFINE PRINTER ステートメントを使用して割り当てた論理名を指定できます。

(rep) を指定しない場合、SUSPEND IDENTICAL SUPPRESS ステートメントは最初のレポート(レポート 0)に適用されます。

Natural で作成した出力レポートのフォーマットを制御する方法については、『プログラミングガイド』の「レポートフォーマットおよび制御」を参照してください。

例 1 - SUSPEND IDENTICAL SUPPRESS を使用したプログラム

** Example 'SISEX1': SUSPEND IDENTICAL SUPPRESS                         
************************************************************************
DEFINE DATA LOCAL                                                       
1 EMPLOY-VIEW VIEW OF EMPLOYEES                                         
  2 PERSONNEL-ID                                                        
  2 FIRST-NAME                                                          
  2 NAME                                                                
  2 CITY                                                                
1 VEH-VIEW VIEW OF VEHICLES                                             
  2 PERSONNEL-ID                                                        
  2 MAKE                                                                
END-DEFINE                                                              
*                                                                       
LIMIT 15                                                                
*                                                                       
RD. READ EMPLOY-VIEW BY NAME STARTING FROM 'JONES'                      
  /*                                                                    
  SUSPEND IDENTICAL SUPPRESS                                       
  /*                                                                    
  FD. FIND VEH-VIEW WITH PERSONNEL-ID = PERSONNEL-ID (RD.)
    IF NO RECORDS FOUND                                   
      MOVE '***NO CAR***' TO MAKE                         
    END-NOREC                                             
    DISPLAY NOTITLE                                       
            NAME (RD.) (IS=ON)                            
            FIRST-NAME (RD.) (IS=ON)                      
            MAKE (FD.)                                    
  END-FIND                                                
  /*                                                      
END-READ                                                  
END

プログラム SISEX1 の出力:

        NAME              FIRST-NAME              MAKE        
-------------------- -------------------- --------------------
                                                              
JONES                VIRGINIA             CHRYSLER            
JONES                MARSHA               CHRYSLER            
                                          CHRYSLER            
JONES                ROBERT               GENERAL MOTORS      
JONES                LILLY                FORD                
                                          MG                  
JONES                EDWARD               GENERAL MOTORS      
JONES                MARTHA               GENERAL MOTORS      
JONES                LAUREL               GENERAL MOTORS      
JONES                KEVIN                DATSUN              
JONES                GREGORY              FORD                
JONES                EDWARD               ***NO CAR***        
JOPER                MANFRED              ***NO CAR***        
JOUSSELIN            DANIEL               RENAULT             
JUBE                 GABRIEL              ***NO CAR***        
JUNG                 ERNST                ***NO CAR***        
JUNKIN               JEREMY               ***NO CAR***

例 2 - 前のプログラムと同様(ただし、SUSPEND IDENTICAL SUPPRESS は使用しない)

** Example 'SISEX2': SUSPEND IDENTICAL SUPPRESS (compare with SISEX1)   
************************************************************************
DEFINE DATA LOCAL                                                       
1 EMPLOY-VIEW VIEW OF EMPLOYEES                                         
  2 PERSONNEL-ID                                                        
  2 FIRST-NAME                                                          
  2 NAME                                                                
  2 CITY                                                                
1 VEH-VIEW VIEW OF VEHICLES                                             
  2 PERSONNEL-ID                                                        
  2 MAKE                                                                
END-DEFINE                                                              
*                                                                       
LIMIT 15                                                                
RD. READ EMPLOY-VIEW BY NAME STARTING FROM 'JONES'                      
  /*                                                                    
  /* SUSPEND IDENTICAL SUPPRESS    /* statement removed            
  /*                                                                    
  FD. FIND VEH-VIEW WITH PERSONNEL-ID = PERSONNEL-ID (RD.)              
    IF NO RECORDS FOUND             
      MOVE '***NO CAR***' TO MAKE   
    END-NOREC                       
    DISPLAY NOTITLE                 
            NAME (RD.) (IS=ON)      
            FIRST-NAME (RD.) (IS=ON)
            MAKE (FD.)              
  END-FIND                          
  /*                                
END-READ                            
END

プログラム SISEX2 の出力:

        NAME              FIRST-NAME              MAKE        
-------------------- -------------------- --------------------
                                                              
JONES                VIRGINIA             CHRYSLER            
                     MARSHA               CHRYSLER            
                                          CHRYSLER            
                     ROBERT               GENERAL MOTORS      
                     LILLY                FORD                
                                          MG                  
                     EDWARD               GENERAL MOTORS      
                     MARTHA               GENERAL MOTORS      
                     LAUREL               GENERAL MOTORS      
                     KEVIN                DATSUN              
                     GREGORY              FORD                
                     EDWARD               ***NO CAR***        
JOPER                MANFRED              ***NO CAR***        
JOUSSELIN            DANIEL               RENAULT             
JUBE                 GABRIEL              ***NO CAR***        
JUNG                 ERNST                ***NO CAR***        
JUNKIN               JEREMY               ***NO CAR***