Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
3 years ago

Lastnonblank / Rellenar con DAX Measure

Necesito tu ayuda: estoy tratando de usar una medida (no una columna calculada) para llenar el último valor de los meses anteriores en los meses con valores vacíos hasta que vuelva a aparecer un valor. ¿Pueden ayudarme con la medida DAX? I^he intentado con la siguiente medida pero el resultado no fue el correcto:

Lastnonblankvalue = 
CALCULATE(LASTNONBLANKVALUE('Date'[Date],SUM('Sales'[Value])))

Debería verse así:

¡Agradecemos su ayuda!

Conjunto de datos de información:

5 Replies

  • Pruebe lo siguiente:

    LastNotBlank =
    VAR _date =
        MAX ( 'Date'[Date] )
    RETURN
        CALCULATE (
            LASTNONBLANK (
                Sales[Value];
                Sales[Value]
            );
            FILTER ( ALLEXCEPT ( 'Date', 'Date'[Date] ); 'Date'[Date] <= _date )
        )

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      @JonasBI Gracias por la respuesta.

      Me da la siguiente advertencia:

      Para la columna Fecha, no es posible obtener un único valor en la tabla Fecha. Esto puede suceder cuando una fórmula de medición hace referencia a una columna con muchos valores sin especificar una agregación como MIN, MAX, COUNT o SUM para obtener un solo resultado.

  • @polestar_11

    Intente lo siguiente:

    Modelo de datos:

    Fórmula:

    Repeat Last Value = 
    
    var __SelectedDate = EOMONTH(MAX(Dim_Date[PK_Date]),0)
    
    var __LastDateWithValue =
    CALCULATE(
        MAX(Fact_Sales[Date]),
        FILTER(
            ALL(Dim_Date),
            [PK_Date]<=__SelectedDate
        )
    )
    
    RETURN
    
    CALCULATE(
        TOTALMTD([Aggregation | Sum],Dim_Date[PK_Date]),
        Dim_Date[PK_Date] = __LastDateWithValue
    )

    Resultado

    Saludos
    Miguel
    -----------------------------------------------------
    Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
    ¡Aprecio su pulgar hacia arriba!
    me en las respuestas o perderé tu hilo.

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      @Mikelytics Gracias por la respuesta. He probado su solución pero no es como se esperaba:

      No estoy seguro si cambié el "TOTALMTD([Aggregation | SUMA]" derecha.

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Administrator

        @polestar_11

        Creo que descubrí la razón. Agregue una columna de año en su tabla ddate y filtre esta columna en 2021. De lo contrario, Power BI no sabe cuál es la fecha máxima en la fórmula. Por favor, vea a continuación.

        Cuando filtro en 2021 y 2022:

        cuando puse el filtro en 2021.

        Entonces, incluso si solo tiene datos de 2021, agregue una columna de año en la tabla de datos y coloque el filtro en 2021. También se puede hacer en el filtro de página en el panel visual.

        Saludos
        Miguel
        -----------------------------------------------------
        Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
        ¡Aprecio su pulgar hacia arriba!
        me en las respuestas o perderé tu hilo.