Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Rango de suma según el año seleccionado en un control deslizante - DATEADD

Hola

Tengo el siguiente cálculo para la suma de las unidades vendidas, de acuerdo con el año "a partir de la fecha" seleccionado en un control deslizante:

Ventas: CALCULATE(sum(Table[Units]),Table[fecha de producción]>-fecha(2020,1,1),Table[fecha de producción]<-fecha(2020,12,31),DATEADD(Table[as of date]],0,YEAR))
Si el año "a partir de la fecha" seleccionado es 2020, entonces no hay ninguna fecha add en la fórmula.
¿Cómo puedo hacer que la fórmula funcione si:
"A partir de la fecha" año es 2021, luego DATEADD(Tabla[a partir de la fecha],-1,Año)
Gracias
1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

No @dannyboc,

Prueba esto:

Sales =
VAR SelectedYear =
    YEAR ( MAX ( 'Table'[as of date] ) )
VAR interval_ =
    SWITCH ( SelectedYear, 2020, 0, 2021, -1 )
RETURN
    CALCULATE (
        SUM ( 'Table'[Units] ),
        'Table'[production date] >= DATE ( 2020, 1, 1 ),
        'Table'[production date] <= DATE ( 2020, 12, 31 ),
        DATEADD ( 'Table'[as of date], interval_, YEAR )
    )

Saludos

Icey

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

No @dannyboc,

Prueba esto:

Sales =
VAR SelectedYear =
    YEAR ( MAX ( 'Table'[as of date] ) )
VAR interval_ =
    SWITCH ( SelectedYear, 2020, 0, 2021, -1 )
RETURN
    CALCULATE (
        SUM ( 'Table'[Units] ),
        'Table'[production date] >= DATE ( 2020, 1, 1 ),
        'Table'[production date] <= DATE ( 2020, 12, 31 ),
        DATEADD ( 'Table'[as of date], interval_, YEAR )
    )

Saludos

Icey

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Muchas gracias @Icey

¡La solución proporcionada funciona!

Syndicate_Admin
Administrator
Administrator

@dannyboc Creo que está buscando YTD basado en la fecha seleccionada, primero, cualquier cálculo de inteligencia de tiempo para asegurarse de agregar una dimensión de fecha en su modelo, aquí está uno de mis post sobre cómo agregar uno y luego simplemente use la columna de año de esta dimensión de fecha en la segmentación de datos y agregue la siguiente medida:

Total YTD = CALCULATE ( SUM ( Table[Units] ), DATESYTD ( DateDimension[Date] ) ) )

Consulta mi última entrada de blog Año-2020, Pandemia, Power BI y más allá para obtener un resumen de mis versiones favoritas de las características de Power BI en 2020

Me gustaría elogios si mi solución ayudara. 👉 Si puedes dedicar tiempo a publicar la pregunta, también puedes hacer esfuerzos para dar Felicitaciones a quien haya ayudado a resolver tu problema. ¡Es una muestra de agradecimiento!

Visítenos en https://perytus.com, su ventanilla única para proyectos/formación/consulta relacionadas con Power BI.

Hola, gracias por comprobarlo.

La tabla de salida de las unidades vendidas tendría el siguiente aspecto:

Unidades del Mes I 2021 I Unidades 2019

Enero

Febrero

Marzo

..

Diciembre

Los meses de la primera columna son la fecha de producción, pero tengo un control deslizante desplegable de fecha para el campo de segunda fecha "a partir de la fecha".

Para fechas de 2021, la siguiente fórmula funciona para Unidades 2020:

Ventas: CALCULATE(sum(Table[Units]),Table[fecha de producción]>-fecha(2020,1,1),Table[fecha de producción]<-fecha(2020,12,31),DATEADD(Table[as of date],-1,YEAR))

Sin embargo, no funciona si selecciono un "a partir de la fecha" en 2020.

¿Cómo puedo modificar la fórmula, según el año seleccionado:

A partir de fechas en 2021:

Ventas: CALCULATE(sum(Table[Units]),Table[fecha de producción]>-fecha(2020,1,1),Table[fecha de producción]<-fecha(2020,12,31),DATEADD(Table[as of date],-1,YEAR))

A partir de fechas en 2020:

Ventas: CALCULATE(sum(Table[Units]),Table[fecha de producción]>-fecha(2020,1,1),Table[fecha de producción]<-fecha(2020,12,31),DATEADD(Table[as of date]],0,YEAR))

La variación está en el número dateadd de intervalos (-1 para 2021 y 0 para 2020)

Gracias

Helpful resources

Announcements
PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.