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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
TVI7
Frequent Visitor

Mostrar el valor más reciente para un grupo mediante un filtro de fecha

Hola a todos

¡Esperando que alguien pueda ayudar!

Nuevo en DAX / M (más de un tipo SQL!)

Esto debería ser fácil... pero no puedo encontrar la sintaxis correcta!

Tengo una tabla de auditoría que siempre genera el valor más reciente para cada producto de inventario cada vez que se mueve (vendido, comprado, etc.).

No todos los artículos de inventario se mueven en una fecha determinada.

Por lo tanto, el último registro de cada producto de inventario representa el valor actual del Producto.

Estoy intentando mostrar un objeto visual de matriz que permite pasar una fecha al objeto visual y al valor más reciente (antes de la fecha dada por el filtro) para cada producto de inventario que se va a mostrar.

He probado muchas soluciones ofrecidas por los usuarios aquí, pero no puedo clavarlo!

Aquí hay algunos datos de muestra (el formato de fecha es dd/mm/aaaa).

Sitio se usará como un filtro de página para agrupar los resultados por sitio.

Así que es realmente sólo el último valor para cada producto de inventario usando una fecha pasada al objeto visual.

InventoryProductSitioFechaValor
111/02/202015
2225/01/202018
312/02/202016
4227/01/20205
115/02/202014
315/02/202017
223/02/202020
4210/02/202019
1110/02/202018
1111/02/20201
2211/02/20200
3112/02/202012
4114/02/202020
1115/02/202012
2215/02/20205

¡Gracias de antemano!

5 REPLIES 5
v-juanli-msft
Community Support
Community Support

Hola @TVI7

Por favor, compruebe si lo siguiente le ayuda.

Crear medidas

Measure =
VAR lastdate1 =
    CALCULATE (
        MAX ( 'Table'[Date] ),
        FILTER (
            ALLSELECTED ( 'Table' ),
            'Table'[InventoryProduct]
                = MAX ( 'Table'[InventoryProduct] )
        )
    )
RETURN
    CALCULATE (
        SUM ( 'Table'[Value] ),
        FILTER (
            ALLSELECTED ( 'Table' ),
            'Table'[InventoryProduct]
                = MAX ( 'Table'[InventoryProduct] )
                && 'Table'[Date] = lastdate1
        )
    )

total_sum = IF(ISINSCOPE('Table'[InventoryProduct]),[Measure],SUMX(ALL('Table'[InventoryProduct]),[Measure]))

Capture3.JPG

Saludos
Maggie
Equipo de Apoyo Comunitario _ Maggie Li
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Gracias @v-juanli-msft @amitchandak ,

Ambas soluciones no me dan exactamente lo que estoy buscando.

En realidad, necesito encontrar el registro más alto (fila) cuando se le da una fecha.

Esto se agrupará en el objeto visual por el producto Sitio e inventario.

así que si fuera a añadir un filtro de fecha al objeto visual para '10/2/2020', contendría el registro máximo para cada inventarioproducto antes de esa fecha.

He probado las funciones EARLIEST (tengo un índice en los datos), pero no puedo hacer que funcione.

amitchandak
Super User
Super User

@TVI7 , Suponiendo que el sitio esté filtrado

Measure = 
VAR __id = MAX ( 'Table'[InventoryProduct] )
VAR __date = CALCULATE ( MAX( 'Table'[Date] ), ALLSELECTED ( 'Table' ),  'Table'[InventoryProduct] = __id ) 
RETURN CALCULATE ( sum ( 'Table'[Value] ), VALUES ( 'Table'[InventoryProduct ), 'Table'[InventoryProduct] = __id, 'Table'[Date] = __date )

Utilice esta medida en

Gracias @amitchandak

Eso ha resuelto las líneas perfectamente, sin embargo, los totales de la columna (agrupados o planos) se enumeran como cero.

Han comprobado dos veces los tipos de datos y confirmado que están establecidos en Moneda para la columna Valor.

Sin embargo, el total se mantiene en 0,00.

@TVI7 ,Pruebe esto en la medida antigua

Medida 2o
sumx(summarize(Table,Table[InventoryProduct],Table[Date],"_1", [Measure]),[_1])

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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