サマリー処理で各ブレイクごとの合計件数を簡単に得ることはできるか?

Document created by Masaaki_Iyama Employee on Jun 23, 2015Last modified by Masaaki_Iyama Employee on Jun 24, 2015
Version 1Show Document
  • View in full screen mode

文書番号: JTEC001015

製品名: CA-Easytrieve Plus

バージョン: ALL

OS: z/OS, MSP, VOS3

 

Question

サマリー処理で各ブレイクごとの合計件数を簡単に得ることはできるか? 

 

Answer

合計件数を持つシステム定義フィールド TALLY を参照します。

 

● TALLY

TALLYフィールドは各コントロール・ブレーク・レベルごとに作成されます。どのコントロール・ブレーク・レベルの合計件数かは、LEVELというシステム・フィールドで判断します。 TALLYは10バイトのパック10進フィールドであり、小数点以下の桁数はゼロ桁です。レポートの出力桁数は、TALLY(2桁)+SUMSPACE(3桁)の合計5桁になります。TALLYの出力桁数はREPORTステートメントでTALLYSIZEパラメータで指定します。(標準値=2)

 

● LEVEL

CONTROLステートメントを指定すると、自動的にLEVELというフィールドが作成されます。

 

        CONTROL     (FINAL)         SHOHIN

                                 ↑             ↑

                         LEVEL = 2      LEVEL = 1

 

                                           

プロシジャー内でこのLEVELを参照することによって、ブレーク・レベルごとの合計値を判断 することができます。 (IF LEVEL = 1 という条件式を満たすときはSHOHIN ごとの合計値に対して処理が行われます。)

 

記述例

(例) キー・ブレイク発生時の合計件数をリストアウトする

  FILE    FILEA

    BUNRUI-CD       12     2    N

    SOGAKU           70    6    P  0

    SHIRE-CD          76    5    A

    SHIRE-NM          81  20    K

  JOB

    PRINT

  REPORT   SUMMARY

    SEQUENCE  SHIRE-CD   BUNRUI-CD

    CONTROL    SHIRE-CD   BUNRUI-CD

    TITLE 1   '仕入額合計表'

    HEADING   TALLY('件数')

    LINE    SHIRE-CD   BUNRUI-CD   SOGAKU  T ALLY

 

  [出力結果]

 

     90年10月11日                  仕入額合計表                        1頁

 

                    SHIRE-CD    BUNRUI-CD    SOGAKU      件数

 

                      C2405            01           512,100       11                        →    LEVEL = 1 で処理される合計値

                                         02            371,800         5

                      C2405                           883,900        16                        →       LEVEL = 2 で処理される合計値


                      C2410           02          700,800       19

                      C2410                           700,800        19

 

                                                       1,584,700        35                        →       LEVEL = 3 で処理される合計値( 総合計)

Attachments

    Outcomes