BASE DE CONOCIMIENTO

Utilizar parámetros para convertir un filtro de datos a fin de mostrar términos de fecha diferentes


Publicado: 27 Apr 2023
Fecha de la última modificación: 05 Apr 2024

Pregunta

¿Cómo se convierte un filtro de fecha para permitir la selección de mes/trimestre/semestre/año?
Antes:
Imagen añadida por un usuario
Después:
Imagen añadida por un usuario

Entorno

  • Tableau Desktop 2021.3 y versiones posteriores
  • Windows 10
  • Excel

Respuesta

La solución publicada aquí y en el libro de trabajo empaquetado adjunto (consulte "Documentos adjuntos" a la derecha del texto) indica que se utilicen parámetros para convertir un filtro de datos a fin de permitir que se seleccionen términos de fecha diferentes, como mes, trimestre, semestre o año. 

1. Cree un parámetro con el nombre Término como se muestra a continuación:
Imagen añadida por un usuarioImagen añadida por un usuario
2. Cree los siguientes campos calculados:
1) Nombre: TS_month
Valor: STR(DATEPART('year', [Fecha de pedido])) +"Y-"+ STR(DATEPART('month', [Fecha de pedido]))+"M"
2) Nombre: TS_quarter
Valor: STR(DATEPART('year', [Fecha de pedido]))+"Y-"+STR(DATEPART('quarter', [Fecha de pedido]))+"Q"
3) Nombre: TS_semester
Valor: IF DATEPART('quarter', [Fecha de pedido]) < 3 THEN STR(DATEPART('year', [Fecha de pedido]))+'Y-Semester 1' ELSE STR(DATEPART('year', [Fecha de pedido]))+'Y-Semester 2' END
4) Nombre: TS_year
Valor: STR(DATEPART('year', [Fecha de pedido]))+"Y"
5) Nombre: TS_termfilter
Valor: IF [Trimestre]="month" THEN [TS_month]
ELSEIF [Trimestre]="quarter" THEN [TS_quarter]
ELSEIF [Trimestre]="semester" THEN [TS_semester]
ELSEIF [Trimestre]="year" THEN [TS_year]
END
3. Arrastre Modo de envío y Segmento a Columnas y Ventas a las Filas.
4. Haga clic con el botón derecho en Trimestre y seleccione Mostrar parámetro.   
Imagen añadida por un usuario.
5. Haga clic con el botón derecho en TS_termfilter y seleccione Mostrar filtro.

6. Cambie Trimestre para seleccionar los filtros mes/trimestre/semestre/año. 
¿Fue de ayuda este artículo para resolver el problema?