Easytrieve Plus : BEFORE-BREAK、AFTER-BREAKプロシジャー使用上の注意点は?
book
Article ID: 185533
calendar_today
Updated On:
Products
EASYPROCLIB
Easytrieve Report Generator
Easytrieve Report Generator for Common Services
Issue/Introduction
Question
BEFORE-BREAK、AFTER-BREAKプロシジャー使用上の注意点は?
Environment
z/OS, MSP, VOS3, IBM, FUJITSU, HITACHI
Resolution
Answer
合計値、コントロール・キー・フィールド以外のデータは、次の入力データが参照されます。また、レポ-ト・プロシジャー内では使用できないステートメントもあります。BEFORE-BREAK、AFTER-BREAK プロシジャーは、以下の点に注意して使用してください。
● 合計値やコントロール・キー・フィールド以外のデータは参照しない。
BEFORE-BREAK、AFTER-BREAKプロシジャーは、コントロール・レポートの合計値を変更したり、合計行にコメントをつけたりするために用意されているレポート・プロシジャーです。キ-・ブレイクの発生を判断するために、入力エリアには次のレコードが入力されています。コントロール・キー・フィールドや合計値は、Easytrieve Plusが用意したコントロール処理のためのエリアを参照しますが、その他の明細データはつぎのデータが参照されてしまいます。BEFORE-BREAK、AFTER-BREAKプロシジャーではコントロール・キー・フィールド、合計値以外のフィ-ルドは参照しないようにします。
● レポート・プロシジャーでは、下記のステートメントは使用できません。
GET (データベース・オプション使用時)
PUT
READ
WRITE
POINT
PRINT
(データベース・オプション使用時)
DLI
IDMS
SQL
AIM
※ SEARCH、CALLは使用可能です。
● DISPLAY実行時ライン・カウンターの値の判定は行われません。
EASYPLUSは内部でもつライン・カウンターの値を判断して自動改頁処理を実行しますが、この判断は明細行の出力直前にのみ実行され、DISPLAYによる出力直前には実行されません。このため、DISPLAY実行途中に改頁のタイミングがくる場合は注意が必要です。
記述例
(例) 合計行の見出しをBEFORE-BREAKプロシジャーで変更する。
FILE FILEA
HIN-CODE * 5 A HEADING ‘商品コード'
HIN-NAME * 10 A HEADING ‘商品名'
TANKA * 5 N 0 HEADING ‘単価'
SURYO * 5 N 0 HEADING ‘数量'
W-URIAGE W 10 N 0 HEADING ‘売上げ金額'
*
JOB
PRINT
*
REPORT
SEQUENCE HIN-CODE
CONTROL FINAL NOPRINT HIN-CODE NOPRINT
TITLE ‘商品別売上一覧表'
LINE HIN-CODE HIN-NAME TANKA SURYO W-URIAGE
BEFORE-BREAK. PROC
IF LEVEL = 1
DISPLAY ‘ *** TOTAL *** ' POS 1 HIN-CODE +
POS 2 HIN-NAME POS 4 SURYO POS 5 W-URIAGE
END-IF
END-PROC
※この例では、商品コード別に集計処理を行い、合計行は自動出力せずに、BEFORE-BREAKプロシジャーでDISPLAYしています。ところが、このままだと商品名はコントロール・キー・フィールドではないブレイク後の次のデータの内容がDISPLAYされてしまいます。この場合、CONTROLステートメントの指定を次のように変更します。
CONTROL FINAL NOPRINT HIN-CODE NOPRINT HIN-NAME NOPRINT
商品名と商品コードとは同時にブレイクする項目であり商品名をコントロール・キー・フィールドに指定しても新たなキー・ブレイクを指定したことにはなりません。商品名はコントロール・キー・フィールドとして指定したことにより、BAFORE-BREAK、AFTER-BREAKプロシジャーで正しい値を参照できるようになります。
※LEVEL: キー・ブレイクのレベルを判定するシステム定義フィールド
※POS : DISPLAYによる出力位置を指定するキーワード
Additional Information
Old Japanese Knowledge document ID: JTEC001016
Feedback
thumb_up
Yes
thumb_down
No