Guía de creación de scripts de ACL 14.1

Comando CLASSIFY

Agrupa los registros sobre la base de valores idénticos en un campo de caracteres o numérico. Cuenta la cantidad de registros en cada grupo y también calcula el subtotal de campos numéricos especificados para cada grupo.

CLASSIFY <ON> campo_clave <SUBTOTAL campo_numérico <...n>|SUBTOTAL ALL> <INTERVALS número> <SUPPRESS> <TO {SCREEN|nombre_tabla|GRAPH|PRINT}> <IF prueba> <WHILE prueba> <FIRST rango|NEXT rango> <HEADER texto_encabezado> <FOOTER texto_pie_de_página> <KEY salto_campo> <OPEN> <APPEND> <LOCAL> <STATISTICS>
Nombre Descripción
ON campo_clave

El campo de caracteres o numérico que se debe clasificar.

La longitud máxima del campo clave es de 2048 caracteres.

Si desea clasificar una tabla usando un campo clave de más de 2048 caracteres, puede utilizar el comando SUMMARIZE. Este comando no tiene un límite de longitud para el campo clave.

SUBTOTAL campo_numérico <...n> | SUBTOTAL ALL

opcional

Uno o más campos numéricos o expresiones que se subtotalizarán para cada grupo.

Múltiples campos se deben separar con espacios. Especifique ALL para calcular subtotales de todos los campos numéricos de la tabla.

INTERVALS número

opcional

La cantidad máxima de grupos en el resultado de la salida.

Si la cantidad de conjuntos de valores idénticos del campo que se está clasificando supera el máximo especificado, se utilizan los conjuntos a partir de la parte superior de la columna.

Los conjuntos que superan la cantidad máxima se agrupan en un grupo denominado "OTHER".

Si se omite INTERVALS, se crea un grupo para cada conjunto de valores idénticos en el campo que se está clasificando.

Nota

Este parámetro no está disponible en la interfaz de usuario de Analytics y sólo se puede utilizar como parte de la sintaxis de ACLScript en un script o la línea de comandos.

SUPPRESS

opcional

Nota

No se puede usar, a menos que también se especifique INTERVALS. SUPPRESS no está disponible en la interfaz de usuario de Analytics y solo se puede utilizar como parte de la sintaxis de ACLScript en un script o la línea de comandos.

Excluye conjuntos de valores idénticos que superan el máximo especificado por INTERVALS de la salida del comando.

TO SCREEN | nombre_tabla | GRAPH | PRINT

El lugar al que se deben enviar los resultados del comando:

  • SCREEN muestra los resultados en el área de visualización de Analytics
  • nombre_tabla guarda los resultados en una tabla de Analytics

    Especifique el nombre_tabla como una cadena entre comillas con la extensión de archivo .FIL. Por ejemplo: TO "Salida.FIL"

    Por valor predeterminado, el archivo de datos de la tabla (.FIL) se guarda en la carpeta que contiene el proyecto de Analytics.

    Utilice una ruta de archivo absoluta o relativa para guardar el archivo de datos en una carpeta existente o una diferente:

    • TO "C:\Salida.FIL"
    • TO "Resultados\Salida.FIL"

    Nota

    Los nombres de las tablas tienen un límite de 64 caracteres alfanuméricos, sin incluir la extensión .FIL. El nombre puede incluir un guión bajo ( _ ), pero no puede incluir ningún otro carácter especial ni espacios. El nombre no puede comenzar con un número.

  • GRAPH muestra los resultados en un gráfico en el área de visualización de Analytics
  • PRINT envía los resultados a la impresora predeterminada
IF prueba

opcional

Una expresión condicional que debe ser verdadera para procesar cada registro. El comando se ejecuta únicamente en los registros que cumplen la condición.

Nota

El parámetro IF se evalúa únicamente con los registros que quedan en la tabla después de aplicar los parámetros de alcance (WHILE, FIRST, NEXT).

WHILE prueba

opcional

Una expresión condicional que debe ser verdadera para procesar cada registro. El comando se ejecuta hasta que la condición se evalúa como falsa o hasta que se llega al final de la tabla.

Nota

Si usa WHILE junto con FIRST o NEXT, el procesamiento de registros se detiene al llegar a un límite.

FIRST rango | NEXT rango

opcional

La cantidad de registros que se procesarán:

  • FIRST comienza a procesar desde el primer registro hasta que se llega al número de registros especificado
  • NEXT comienza a procesar desde el registro seleccionado actualmente hasta que se llega al número de registros especificado

Utilice intervalo para especificar la cantidad de registros que se deben procesar.

Si omite FIRST y NEXT, se procesan todos los registros de forma predeterminada.

HEADER texto_encabezado

opcional

El texto que se debe insertar en la parte superior de cada página de un reporte.

