Cómo generar columnas de suma para campos de clasificación horizontal

Cómo:

Referencia:

Los comandos de resumen SUBTOTAL, SUB-TOTAL, SUMMARIZE y RECOMPUTE pueden usarse con saltos de clasificación horizontal.

Cuando una solicitud tiene múltiples campos de visualización y un campo de clasificación ACROSS, la salida del informe presenta múltiples columnas debajo de cada valor de ACROSS. Si quiere aplican un campo de resumen en algunas de las columnas de cada valor de ACROSS, pero no en otras, especifique los nombres de los campos que desea resumir. Esta técnica resulta especialmente útil con las solicitudes de informe que utilizan la frase OVER para colocar los campos en filas diferentes.


Principio de página

x
Sintaxis: Cómo Generar una operación de suma en un campo de clasificación horizontal
{ACROSS|ON} acrossfield [AS 'text1'] sumoption [AS 'text2']
             [COLUMNS c1 [AND c2 ...]]

o

ACROSS acrossfieldsumoption [field1field2 ... fieldn]

o

ACROSS acrossfield
ON acrossfieldsumoption [field1field2 ... fieldn]

donde:

acrossfield
En el campo ACROSS para el cual desea generar la opción de suma. El final de los valores en el campo ACROSS indica el momento de realizar la suma.
sumoption
Puede ser uno de los siguientes: SUBTOTAL, SUB-TOTAL, RECOMPUTE o SUMMARIZE.
'text1'
Es el encabezado de la columna que se usará para el campo de salto en la salida del informe.
'text2'
Es el texto que se imprime en la parte superior de la columna de la suma.
COLUMNS c1, c2 ...
Muestra los valores ACROSS específicos que desea mostrar en la salida del informe en el orden que prefiera. Esta lista de valores no se puede especificar en una frase ON. Si se especifica en una frase ACROSS debe ser la última opción indicada en la frase ACROSS.
field1 field2 ... fieldn

Los campos en que se ha aplicado el comando de resumen. Si no aparece listado ningún campo, se resumen todos los campos.


Principio de página

x
Referencia: Notas de uso para sumas en campos ACROSS


Ejemplo: Cómo usar comandos de resumen con ACROSS

La siguiente solicitud suma unidades y dólares y calcula la unidad de coste por producto (BY) y por región y mes (ACROSS). El comando ACROSS MNTH RECOMPUTE crea el total de unidades y dólares, y vuelve a computar el valor calculado para los meses seleccionados dentro de ciertas regiones. El comando ACROSS REGION RECOMPUTE hace lo mismo con las regiones seleccionadas. El comando ON TABLE SUMMARIZE crea filas de sumas. No afecta a las columnas:

DEFINE FILE GGSALES
MNTH/MTr   = DATE;
END
TABLE FILE GGSALES
SUM
 UNITS/I5 AS 'UNITS'                   OVER
 DOLLARS/I6 AS 'DOLLARS'               OVER
 COMPUTE DOLLPER/I6 = DOLLARS/UNITS; AS 'UNIT COST'
BY PRODUCT
ACROSS REGION RECOMPUTE AS 'Region Sum' COLUMNS 'Northeast' AND 'West'
ACROSS MNTH   RECOMPUTE AS 'Month Sum' COLUMNS 'November' AND 'December'
WHERE DATE FROM '19971101' TO '19971231';
WHERE PRODUCT EQ 'Capuccino' OR 'Espresso';
ON TABLE SUMMARIZE AS 'Grand Total'END

La salida es:



Ejemplo: Cómo calcular el subtotal de un campo dentro de un grupo ACROSS

La siguiente solicitud, basada en el origen de datos GGSALES, suma los campos DOLLARS y UNITS en función de CATEGORY y en cada REGION, pero sólo calcula el subtotal del campo UNITS.

TABLE FILE GGSALES                       
SUM DOLLARS AS 'Dollars' OVER
UNITS AS 'Units'
  BY CATEGORY                            
  ACROSS REGION SUBTOTAL UNITS          
WHERE REGION EQ 'Midwest' OR 'West'    
ON TABLE SET PAGE NOPAGE
END

La salida muestra que sólo se ha calculado el subtotal de los valores de UNITS.

                      Region                                 
                      Midwest      West         TOTAL        
Category                                                     
-------------------------------------------------------------
Coffee       Dollars   4178513      4473517                  
             Units      332777       356763       689540     
Food         Dollars   4338271      4202337                  
             Units      341414       340234       681648     
Gifts        Dollars   2883881      2977092                  
             Units      230854       235042       465896     


Ejemplo: Cómo resumir un valor calculado en un grupo ACROSS

La siguiente solicitud, basada en el origen de datos GGSALES, suma los campos DOLLARS y UNITS y calcula DOLLARS PER UNIT en cada REGION. La solicitud también presenta un campo ACROSS de nivel superior, CATEGORY, así que el comando SUMMARIZE se propaga a los dos campos ACROSS.

