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
Syndicate_Admin
Administrator
Administrator

Problema con el contexto de evaluación/transición de contexto

Queridos todos,

¡He perdido un poco en todo tipo de filtros y transiciones de Power BI y le daría mucha ayuda!

En mi conjunto de datos tengo columnas para Stock y Pedidos en artículos que se deben entregar. El objetivo es crear una medida que evalúe cuántos artículos puedo entregar, por lo que la lógica es la siguiente: Coincidencia = IF (Stock>Orders) y, a continuación, Pedidos de stock (ejemplo: Tengo 10 elementos del producto A y pedidos para 15 artículos, por lo que Match = 10 (instrucción IF (10>15) es FALSE).

Este cálculo debe realizarse a nivel de fila, por lo tanto, he creado la siguiente medida base para calcualte órdenes y stock:

Stock Qty = 
    SUMX( 
        Stock,
        Stock[Stock Qty] 
    )

Open Orders = 
    SUMX( 
        'Open Orders',
        'Open Orders'[Quantity] 
    )

Así como la fórmula para la medida de coincidencia:

Match (Stock) = 
VAR _NetStock = [Stock Qty] - [Open Orders]
VAR _Result =
    IF(
        _NetStock >= 0,
        [Open Orders],
        [Stock Qty]
    )
RETURN _Result

Funciona bien en el nivel más bajo de la granularidad, pero falla en las agregaciones. Espero 20 como resultado para herarquía nivel 3, en cambio el resultado es 27.

Picture1.png

¿Alguna idea de qué echo de menos?
¡Muchas gracias!

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@Sergii24

No está claro sobre el modelo y la relación. Prueba un enfoque como el de abajo

Match (Stock) =

SUMX(
    VALUES(Stock[Items]) 
    VAR _NetStock = [Stock Qty] - [Open Orders]
    VAR _Result =
    IF(
        _NetStock >= 0,
        [Open Orders],
        [Stock Qty]
    )
    RETURN _Result
)

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

@Sergii24

No está claro sobre el modelo y la relación. Prueba un enfoque como el de abajo

Match (Stock) =

SUMX(
    VALUES(Stock[Items]) 
    VAR _NetStock = [Stock Qty] - [Open Orders]
    VAR _Result =
    IF(
        _NetStock >= 0,
        [Open Orders],
        [Stock Qty]
    )
    RETURN _Result
)

@Fowmy, muchas gracias! Parece que sumx exterior es lo que faltaba!

En mi entendimiento una vez que escribí 2 medidas separadas para "Stock Qty" y "Órdenes abiertas", estaba listo para usarlas juntas en una nueva 3ª medida, teniendo ya un contexto de fila, lo cual está mal.
La forma correcta, en cambio, es tener otro SUMX externo incluso en mi tercera variable ("Match Stock") que está introduciendo contexto de fila para esta nueva medida por primera vez!

Muchas gracias por llenar este vacío en mi conocimiento! 🙂

Syndicate_Admin
Administrator
Administrator

¿Puede proporcionar un conjunto de datos de ejemplo o un archivo PBIX? ¡gracias!

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.