Berechnungen an Sortierfeldumbrüchen durchführen

Vorgehensweise:

Referenz:

Sie können die Befehle RECAP und COMPUTE verwenden, um in einer Berechnung Zwischensummenwerte zu erstellen. Die Zwischensummenwerte werden nicht angezeigt. Es wird nur das Ergebnis der Berechnung im Report angezeigt.


Nach oben

x
Syntax: Zwischensummen in Berechnungen verwenden

Die Syntax des RECAP- und des COMPUTE-Befehls ähneln der Syntax anderer Summen- und Zwischensummenbefehle.

{BY|ON} fieldname1 {RECAP|COMPUTE} fieldname2[/format] = expression;
                                      [WHEN expression;]

Hierbei gilt:

fieldname1

Ist das Feld in der BY-Phrase. Jedesmal, wenn sich der Wert des BY-Feldes ändert, wird ein neuer Recap-Wert berechnet.

fieldname2

Ist der Name des Feldes, das das Ergebnis der Formel enthält.

/Format

Kann jedes beliebige Format sein. Der Default ist D12.2.

expression

Kann jede beliebige Formel sein, wie es in Formeln verwenden beschrieben ist. Sie müssen die Formel mit einem Semikolon beenden.

WHEN-Formel

Kann nur mit RECAP verwendet werden. Gibt die bedingte Anzeige von RECAP-Zeilen an, wie es die boolesche Formel bestimmt (siehe Summenzeilen und Text bedingt anzeigen). Sie müssen die Formel mit einem Semikolon beenden.


Nach oben

x
Referenz: Verwendungshinweise für RECAP und COMPUTE


Beispiel: RECAP verwenden

Die folgende Anfrage verdeutlicht die Verwendung von RECAP (DEPT_NET) zur Bestimmung des Nettoertrags für jede Abteilung:

TABLE FILE EMPLOYEE
SUM DED_AMT AND GROSS
BY DEPARTMENT BY PAY_DATE
ON DEPARTMENT RECAP DEPT_NET/D8.2M = GROSS-DED_AMT;
WHEN PAY_DATE GT 820101
END

Die Ausgabe ist:

DEPARTMENT  PAY_DATE          DED_AMT            GROSS
----------  --------          -------            -----
MIS         81/11/30        $1,406.79        $2,147.75
            81/12/31        $1,406.79        $2,147.75
            82/01/29        $1,740.89        $3,247.75
            82/02/26        $1,740.89        $3,247.75
            82/03/31        $1,740.89        $3,247.75
            82/04/30        $3,386.73        $5,890.84
            82/05/28        $3,954.35        $6,649.50
            82/06/30        $4,117.03        $7,460.00
            82/07/30        $4,117.03        $7,460.00
            82/08/31        $4,575.72        $9,000.00
                                                      
** DEPT_NET           $22,311.98                      
                                                      
PRODUCTION  81/11/30          $141.66          $833.33
            81/12/31          $141.66          $833.33
            82/01/29        $1,560.09        $3,705.84
            82/02/26        $2,061.69        $4,959.84
            82/03/31        $2,061.69        $4,959.84
            82/04/30        $2,061.69        $4,959.84
            82/05/28        $3,483.88        $7,048.84
            82/06/30        $3,483.88        $7,048.84
            82/07/30        $3,483.88        $7,048.84
            82/08/31        $4,911.12        $9,523.84
                                                      
** DEPT_NET           $27,531.14


Beispiel: Mehrere RECAP-Befehle verwenden

Eine Anfrage kann mehrere RECAP- oder COMPUTE-Befehle enthalten. Mit dieser Option können Sie unterschiedliche Berechnungen an unterschiedlichen Steuerumbrüchen durchführen.

Die folgende Anfrage verdeutlicht die Verwendung mehrerer RECAP-Befehle.

TABLE FILE SALES
SUM UNIT_SOLD AND RETURNS
WHERE AREA EQ 'U' 
BY DATE BY AREA BY PROD_CODE
ON DATE RECAP
DATE_RATIO=RETURNS/UNIT_SOLD;
ON AREA UNDER-LINE RECAP
AREA_RATIO=RETURNS/UNIT_SOLD;
END

Die Ausgabe ist:

DATE   AREA  PROD_CODE  UNIT_SOLD  RETURNS
----   ----  ---------  ---------  -------
10/17  U     B10               30        2
             B17               20        2
             B20               15        0
             C17               12        0
             D12               20        3
             E1                30        4
             E3                35        4
                                          
** AREA_RATIO                      .09    
                                          
** DATE_RATIO                      .09    
                                          
------------------------------------------
10/18  U     B10               13        1
                                          
** AREA_RATIO                      .08    
                                          
** DATE_RATIO                      .08    
                                          
------------------------------------------
10/19  U     B12               29        1
                                          
** AREA_RATIO                      .03    
                                          
** DATE_RATIO                      .03    
                                          
------------------------------------------

WebFOCUS