texto_encabezado_de_página se debe especificar como una cadena entre comillas. El valor anula la variable de sistema HEADER de Analytics.

FOOTER texto_pie_de_página

opcional

El texto que se debe insertar en la parte inferior de cada página de un reporte.

texto_pie_de_página se debe especificar como una cadena entre comillas. El valor anula la variable de sistema FOOTER de Analytics.

KEY salto_campo

opcional

El campo o la expresión que agrupa los cálculos de subtotal de grupos. Se calcula un subtotal cada vez que cambia el valor de salto_campo.

salto_campo debe ser un campo de caracteres o una expresión. Puede especificar un solo campo, pero puede usar una expresión que contenga más de un campo.

OPEN

opcional

Abre la tabla creada por el comando después de la ejecución del comando. Solo es válido si el comando crea una tabla de salida.

APPEND

opcional

Anexa la salida del comando al final de un archivo existente en lugar de sobrescribir el archivo.

Nota

Debe asegurarse de que la estructura de la salida del comando y del archivo existente sean idénticas:

  • los mismos campos
  • el mismo orden de campos
  • los campos coincidentes son de la misma longitud
  • los campos coincidentes tienen el mismo tipo de datos

Analytics anexa la salida a un archivo existente sin importar cuál sea su estructura. Si la estructura de la salida y la del archivo existente no coinciden, es posible que los datos que se obtengan estén incompletos, mezclados o sean imprecisos.

LOCAL

opcional

Guarda el archivo de salida en la misma ubicación que el proyecto de Analytics.

Nota

Aplicable únicamente al ejecutar el comando en una tabla de servidor con un archivo de salida que es una tabla de Analytics.

STATISTICS

opcional

Nota

No se puede usar, a menos que también se especifique SUBTOTAL.

Calcula los valores promedio, mínimo y máximo para todos los campos SUBTOTAL.

Importe total de transacciones por cliente

Desea clasificar una tabla de cuentas por cobrar a partir del campo Número_cliente y calcular el subtotal del campo Importe_trans. Los resultados de la salida se agrupan por cliente e incluyen el importe total de las transacciones para cada cliente:

OPEN Cuentas_por_cobrar 
CLASSIFY ON Número_cliente SUBTOTAL Importe_trans TO "Total_cliente.FIL"

Importes total, promedio, mínimo y máximo de las transacciones por cliente

Al igual que en el ejemplo anterior, clasifica una tabla de cuentas por cobrar a partir del campo Número_cliente y calcula el subtotal del campo Importe_trans.

Ahora puede incluir STATISTICS para calcular los importes promedio, mínimo y máximo de las transacciones para cada cliente:

OPEN Cuentas_por_cobrar 
CLASSIFY ON Número_cliente SUBTOTAL Importe_trans TO "Estadísticas_cliente.FIL" STATISTICS

Números de factura idénticos

Necesita identificar los importes de las facturas que aparecen más de una vez en la tabla Trans_Cp.

Para hacerlo, clasifica la tabla por el campo Importe_factura. Los resultados de la salida se agrupan por el importe de la factura, con un recuento asociado que puede utilizar para identificar cualquier importe de factura que aparezca más de una vez:

OPEN Trans_Cp
CLASSIFY ON Importe_factura TO "Importes_factura_agrupados.FIL" OPEN
SET FILTER TO COUNT > 1

Nota

Si desea obtener más información sobre la forma en la que funciona este comando, consulte Guía de ayuda.

Cómo funciona

CLASSIFY agrupa los registros que tienen el mismo valor en un campo de caracteres o numérico.

La salida contiene un registro único para cada grupo, con un recuento de la cantidad de registros en la tabla de origen que pertenecen al grupo.

Ordenamiento y CLASSIFY

CLASSIFY puede procesar datos ordenados o sin ordenar. La salida se ordenan automáticamente de forma ascendente.

Nombres de los campos de subtotal y estadísticas autogenerados

Si utiliza STATISTICS para realizar los cálculos estadísticos en uno o más campos SUBTOTAL y envía los resultados a una tabla de Analytics, los campos autogenerados por los parámetros tienen los siguientes nombres:

Descripción del campo autogenerado

Nombre del campo en la tabla de salida

Título alternativo de columna (nombre visible) en la tabla de salida

Campo subtotal

nombre del campo que se subtotaliza en la tabla de origen

Total + título alternativo de columna subtotalizada en la tabla de origen

Campo promedio

a_nombre del campo que se subtotaliza en la tabla de origen

Promedio + título alternativo de columna subtotalizada en la tabla de origen

Campo mínimo

m_nombre del campo que se subtotaliza en la tabla de origen

Mínimo + título alternativo de columna subtotalizada en la tabla de origen

Campo máximo

x_nombre del campo que se subtotaliza en la tabla de origen

Máximo + título alternativo de columna subtotalizada en la tabla de origen