SET BYPANEL = ON                         
TABLE FILE GGSALES                       
SUM DOLLARS AS 'Dollars' UNITS AS 'Units'
AND COMPUTE DPERU/D9.2 = DOLLARS/UNITS;  
  ACROSS CATEGORY                        
  ACROSS REGION                          
  ON REGION SUMMARIZE DPERU              
  WHERE REGION EQ 'Midwest' OR 'West'    
  WHERE CATEGORY EQ 'Food' OR 'Gifts'    
  ON TABLE PCHOLD FORMAT PDF
END                                      

El primer panel de la salida muestra:

PAGE   1.1                                                                
                                                                          
                                                                          
         Category                                                         
         Food                                   Gifts                     
         Region                                                           
         Midwest      West         TOTAL        Midwest      West         
------------------------------------------------------------------------- 
Dollars      4338271      4202337                   2883881      2977092  
Units         341414       340234                    230854       235042  
DPERU          12.71        12.35        12.53        12.49        12.67  

El segundo panel incluye la columna de total de la categoría Gifts y la columna de total general. Estas columnas sólo tienen un valor en la fila DPERU.

 PAGE   1.2                        
                                   
                                   
         Category                  
                       TOTAL       
         Region                    
          TOTAL                    
 ----------------------------------
 Dollars                           
 Units                             
 DPERU          12.58        12.55                                   


Ejemplo: Cómo usar los operadores de prefijo en un comando de resumen con ACROSS

La siguiente solicitud, basada en el origen de datos GGSALES, suma los campos DOLLARS y UNITS ACROSS CATEGORY y ACROSS REGION, con un comando SUMMARIZE en el campo REGION. La solicitud también presenta un campo ACROSS de nivel superior, CATEGORY, así que el comando SUMMARIZE se propaga a los dos campos ACROSS. El comando SUMMARIZE especifica el operador de prefijo AVE. para el campo DOLLARS.

SET BYPANEL = ON                     
TABLE FILE GGSALES                   
SUM DOLLARS AS 'Dollars' OVER        
UNITS AS 'Units'                     
  ACROSS CATEGORY       
  ACROSS REGION                      
  ON REGION SUMMARIZE AVE. DOLLARS   
  WHERE REGION EQ 'Midwest' OR 'West'
  WHERE CATEGORY EQ 'Food' OR 'Gifts'
  ON TABLE PCHOLD FORMAT PDF
END                                  

El primer panel de la salida muestra:

PAGE   1.1                                                               
                                                                         
                                                                         
         Category                                                        
         Food                                   Gifts                    
         Region                                                          
         Midwest      West         TOTAL        Midwest      West        
-------------------------------------------------------------------------
Dollars    4338271      4202337      4270304      2883881      2977092   
Units       341414       340234                    230854       235042   

El segundo panel incluye la columna de total de la categoría Gifts y la columna de total general. Estas columnas sólo tienen un valor en la fila DOLLARS.

PAGE   1.2                        
                                  
                                  
        Category                  
                      TOTAL       
        Region                    
         TOTAL                    
----------------------------------
Dollars    2930486      3600395   
Units                             


Ejemplo: Cómo usar combinaciones de comandos de resumen ACROSS

La siguiente solicitud, basada en el origen de datos GGSALES, suma los campos DOLLARS y UNITS ACROSS CATEGORY y ACROSS REGION, con un comando SUMMARIZE en el campo REGION y un comando de SUBTOTAL en el campo CATEGORY. El comando SUMMARIZE especifica el promedio de DOLLARS y el mínimo de UNITS. El comando SUBTOTAL especifica el mínimo de DOLLARS.

SET BYPANEL = ON                             
TABLE FILE GGSALES                           
SUM DOLLARS AS 'Dollars' OVER                
UNITS AS 'Units'                             
  ACROSS CATEGORY                            
  ACROSS REGION                              
    ON CATEGORY SUBTOTAL  MIN.DOLLARS         
    ON REGION SUMMARIZE AVE.DOLLARS MIN.UNITS
  WHERE REGION EQ 'Midwest' OR 'West'        
  WHERE CATEGORY EQ 'Food' OR 'Gifts'        
END                                          

En la salida, todas las columnas de TOTAL tienen el mínimo de UNITS. Las columnas de TOTAL asociadas al campo de clasificación REGION, tienen el promedio de DOLLARS, pero la columna de TOTAL asociada al campo de clasificación CATEGORY tiene el mínimo, ya que SUMMARIZE no cambia el operador de prefijo asociado al campo de clasificación de nivel superior.

PAGE   1.1                                                               
                                                                         
                                                                         
         Category                                                        
         Food                                   Gifts                    
         Region                                                          
         Midwest      West         TOTAL        Midwest      West        
-------------------------------------------------------------------------
Dollars    4338271      4202337      4270304      2883881      2977092   
Units       341414       340234       340234       230854       235042   
PAGE   1.2                        
                                  
                                  
        Category                  
                      TOTAL       
        Region                    
         TOTAL                    
----------------------------------
Dollars    2930486      2883881   
Units       230854       230854   

WebFOCUS