Cómo especificar el orden de clasificación

En esta sección:

Cómo:

Los valores de los campos de clasificación se muestran automáticamente en orden ascendente, empezando por el valor más bajo y siguiendo hacia el más alto. La secuencia de clasificación predeterminada varía según cambie el sistema operativo. En z/OS, la secuencia es a-z, A-Z, 0-9, en campos alfanuméricos, y 0-9, los numéricos. En UNIX y Windows es 0-9, A-Z, a-z, para campos alfanuméricos; 0-9 para campos numéricos.

Tiene la opción de anular esta predeterminación y mostrar los valores en orden descendente, del valor más alto al valor más bajo, mediante la frase de clasificación HIGHEST.


Principio de página

x
Sintaxis: Cómo Especificar el orden de clasificación
{BY|ACROSS} {LOWEST|HIGHEST} sortfield					

donde:

LOWEST

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). Esta es la opción predeterminada.

HIGHEST

Clasifica en orden descendente, empezando por el valor más alto y siguiendo hacia el más bajo. También puede usar TOP como sinónimo de HIGHEST.

sortfield

Es el nombre del campo de clasificación.



Ejemplo: Clasificar en orden ascendente

La siguiente solicitud de informe no especifica un orden de clasificación particular y, por lo tanto, lista los salarios por defecto, empezando por los más bajos y siguiendo hacia los más altos.

TABLE FILE EMPLOYEE
PRINT LAST_NAME
BY CURR_SAL
END

Puede especificar el mismo orden ascendente de manera explícita incluyendo LOWEST en la frase de clasificación.

TABLE FILE EMPLOYEE
PRINT LAST_NAME
BY LOWEST CURR_SAL
END

La salida es:



Ejemplo: Clasificar en orden descendente

La siguiente solicitud lista los salarios del más alto hasta el más bajo.

TABLE FILE EMPLOYEE
PRINT LAST_NAME
BY HIGHEST CURR_SAL
END

La salida es:


Principio de página

x
Cómo especificar su propio orden de clasificación

En esta sección:

Cómo:

Referencia:

Los valores de los campos de clasificación se muestran automáticamente en orden ascendente, empezando por el valor más bajo y siguiendo hacia el más alto.

Puede anular el orden predeterminado y los valores de visualización en su propia secuencia de clasificación, tal como la haya definido. Para lograr esto, es necesario que tome las siguientes decisiones:

  1. Qué valores de campos de clasificación desea permitir. Puede especificar cada valor de campo de clasificación, así como un subconjunto de valores. Cuando emita la solicitud de informe, sólo se incluirán en el informe los registros que contengan esos valores.
  2. El orden en que desea que aparezcan los valores. Puede especificar cualquier orden; por ejemplo, puede especificar que un campo de clasificación A1, que contiene un código de una letra, sea clasificado en orden A, Z, B, C, Y...

Hay dos formas de especificar su propio orden de clasificación dependiendo de si clasifica filas con BY o columnas con ACROSS:



x
Sintaxis: Cómo Definir su propio orden de clasificación
BY sortfield AS 'coltitle' ROWS value1 [AS 'text1'] 
OVER value2 [AS 'text2']
[... OVER valuen [ AS 'textn']]
END

donde:

sortfield

Es el último campo BY del informe.

coltitle

Es el título de columna del campo BY, en la salida del informe.

value1

Es el valor del campo de clasificación que se encuentra primero en la secuencia de clasificación.

AS 'text1'

Le permite asignar un texto alternativo para la primera fila, que reemplaza al valor del campo en la salida. El texto debe ir entre comillas simples.

value2

Es el segundo valor del campo de clasificación en la secuencia de clasificación.

AS 'text2'

Le permite asignar un texto alternativo para la segunda fila, que reemplaza al valor del campo en la salida. El texto debe ir entre comillas simples.

valuen

Es el último valor del campo de clasificación en la secuencia de clasificación.

AS 'textn'

Le permite asignar un texto alternativo para la última fila, que reemplaza al valor del campo en la salida. El texto debe ir entre comillas simples.

Una sintaxis alternativa es

FOR sortfield value1 OVER value2 [... OVER valuen]

que usa FOR, una frase de informe basada en filas descrita en Cómo crear informes financieros con el lenguaje de modelos financieros (FML).



x
Referencia: Notas sobre cómo definir su orden de clasificación


Ejemplo: Definir su orden de clasificación de filas

A continuación se muestra cómo clasificar empleados por los bancos en los que se depositan automáticamente sus cheques, además de cómo definir su propia etiqueta en la secuencia de clasificación del campo en blanco.

