Puede clasificar información de informes en sentido vertical mediante la frase BY. Esto crea filas en su informe. Puede incluir hasta 128 frases de clasificación (frases BY más frases ACROSS) por solicitud de informe (127 si utiliza los comandos de visualización PRINT y LIST).
Los campos de clasificación aparecen cuando cambian sus valores. Sin embargo, puede mostrar cada valor de clasificación mediante el parámetro BYDISPLAY. Para ver un ejemplo, vaya a Cómo mostrar todos los valores verticales (BY) de campos de clasificación
BY {HIGHEST|LOWEST} [n] sortfield [AS 'text']
donde:
Clasifica en orden descendente.
Clasifica en orden ascendente. El valor por defecto es LOWEST.
Especifica que sólo se incluyen n valores de campo de clasificación en el informe.
Es el nombre del campo de clasificación.
Es el encabezado de la columna utilizada para el campo de clasificación, en la salida del informe.
PRINT LAST_NAME BY DEPARTMENT
imprime MIS una vez, seguido de seis nombres de empleados. Puede suministrar con datos cada celda de columna de clasificación vertical con un valor, aún en el caso de que se repita el valor, mediante el parámetro SET BYDISPLAY. Para obtener información detallada, consulte Cómo mostrar todos los valores verticales (BY) de campos de clasificación.
A continuación se explica cómo mostrar todas las identificaciones de los empleados, por departamento.
TABLE FILE EMPLOYEE PRINT EMP_ID BY DEPARTMENT END
La salida muestra una fila para cada EMP_ID en cada departamento.
Cómo: |
Dentro de un grupo de clasificación vertical, el valor de campo de clasificación se muestra sólo en la primera línea de las filas de su grupo de clasificación y en la primera línea de una página. Ahora bien, con el comando SET BYDISPLAY, puede mostrar el campo BY adecuado en cada fila de informe generada en un formato de salida con estilo.
Aunque todos los formatos de salida con estilo admiten SET BYDISPLAY, éste tiene especial importancia porque hace que Excel pueda usar con mayor facilidad las salidas de informe, que no pueden clasificar las columnas con facilidad cuando hay varias filas con valores en blanco.
Esta característica le libra de especificar dos veces el mismo campo de clasificación, una como un campo de visualización y otra para clasificar (con la opción NOPRINT). Por ejemplo:
PRINT FIRST_NAME LAST_NAME BY FIRST_NAME NOPRINT
SET BYDISPLAY = {OFF|ON}
o
ON TABLE SET BYDISPLAY {OFF|ON}
donde:
Muestra un valor de campo BY solamente en la primera línea de la salida de informe para el grupo de clasificación en la primera línea de una página. OFF es el valor predeterminado.
Muestra el valor asociado del campo BY en cada línea de la salida de informe producida en formato con estilo.
A continuación se explica cómo mostrar cada ocurrencia de un valor de campo de clasificación vertical (BY) en un informe con estilo mediante SET BYDISPLAY.
SET BYDISPLAY = ON
TABLE FILE CENTHR
PRINT LNAME
BY FNAME
WHERE FNAME EQ 'CAROLYN' OR 'DAVID' ON
TABLE PCHOLD FORMAT EXL2KEND
La salida es:
Puede organizar información en un informe con más de un campo de clasificación. Cuando especifica varios campos de clasificación, la secuencia de las frases BY determina el orden de clasificación. La primera frase BY establece el salto de clasificación principal; la segunda frase BY establece el segundo salto de clasificación y así sucesivamente. Cada clasificación sucesiva se inserta en la anterior.
La solicitud que aparece a continuación usa múltiples campos de clasificación vertical (BY).
TABLE FILE EMPLOYEE PRINT CURR_SAL BY DEPARTMENT BY LAST_NAME WHERE CURR_SAL GT 21500 END
La salida es:
DEPARTMENT LAST_NAME CURR_SAL ---------- --------- -------- MIS BLACKWOOD $21,780.00 CROSS $27,062.00 PRODUCTION BANNING $29,700.00 IRVING $26,862.00
Cómo: Referencia: |
Se puede restringir el número de valores de clasificación mostrados en una frase de clasificación. La frase PLUS OTHERS le permite agregar todos los otros valores a un grupo distinto y mostrar este grupo como una fila adicional del informe.
[RANKED] BY {HIGHEST|LOWEST|TOP|BOTTOM} n srtfield [AS 'text'] [PLUS OTHERS AS 'othertext'] [IN-GROUPS-OF m1 [TOP n2]] [IN-RANGES-OF m3 [TOP n4]
donde:
Clasifica en orden ascendente, empezando por el valor más bajo y siguiendo hacia el más alto (a-z, A-Z, 0-9 para campos alfanuméricos y 0-9 para campos numéricos). BOTTOM es un sinónimo de LOWEST.
Clasifica en orden descendente, empezando por el valor más alto y siguiendo hacia el más bajo. TOP es sinónimo de HIGHEST.
Especifica que sólo se incluyen n valores de campo de clasificación en el informe.
Es el nombre del campo de clasificación.
Es el texto que se va a usar como encabezado de columna para los valores de campo de clasificación.
Es el texto que se va a usar como título de fila para el agrupamiento "others". Esta frase AS debe ser la frase AS inmediatamente posterior a la frase PLUS OTHERS.
Es el valor incremental entre grupos de campos de clasificación.
Es un número opcional que define la etiqueta de grupo más alta que se incluirá en el informe.
Es un número entero mayor que cero que indica el rango por el que se agrupan los valores de campo de clasificación.
Es un número opcional que define la etiqueta de rango más alta que se va a incluir en el informe. El rango se extiende hasta incluir todos los valores de datos mayores que este valor.
La siguiente solicitud muestra los dos valores más altos de ED_HRS y agrega los valores no incluidos en una fila llamada Others:
TABLE FILE EMPLOYEE PRINT CURR_SAL LAST_NAME BY HIGHEST 2 ED_HRS PLUS OTHERS AS 'Others' END
La salida es:
ED_HRS CURR_SAL LAST_NAME ------ -------- --------- 75.00 $21,780.00 BLACKWOOD 50.00 $18,480.00 JONES $16,100.00 MCKNIGHT Others $165,924.00
La siguiente solicitud clasifica los dos valores más altos de ED_HRS y agrupa los valores de campo de clasificación en incrementos de 25 ED_HRS. Los valores situados debajo de la etiqueta de grupo más baja están incluidos en la categoría Others. Todos los valores situados encima de la etiqueta de grupo más alta están incluidos en el grupo superior:
TABLE FILE EMPLOYEE PRINT CURR_SAL LAST_NAME BY HIGHEST 2 ED_HRS PLUS OTHERS AS 'Others' IN-GROUPS-OF 25 TOP 50 END
La salida es:
ED_HRS CURR_SAL LAST_NAME ------ -------- --------- 50.00 $18,480.00 JONES $21,780.00 BLACKWOOD $16,100.00 MCKNIGHT 25.00 $11,000.00 STEVENS $13,200.00 SMITH $26,862.00 IRVING $9,000.00 GREENSPAN $27,062.00 CROSS Others $78,800.00
Si se cambia la frase BY HIGHEST por BY LOWEST, todos los valores situados encima del agrupamiento más alto (50 ED_HRS y superiores) quedan incluidos en la categoría Others:
TABLE FILE EMPLOYEE PRINT CURR_SAL LAST_NAME BY LOWEST 2 ED_HRS PLUS OTHERS AS 'Others' IN-GROUPS-OF 25 TOP 50 END
La salida es:
ED_HRS CURR_SAL LAST_NAME ------ -------- --------- .00 $9,500.00 SMITH $29,700.00 BANNING $21,120.00 ROMANS $18,480.00 MCCOY 25.00 $11,000.00 STEVENS $13,200.00 SMITH $26,862.00 IRVING $9,000.00 GREENSPAN $27,062.00 CROSS Others $56,360.00
WebFOCUS |