バージョン 6.3.3
 —  ステートメント  —

BEFORE BREAK PROCESSING

ストラクチャードモード構文

BEFORE [BREAK] [PROCESSING]
statement ../graphics/dot3.gif
END-BEFORE

レポーティングモード構文

[BEFORE [BREAK] [PROCESSING]

statement

DO statement ../graphics/dot3.gif DOEND

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

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

関連ステートメント: ACCEPT/REJECT | AT BREAK | AT START OF DATA | AT END OF DATA | BACKOUT TRANSACTION | DELETE | END TRANSACTION | FIND | GET | GET SAME | GET TRANSACTION | HISTOGRAM | LIMIT | PASSW | PERFORM BREAK PROCESSING | READ | RETRY | STORE | UPDATE

関連機能グループ:「データベースへのアクセスと更新


機能

BEFORE BREAK PROCESSING ステートメントは、次の動作の前に処理を実行するために、自動ブレイク処理と組み合わせて使用します。

このステートメントは、ブレイク処理に使用するユーザー定義変数の値を初期化したり、計算を行ったりするためによく使用します(AT BREAK ステートメントを参照)。

このステートメントは非手続き型なので、プログラム内の位置ではなくイベントによって実行されます。

プログラミングガイド』の次のセクションも参照してください。

Top of page

制限事項

Top of page

構文説明

statement... ステートメントの例については、下記の「」を参照してください。

ブレイク処理が行われない(処理ループに AT BREAK ステートメントが指定されていない)場合、BEFORE BREAK PROCESSING ステートメントで指定したステートメントは実行されません

END-BEFORE
ストラクチャードモードの場合:
Natural 予約語 END-BEFORE を使用して、BEFORE BREAK PROCESSING ステートメントを終了させる必要があります。

Top of page

** Example 'BBPEX1': BEFORE BREAK PROCESSING                            
************************************************************************
DEFINE DATA LOCAL                                                       
1 EMPLOY-VIEW VIEW OF EMPLOYEES                                         
  2 CITY                                                                
  2 NAME                                                                
  2 SALARY (1)                                                          
  2 BONUS  (1,1)                                                        
*                                                                       
1 #INCOME  (P11)                                                        
END-DEFINE                                                              
*                                                                       
LIMIT 7                                                                 
READ EMPLOY-VIEW BY CITY = 'L'                                          
  /*                                                                    
 BEFORE BREAK PROCESSING                                               
    COMPUTE #INCOME = SALARY (1) + BONUS (1,1)                          
  END-BEFORE                                                    
  /*                                                                    
  AT BREAK OF CITY                                                    
    WRITE NOTITLE  'AVERAGE INCOME FOR' OLD (CITY) 20X AVER(#INCOME) /
  END-BREAK                                                           
  /*                                                                  
  DISPLAY CITY 'NAME' NAME 'SALARY' SALARY (1) 'BONUS' BONUS (1,1)    
END-READ                                                              
END                                                                  

プログラム BBPEX1 の出力:

        CITY                 NAME           SALARY     BONUS           
-------------------- -------------------- ---------- ----------        
                                                                       
LA BASSEE            HULOT                    165000      70000        
AVERAGE INCOME FOR LA BASSEE                                     235000
                                                                       
LA CHAPELLE ST LUC   GUILLARD                 124100      23000        
LA CHAPELLE ST LUC   BERGE                    198500      50000        
LA CHAPELLE ST LUC   POLETTE                  124090      23000        
LA CHAPELLE ST LUC   DELAUNEY                 115000      23000        
LA CHAPELLE ST LUC   SCHECK                   125600      23000        
LA CHAPELLE ST LUC   KREEBS                   184550      50000        
AVERAGE INCOME FOR LA CHAPELLE ST LUC                            177306

Top of page