Comando CROSSTAB

Agrupa registros sobre la base de combinaciones idénticas de valores en dos o más campos de caracteres o numéricos y muestra los grupos que se obtienen en una cuadrícula de filas y columnas. Cuenta la cantidad de registros en cada grupo y también calcula el subtotal de campos numéricos especificados para cada grupo.

Sintaxis

CROSSTAB {ON campo_fila <...n>|ON ALL <EXCLUDE nombre_campo <...n>>} COLUMNS campo_columna <SUBTOTAL campo_numérico <...n>|SUBTOTAL ALL <EXCLUDE campo_numérico <...n>>> TO {SCREEN|nombre_tabla|nombre_archivo|GRAPH|PRINT} <LOCAL> <IF prueba> <WHILE prueba> <FIRST rango|NEXT rango> <APPEND> <COUNT> <OPEN> <HEADER texto_encabezado> <FOOTER texto_pie_de_página>

Parámetros

Nombre Descripción
ON campo_fila <...n> | ON ALL

Uno o más campos o expresiones de caracteres o numéricos que se deben utilizar para las filas en la cuadrícula de filas y columnas resultante.

  • ON campo_fila <...n> utilice el o los campos especificados

    Los diferentes campos deben estar separados por espacios y pueden tener diferentes tipos de datos.

    Si usa más de un campo, los campos se incluyen en el orden en el que los escribe.

  • ON ALL use todos los campos de la tabla

    Si usa todos los campos, estos se incluyen en el orden en que aparecen en el formato de tabla.

EXCLUDE nombre_campo

opcional

Solo válido al usar ON ALL.

El o los campos que se deben excluir del comando. EXCLUDE le permite ajustar ON ALL, excluyendo campos específicos.

EXCLUDE debe ir inmediatamente a continuación de ON ALL. Por ejemplo:

ON ALL EXCLUDE campo_1 campo_2
COLUMNS campo_columna

El campo o la expresión de caracteres o números que se debe utilizar para las columnas en la cuadrícula de filas y columnas resultante. Puede especificar sólo un campo o expresión para las columnas.

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.

EXCLUDE campo_numérico

opcional

Solo tiene validez al usar SUBTOTAL ALL.

El o los campos que se deben excluir del comando. EXCLUDE le permite ajustar SUBTOTAL ALL, excluyendo campos específicos.

EXCLUDE debe ir inmediatamente a continuación de SUBTOTAL ALL. Por ejemplo:

SUBTOTAL ALL EXCLUDE campo_1 campo_2
TO SCREEN | nombre_tabla | nombre_archivo | 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

    Consejo

    Puede hacer clic en cualquier valor de resultado enlazado en el área de visualización para ver con mayor detalle el o los registros asociados de la tabla de origen.

  • 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.

  • nombre_de_archivo guarda los resultados en un archivo

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

    Por valor predeterminado, el archivo se guarda en la carpeta que contiene el proyecto de Analytics.

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

    • TO "C:\Salida.TXT"
    • TO "Resultados\Salida.TXT"
  • 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
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.

El parámetro LOCAL debe ir inmediatamente después del parámetro TO.

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.

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.

COUNT

opcional

Incluye los recuentos de registros en forma de columnas. Los recuentos resultan útiles al utilizar SUBTOTAL.

Los recuentos se incluyen automáticamente si no selecciona ningún campo de subtotal.

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.

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.

Ejemplos

Generación de tablas cruzadas de una tabla de cuentas por cobrar con SUBTOTAL

Usted desea generar tablas cruzadas de una tabla de cuentas por cobrar por los campos Número de cliente y Tipo de transacción. También desea calcular el subtotal del campo Importe de la transacción.

La salida se agrupa por cliente y, dentro de cada cliente, por tipo de transacción. Incluye el importe total de las transacciones de cada cliente para cada tipo de transacción:

OPEN Cuentas_por_cobrar
CROSSTAB ON Número_cliente COLUMNS Tipo_trans SUBTOTAL Importe_trans COUNT TO SCREEN

Generación de tablas cruzadas de una tabla de cuentas por cobrar para detectar transacciones duplicadas

Necesita encontrar indicios de transacciones duplicadas en una tabla de cuentas por cobrar.

Para hacerlo, genera una tabla cruzada de una tabla de cuentas por cobrar a partir de los campos Importe de la transacción y Tipo de transacción. La salida agrupa y hace un recuento de los importes de transacciones idénticos para cada tipo de transacción:

OPEN Cuentas_por_cobrar
CROSSTAB ON Importe_transacción COLUMNS Tipo_trans TO SCREEN

Observaciones

Si desea obtener más información sobre la forma en la que funciona este comando, consulte Datos de la generación de tablas cruzadas.

Cómo funciona

CROSSTAB agrupa registros que tienen la misma combinación de valores en dos o más campos numéricos o de caracteres.

La salida contiene una grilla de filas y columnas similar a una tabla dinámica. Incluye una intersección única de fila y columna para cada grupo, con un recuento de la cantidad de registros en la tabla de origen que pertenecen al grupo.

Ordenamiento y CROSSTAB

CROSSTAB puede procesar datos ordenados o sin ordenar. Tanto campo_fila como campo_columna de la salida se ordenan automáticamente de manera ascendente.

Si especifica más de un campo_fila, los campos utilizan un orden anidado. El orden de anidamiento respeta el orden de campos que usted especifique o el orden de los campos del formato de tabla si utiliza ON ALL.