BASE DE CONOCIMIENTO

Cuándo se debe utilizar la función Atributo (ATTR)


Publicado: 27 May 2014
Fecha de la última modificación: 30 Nov 2023

Pregunta

Funcionamiento de la función Atributo (ATTR) y cómo se diferencia de otras agregaciones, como MIN o SUM.

Entorno

Tableau Desktop

Respuesta

ATTR() indica valores múltiples

La agregación ATTR() indica que se han encontrado varios valores, pero solo se esperaba uno de ellos.

Por ejemplo, para juntar dos o más fuentes de datos, los campos de la fuente de datos secundaria se engloban automáticamente en ATTR() porque es obligatorio agregar los campos de las fuentes de datos secundarias. Si hay varios valores para la dimensión secundaria, aparecerá ATTR(dimensión secundaria) con un asterisco en la interfaz, tal y como se explica en Solucionar problemas con la combinación de datos: Aparecen asteriscos en la hoja.

Si se utilizó otra agregación en lugar de ATTR(), Tableau Desktop mostraría información confusa. MIN(dimensión secundaria) mostraría el valor de la primera dimensión y no habría forma de saber que hay varios valores en la fuente de datos secundaria. El asterisco indica que la relación o la vista se deben ajustar.
 

Funcionamiento

ATTR() compara todos los valores de cada registro en los datos subyacentes agrupados en una partición de la vista (por ejemplo, una barra, un círculo, celda, etc.). Si los valores son todos iguales, ATTR() devolverá ese valor. Si no es así, ATTR() mostrará un asterisco.

En su forma más simple, la fórmula es la siguiente:
 
IF MIN ([dimension]) = MAX ([dimension]) THEN MIN ([dimension]) ELSE "*"  END

La función ATTR evalúa todos los miembros del campo e indica un valor si 1) hay un solo valor (MIN = MAX) o 2) todos los miembros son iguales (MIN = MAX); si no, indica "*", que se puede interpretar como que "hay más de un valor". 

Puede crear la función ATTR básica añadiendo condiciones cuando se deba activar la función ATTR. Por ejemplo:
 
IF ISNULL ([dimension]) THEN NULL
ELSEIF MIN ([dimensión]) = MAX ([dimensión]) THEN MIN ([dimensión])
ELSE "*" 
END

 
(Modifique los campos de dimensión [dimension] con sus propias dimensiones).
 

Casos de uso de ATTR()

  • Siguiendo el ejemplo anterior, ATTR() puede indicar que existen varios valores de la fuente de datos secundaria
     
  • Las dimensiones añadidas a la descripción emergentes de la tarjeta Marcas se agrupan automáticamente en ATTR() porque es obligatorio hacerlo. Si se utiliza otro método de agregación como MIN(), la descripción emergente mostrará un único valor que podría confundir al observador y hacer que crea que solo hay un valor. Por tanto, ATTR() mostrará un asterisco para indicar que la vista o los valores añadidos a la descripción emergente se deben ajustar.Consulte Visualización de asteriscos en las descripciones emergentes
     
  • Como ocurre con otras agregaciones, ATTR() se puede utilizar para modificar un valor no agregado a un valor agregado, para solucionar los errores de agregación en el cálculo.Consulte Agregar mensajes de error en un editor de cálculo

    Tenga en cuenta que cuando un cálculo que devuelve datos numéricos contiene una agregación ATTR(), si esta tiene varios valores, el cálculo aparecerá como NULL en lugar de aparecer con un asterisco.
     
  • ATTR() se puede utilizar para evitar que los datos se modifiquen

Limitaciones

¿Fue de ayuda este artículo para resolver el problema?