Pasando filtros de página en medida

Un usuario Pregunto ✅

HR303

Hola,

Quiero resumir las ventas de un artículo en una página de informe que está filtrada, pero el filtro no debería afectar la suma de ventas del artículo. Quiero especificar en la medida para qué fechas y grupo de artículos se debe mostrar el monto de las ventas.

Tengo la siguiente tabla de ejemplo:

Unbenannt.PNG

Ahora la página del informe es un filtro para el año 2020, pero la medida para este artículo (1) debería darme la suma de ventas para 2019 y también solo para la categoría Jardín.

Ahora mismo estoy atrapado con esto:

Revelación

ingresos 2019 =

VAR _table = ALL (‘Tabla de ejemplo’)
REGRESO
CALCULAR (SUMX (_table;[Sales]);
FILTRO (_table;[Year]= 2019);
FILTRO (_table;[Article Group]= «Jardín»))

ingresos 2019 = VAR _table = ALL (‘Tabla de ejemplo’) RETURNCALCULATE (SUMX (_table;[Sales]); FILTRO (_tabla;[Year]= 2019); FILTRO (_tabla;[Article Group]= «Jardín»))

Sin embargo, con esta medida PBI suma todas las ventas y no aplica ningún filtrado. ¿Por qué es así y cómo puedo solucionarlo?

¡Gracias!

Amitchandak

@ HR303

Todos ignorarán a todos, el filtro. Es por eso que se aconseja la estructura de esquema en estrella y usar todo en la tabla necesaria. Like You can año y artículo como una dimensión separada

– Evitar todo no permitirá filtrar 2019 si se selecciona 2020. Y todo en ‘Tabla de ejemplo’ eliminará también otros filtros

Medida =
CALCULATE (SUMX (‘Tabla de ejemplo’;[Sales]);
FILTRAR(;[Year]= 2019);
FILTRO (‘Tabla de ejemplo’;[Article Group]= «Jardín»))

Medida =
CALCULAR (SUMX (_table;[Sales]);
FILTRO (Todo (‘Año’);[Year]= 2019)) // Evitar; FILTRO (‘Tabla de ejemplo’;[Article Group]= «Jardín»), si es cortadora

O así

Medida =
CALCULAR (SUMX (_table;[Sales]);
FILTRO (Todo (‘Año’);[Year]= 2019);
FILTRO (‘Tabla de ejemplo’;[Article Group]= «Jardín»))

Consulte este documento

https://docs.microsoft.com/en-us/power-bi/guidance/

Hola,

Debido a que la fórmula SUMX (ALL (Table),[Sales]) que utilizó calculará la suma total de la tabla original independientemente de cualquier filtro.

Pruebe esta medida:

revenue 2019 = 
VAR _table =
    ALL ( 'Table' )
RETURN
    CALCULATE (
        SUM ( [Sales] ),
        FILTER ( _table, [Year] = 2019 && [Article Group] = "Garden" )
    )

El resultado muestra:

60.PNG

Espero que esto ayude.

Atentamente,

Giotto

Hola,

Debido a que la fórmula SUMX (ALL (Table),[Sales]) que utilizó calculará la suma total de la tabla original independientemente de cualquier filtro.

Pruebe esta medida:

revenue 2019 = 
VAR _table =
    ALL ( 'Table' )
RETURN
    CALCULATE (
        SUM ( [Sales] ),
        FILTER ( _table, [Year] = 2019 && [Article Group] = "Garden" )
    )

El resultado muestra:

60.PNG

Espero que esto ayude.

Atentamente,

Giotto

Amitchandak

@ HR303

Todos ignorarán a todos, el filtro. Es por eso que se aconseja la estructura de esquema en estrella y usar todo en la tabla necesaria. Like You can año y artículo como una dimensión separada

– Evitar todo no permitirá filtrar 2019 si se selecciona 2020. Y todo en ‘Tabla de ejemplo’ eliminará también otros filtros

Medida =
CALCULATE (SUMX (‘Tabla de ejemplo’;[Sales]);
FILTRAR(;[Year]= 2019);
FILTRO (‘Tabla de ejemplo’;[Article Group]= «Jardín»))

Medida =
CALCULAR (SUMX (_table;[Sales]);
FILTRO (Todo (‘Año’);[Year]= 2019)) // Evitar; FILTRO (‘Tabla de ejemplo’;[Article Group]= «Jardín»), si es cortadora

O así

Medida =
CALCULAR (SUMX (_table;[Sales]);
FILTRO (Todo (‘Año’);[Year]= 2019);
FILTRO (‘Tabla de ejemplo’;[Article Group]= «Jardín»))

Consulte este documento

https://docs.microsoft.com/en-us/power-bi/guidance/

glissando

La función TODOS ignora todos los filtros y devuelve la tabla completa. Tampoco estoy seguro de por qué está utilizando una variable para poner la tabla.

Esta medida debería funcionar.

Gracias

ingresos 2019 =

CALCULAR(
SUMX (‘Ventas’, ‘Ventas'[Sales]),
FILTRO (‘Ventas’, ‘Ventas’ Año]= 2019)
FILTRO (_ ‘Ventas’, ‘Ventas'[Article Group]= «Jardín»)
)

HR303

En respuesta a glissando

El problema con esto es que cuando selecciono un filtro diferente para el año, por ejemplo 2018, la medida muestra un valor en blanco porque todos los valores de 2019 se filtran. Por lo tanto, estaba pensando en crear una tabla que no se modifique en ninguna selección de filtro en el tablero y filtrar eso para la combinación específica de año = 2019 y categoría = jardín. Porque siempre quiero mostrar este número sin importar cuáles sean las otras selecciones de los filtros en el tablero.

Sé que también podría desactivar las interacciones entre esta tabla y los filtros del tablero, pero para eso necesitaría desactivar también todas las demás interacciones de otros elementos visuales. Y eso me parece mucho trabajo.

En respuesta a HR303

Hola,

Si desea sumar las ventas filtradas y siempre incluye [Year]= 2019 y[Article Group] = Valor de ventas de la fila «Jardín», intente esto:

revenue 2019 = 
VAR _table =
    ALL ( 'Table' )
RETURN
    CALCULATE (
        SUM ( [Sales] ),
        FILTER ( _table, [Year] = 2019 && [Article Group] = "Garden" )
    )
        + SUM ( 'Table'[Sales] )

Espero que esto ayude.

Atentamente,

Giotto

glissando

En respuesta a glissando

Lo siento, me perdí la parte del «filtro de página configurado en 2020» …

Cree una medida para las ventas totales: Ventas totales = SUMA (‘Ventas'[Sales])

Cree una medida para las ventas totales de 2019: CALCULAR ([Total Sales], ‘Ventas'[Year] = 2019)

Puedes hacer esta dinámica usando variables para el año …

2019_Sales =
VAR Curr_Year = MAX (Ventas[Year])
VAR Prior_Year = Curr_Year – 1
REGRESO
CALCULAR([Total_Sales], Ventas[Year] = Año_ anterior)

Ojalá sea esto lo que usted está buscando.

Gracias

glissando

En respuesta a glissando

Con el grupo de artículos incluido …

2019_Sales =
VAR Curr_Year = MAX (Ventas[Year])
VAR Prior_Year = Curr_Year – 1
VAR Article_Group = «Jardín»
REGRESO
CALCULAR([Total_Sales], Ventas[Year] = Prior_Year, Ventas[Article Group] = Grupo_artículo)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *