cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Cómo filtrar para obtener acumulaciones basadas en los filtros dentro de DAX

Hola

Necesito resolver el problema desde abajo:

ENTRADA

-Fechas y número de semana "Semana no"

-presupuesto

-actual

-Mesa

-un grupo de columnas (principal, segundo, tercero, cuarto)

-otra columna Estado (A, B, C), todos los Estados asignados a todos los elementos del grupo.

Cómo llegar:

-para el presupuesto acumulativo, acumulativo real, acumulativo de pronóstico, necesitamos filtrar: "cuarto" grupo y "tercero" grupo sin estado "A" y "B".

El pronóstico acumulado debe ser lineal distribuido y tener una fecha impuesta (16/04/2023, o semana 15)

En estos casos anteriores,

cómo calcular el presupuesto, real, pronóstico acumulativo, basado en "Fechas" o por "Semana no" ,

se filtró el "cuarto" grupo y el "tercero" grupo sin el estado "A" y "B".

Algunas fórmulas para filtrar, tal vez te ayuden:

FILTRO(

«Tabla»,

'Mesa'[Grupo] <> "cuarto" &&

NOT('Tabla'[Grupo] = "tercero" &&

('Tabla'[Estado] = "A" || 'Tabla'[Estado] = "B")) &&

'Tabla'[Fecha] <= MAX('Tabla'[Fecha])

)

y otro podría ser:

FILTER('Tabla','Tabla'[Grupo] <> "cuarto" &&

NOT('Tabla'[Grupo] = "tercero" && 'Tabla'[Estado] EN {"A", "B"}) &&

'Tabla'[Fecha] <= MAX('Tabla'[Fecha]))

)

Power bi

Archivo de Excel

Gracias.

1 ACCEPTED SOLUTION

Hola

Aquí está el problema:

"

VAR _lastbudgetdate =
CALCULATE ( MAX ( 'Tabla 5' [Fecha] ), REMOVEFILTERS ( 'Tabla 5' ) )
VAR _lastactualdate =
CALCULAR ( MAX ( 'Tabla 5'[Fecha] ), REMOVEFILTERS ( 'Tabla 5' ))

"

si pudiera encontrar el "lastactualdate" correcto de la "Tabla 5", este debe ser diferente de "lastbudgetdate" (ahora ambos tienen la misma fórmula...).

"'Cuadro 5'[Fecha]" de _lastactualdate debe sustituirse por el correcto

(Consejos:

Semana con Actual = SI(«Cuadro 5»[Fecha] <= [Semana pasada real], «Cuadro 5»[Fecha], ESPACIO EN BLANCO())
).
Semana pasada real = MAXX(FILTRO(«Cuadro 5», «Cuadro 5»[tiene real] = 1), «Cuadro 5»[Fecha])
tiene real = SI(«Cuadro 5» [real] > 0, 1, 0)
¡Buena suerte!

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Semana con Actual = SI('Tabla 5'[Fecha] <= [Última Semana Actual], 'Tabla 5'[Fecha], BLANK())
).
Last week real = MAXX(FILTER('Table 5', 'Table 5'[Has Actual] = 1), 'Table 5'[date])
tiene real = si('tabla 5'[real] > 0, 1, 0)

¡Todas estas columnas calculadas de la Tabla 5!

Medidas:

Acumulado real (fechas)33 =
SI (
NO ISBLANK ( ..MAX ( «Cuadro 5»[actual] ) ),
CALCULAR (
SUMA ( «Cuadro 5»[actual] ),
FILTRO ( TODOSELECCIONADO ( «Cuadro 5» ), «Cuadro 5»[Fecha] <= ..MAX ( «Cuadro 5»[Fecha] ) )
)
)
Presupuesto acumulado (fechas) 33 =
CALCULAR (
SUMA ( «cuadro 5» [presupuesto] ),
FILTRO ( TODOSELECCIONADO ( 'Cuadro 5' ), 'Cuadro 5'[Fecha] <= ..MAX ( 'Tabla 5'[Fecha] ) )
)
y
Tabla 5 =
CALCULATETABLE (
'Tabla',
FILTRO('Tabla','Tabla'[Grupo] <> "Cuarto" &&

NO('Tabla'[Grupo] = "tercero" && 'Tabla'[Estado] EN {"A", "B"}) ))
Syndicate_Admin
Administrator
Administrator

Hola

Creo que es mejor usar CALCULATETABLE, pero aún no sé cómo obtener la distribución lineal acumulativa prevista para la fecha impuesta 16/04/2023 ... no funciona para la Tabla 5 , funciona para la Tabla (en general, sin filtros)

Tabla 5 =
CALCULATETABLE (
'Tabla',
FILTRO('Tabla','Tabla'[Grupo] <> "Cuarto" &&

NO('Tabla'[Grupo] = "tercero" && 'Tabla'[Estado] EN {"A", "B"}) &&

'Tabla'[Fecha] <= ..MAX('Tabla'[Fecha]))

)
y tal vez podamos personalizar esto
Forec **bleep** end date_Imposed 33 =


DÓNDE _budgetall =
CALCULAR ( SUMA ( «Cuadro 5»[presupuesto] ), ELIMINAR filtros ( «Cuadro 5» ) )
DÓNDE _actualall =
CALCULAR ( SUMA ( «Cuadro 5»[actual] ), ELIMINAR filtros ( «Cuadro 5» ))
DÓNDE _diffamount = _budgetall - _actualall
DÓNDE _lastbudgetdate =
CALCULAR ( ..MAX ( «Cuadro 5»[Fecha] ), ELIMINAR filtros ( «Cuadro 5» ) )
DÓNDE _lastactualdate =
CALCULAR ( ..MAX ( «Cuadro 5»[Fecha] ), ELIMINAR filtros ( «Cuadro 5» ))
DÓNDE _diffdates_A =
DATEDIFF ( _lastactualdate, _lastbudgetdate, DÍA )
DÓNDE _ForecEndDate = FECHA(2023,04,16)
DÓNDE _diffdates =
DATEDIFF ( _lastactualdate, _ForecEndDate, DÍA )
DÓNDE _forecastcumulate =
INTERRUPTOR (
VERDADERO (),
..MAX ( «Cuadro 5»[Fecha]) = _lastactualdate, _actualall,
..MAX ( 'Corte de previsión'[Fecha] ) > _lastactualdate
&& ..MAX ( 'Corte de previsión'[Fecha] ) <= _ForecEndDate,
_actualall
+ (
DIVIDIR ( _diffamount, _diffdates)
* DATEDIFF ( _lastactualdate, ..MAX ( 'Corte de previsión'[Fecha] ), DÍA )
)
)
DEVOLUCIÓN
_forecastcumulate
¿Qué te parece?

Hola

Aquí está el problema:

"

VAR _lastbudgetdate =
CALCULATE ( MAX ( 'Tabla 5' [Fecha] ), REMOVEFILTERS ( 'Tabla 5' ) )
VAR _lastactualdate =
CALCULAR ( MAX ( 'Tabla 5'[Fecha] ), REMOVEFILTERS ( 'Tabla 5' ))

"

si pudiera encontrar el "lastactualdate" correcto de la "Tabla 5", este debe ser diferente de "lastbudgetdate" (ahora ambos tienen la misma fórmula...).

"'Cuadro 5'[Fecha]" de _lastactualdate debe sustituirse por el correcto

(Consejos:

Semana con Actual = SI(«Cuadro 5»[Fecha] <= [Semana pasada real], «Cuadro 5»[Fecha], ESPACIO EN BLANCO())
).
Semana pasada real = MAXX(FILTRO(«Cuadro 5», «Cuadro 5»[tiene real] = 1), «Cuadro 5»[Fecha])
tiene real = SI(«Cuadro 5» [real] > 0, 1, 0)
¡Buena suerte!
Syndicate_Admin
Administrator
Administrator

actual cumulative (dates) = 
var fc = MAX ( 'Forecast cut-off'[Date] )
return IF (
    NOT ISBLANK ( MAX ( 'Table'[actual] ) ),
    CALCULATE (
        SUM ( 'Table'[actual] ),
        'Table'[Date] <= fc ,
        'Table'[Group]<>"fourth",
        not ('Table'[Group]="third" && 'Table'[Status] IN {"A", "B"})
    ) 
)

Hola

¡Gracias por el "acumulativo real"!

En el mismo enfoque, he hecho para "presupuesto cumultive", pero necesito detenerme después del primer valor máximo 33.

Presupuesto acumulado =

var fc = MAX ( 'Corte de previsión'[Fecha] )

devolver SI (

NOT ISBLANK ( MAX ( 'Tabla' [presupuesto] ) ),

CALCULAR (

SUMA ( « «Cuadro» [presupuesto] ),

'Tabla'[Fecha] <= fc ,

«Cuadro»[Grupo]<>"Cuarto",

not ('Tabla'[Grupo]="tercero" && 'Tabla'[Estado] EN {"A", "B"})

)

)

Mihai_Iso_0-1679543181843.png

Y me gustaría tener el pronóstico acumulativo, lineal distribuido, con la fecha impuesta 16/04/2023, como se muestra en el archivo de excel.

Gracias.

Helpful resources

Announcements
May 2023 update

Power BI May 2023 Update

Find out more about the May 2023 update.

Submit your Data Story

Data Stories Gallery

Share your Data Story with the Community in the Data Stories Gallery.

Top Solution Authors
Top Kudoed Authors