TABLE FILE EMPLOYEE
PRINT LAST_NAME
BY BANK_NAME ROWS 'BEST BANK' OVER STATE
   OVER ASSOCIATED OVER 'BANK ASSOCIATION'
END

La salida es:



x
Sintaxis: Cómo Definir la secuencia de clasificación de las columnas
ACROSS sortfield COLUMNS value1 AND value2 [... AND valuen]

donde:

sortfield

Es el nombre del campo de clasificación.

value1

Es el valor del campo de clasificación que se encuentra primero en la secuencia de clasificación.

value2

Es el segundo valor del campo de clasificación en la secuencia de clasificación.

valuen

Es el último valor del campo de clasificación en la secuencia de clasificación.



x
Referencia: Notas sobre cómo definir sus secuencias de clasificación de las columnas


Ejemplo: Definir las secuencias de clasificación de las columnas

A continuación se muestra cómo clasificar los salarios de los empleados por los bancos en los que se depositan automáticamente sus cheques, además de cómo definir su propia etiqueta en la secuencia de clasificación del campo en blanco.

TABLE FILE EMPLOYEE
SUM CURR_SAL
ACROSS BANK_NAME COLUMNS 'BEST BANK' AND STATE
   AND ASSOCIATED AND 'BANK ASSOCIATION'
END

La salida es:

BANK_NAME                                                                    
BEST BANK          STATE              ASSOCIATED         BANK ASSOCIATION
-------------------------------------------------------------------------
     $29,700.00         $18,480.00         $64,742.00         $27,062.00


x
Cómo seleccionar y asignar títulos de columnas a valores ACROSS

Cuando se usa la frase ACROSS COLUMNS para seleccionar y ordenar las columnas mostradas en un informe, correspondientes a un campo de clasificación ACROSS, puede asignar un título nuevo a cada columna seleccionada, mediante una frase AS.



x
Sintaxis: Cómo Asignar títulos de columnas a valores ACROSS
ACROSS sortfield [AS title]
 COLUMNS aval1 [AS val1title] [{AND|OR} aval2 [AS val2title] [... {AND|OR} avaln [AS valntitle]]]

donde:

sortfield

Es el nombre del campo ACROSS.

title

Es el título del nombre de campo ACROSS.

AND|OR

Es obligatorio para separar los valores ACROSS seleccionados. AND y OR son sinónimos en este caso.

aval1, aval2, ... avaln

Son los valores ACROSS seleccionados para aparecer en la salida del informe.

val1title, val2title ...valntitle

Son los títulos de las columnas de los valores ACROSS seleccionados.



x
Referencia: Notas de uso para la asignación de títulos de columnas a valores ACROSS
  • Cualquier valor especificado como ACROSS, en la frase de clasificación, aparecerá en la salida del informe, incluso si el valor ha quedado filtrado por una prueba IF o WHERE, o si el valor no existe en el origen de datos.

    Nota: En los formatos de salida con estilo, SET HIDENULLACRS=ON elimina de la salida del informe las columnas vacías de los grupos ACROSS.

  • Los títulos de columnas de los campos ACROSS aparecen en una sola línea de la salida del informe.
  • La compatibilidad con los nombres AS se limita al comando TABLE FILE.
  • Si crea un archivo HOLD con SET ASNAMES = ON, el nombre original del campo se propaga al archivo máster, no el nombre AS.


Ejemplo: Cómo seleccionar y asignar títulos de columnas a valores ACROSS

La siguiente solicitud, basada en el origen de datos GGSALES, selecciona las columnas Coffee Grinder, Latte y Coffee Pot para el PRODUCT del campo ACROSS, y asigna un nuevo título a cada una.

 TABLE FILE GGSALES                     
 SUM                                    
 DOLLARS/I8M AS ''                      
 BY REGION                              
 ACROSS PRODUCT  AS 'Products'          
   COLUMNS 'Coffee Grinder' AS 'Grinder'
    OR Latte AS 'caffellatte'              
    AND 'Coffee Pot' AS 'Carafe'           
ON TABLE SET PAGE NOPAGE
END                                    

La salida es:

             Products                                           
             Grinder          caffellatte      Carafe           
Region                                                          
----------------------------------------------------------------
Midwest         $666,622       $2,883,566         $599,878      
Northeast       $509,200       $2,808,855         $590,780      
Southeast       $656,957       $2,637,562         $645,303      
West            $603,436       $2,670,405         $613,624                                                                   

WebFOCUS