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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
FrenchConnectio
Regular Visitor

Fórmula DAX para usar el total de días anteriores más alguna adición al valor futuro de previsión.

Hola a todos

Estoy trabajando en un poroject que implica el uso del total de fila anterior más alguna cantidad para pronosticar una cantidad futura. Esencialmente, en la tabla siguiente, la columna de fecha se extiende unas semanas antes y después de la fecha de hoy, que se indexa como 0 en una columna de índice (no se muestra). Los valores anteriores a hoy se conocen y se actualizan automáticamente, por lo que la columna Valor es igual a la columna Total para cada fecha anterior a hoy. Para hoy y para el futuro, el pronóstico debe ser el total del día anterior más la adición del día anterior.

Sé cómo calcular los totales en ejecución en PowerBI, pero no puedo ajustar mi cabeza alrededor de cómo estructurar mi consulta DAX para incluir una adición al total del día anterior. Cualquier ayuda o consejo sería muy apreciado!

Indice de fechasValorAdiciónTotal
11/5/20205 5
11/6/20206 6
11/7/20207 7
11/8/20203 3
11/9/20204 4
11/10/20205 5
11/11/202011 11
11/12/20209 9
11/13/202011199
11/14/202011 28
11/15/202011728
11/16/202011 35
11/17/202011435
11/18/202011 39
11/19/202011 39
11/20/202011 39
11/21/2020112239
11/22/202011461
11/23/202011 65
1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @FrenchConnectio ,

Por favor, intente thisa después de agregar una columna de índice:

Measure = 
IF ( MAX ( 'Table'[Date Index] ) 
          < TODAY () - 4, 
     MAX ( 'Table'[Value] ), 

IF (
    MAX ( 'Table'[Date Index] )
        = TODAY () - 4,
    CALCULATE (
        MAX ( 'Table'[Value] ),
        FILTER ( ALL ( 'Table' ), 'Table'[Index] = MAX ( 'Table'[Index] ) - 1 )
    ),
    CALCULATE (
        MAX ( 'Table'[Value] ),
        FILTER (
            ALL ( 'Table' ),
            'Table'[Index]
                <= MAX ( 'Table'[Index] ) - 1
                && 'Table'[Date Index]
                    = TODAY () - 5
        )
    )
        + CALCULATE (
            SUM ( 'Table'[Addition] ),
            FILTER ( ALL ( 'Table' ), 'Table'[Index] < MAX ( 'Table'[Index] ) )
        )
)
)

11.17.4.1.PNG

Aquí está el archivo pbix.

¿He respondido a tu pregunta? Por favor, marque mi respuesta como solución. Muchas gracias.
Si no es así, cargue algunas muestras de datos insensibles y la salida esperada.

Saludos
Eyelyn Qin

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Hola @FrenchConnectio ,

Por favor, intente thisa después de agregar una columna de índice:

Measure = 
IF ( MAX ( 'Table'[Date Index] ) 
          < TODAY () - 4, 
     MAX ( 'Table'[Value] ), 

IF (
    MAX ( 'Table'[Date Index] )
        = TODAY () - 4,
    CALCULATE (
        MAX ( 'Table'[Value] ),
        FILTER ( ALL ( 'Table' ), 'Table'[Index] = MAX ( 'Table'[Index] ) - 1 )
    ),
    CALCULATE (
        MAX ( 'Table'[Value] ),
        FILTER (
            ALL ( 'Table' ),
            'Table'[Index]
                <= MAX ( 'Table'[Index] ) - 1
                && 'Table'[Date Index]
                    = TODAY () - 5
        )
    )
        + CALCULATE (
            SUM ( 'Table'[Addition] ),
            FILTER ( ALL ( 'Table' ), 'Table'[Index] < MAX ( 'Table'[Index] ) )
        )
)
)

11.17.4.1.PNG

Aquí está el archivo pbix.

¿He respondido a tu pregunta? Por favor, marque mi respuesta como solución. Muchas gracias.
Si no es así, cargue algunas muestras de datos insensibles y la salida esperada.

Saludos
Eyelyn Qin

FrenchConnectio
Regular Visitor

Hola @mahoneypat creo que el problema es que con que es la columna De la adición no se incorpora. La Fórmula que tengo es:

Total ?

Var Previous_Day_Value - Calculate(SUM(Table1'[Value]),PREVIOUSDAY(Table1'[Date Index]))

Var Previous_Day_Add - Calculate(SUM(Table1'[Addition]),PREVIOUSDAY(Table1'[Date Index]))

devolución

IF('Table1'[Date Index]<TODAY(),'Table1'[Value],Previous_Day_Value + Previous_Day_Add)

Sin embargo, la columna sólo se llena hasta hoy, mientras que necesito que avance hasta el final de mi intervalo de fechas, semanas en el futuro. No estoy seguro de dónde me voy mal...

mahoneypat
Employee
Employee

Puede hacerlo con variables.

NewMeasure á var prevtotal á <prev total expression>

var prevvalue á <prev value expression>

retorno prevtotal + prevvalue

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors