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
JuanVR11
Helper I
Helper I

Comparar las ventas qty con el stock qty

Hola Amigos!

Estoy tratando de conseguir el atraso de ventas en mi área.

Tengo una tabla "VENTAS" con sus respectivos Documentos de Ventas. Los campos importantes son:

Pedido - Pos. - Material - Ctd.Ped - Fe.Despacho

Significa que para este Pedido, Pos, Material las ventas deben realizarse antes del 03-03-2020 y con las 60 unidades.

Pedidos.jpg

En otra tabla (MB51), tengo los movimientos de stock para una gran cantidad de materiales con Ped.Clte (igual que Pedido), PosPdCl (igual que Pos.), Material (igual que Material en VENTAS), Ctd.UME es la cantidad de movimiento, y Registrado es la fecha del movimiento.

MB51.jpg

Por lo tanto, necesito crear una columna donde si la suma de Ctd.UME (MB51) es igual a Ctd.Ped (VENTAS) y la fecha Registrado (MB51) es antes o igual a Fe.Despacho (VENTAS) para el mismo Pedido, Pos, Material. si esto está bien, debe ser "COMPLETADO" si no "INCOMPLETO"

Por favor, lo siento por mi inglés y espero que pueda ayudarme

Gracias

1 ACCEPTED SOLUTION
v-gizhi-msft
Community Support
Community Support

Hola

He intentado tanto la columna como la medida para alcanzar su requisito:

Por columna:

Column = 
VAR a =
    CALCULATE (
        SUM ( SALES[Ctd. Ped.] ),
        FILTER (
            ALLSELECTED ( SALES ),
            SALES[Material] = EARLIER ( MB51[Material] )
                && SALES[Pedido] = EARLIER ( MB51[Ped.cite.] )
                && SALES[Pos.] = EARLIER ( MB51[PosPdCI] )
        )
    )
VAR b =
    IF (
        MB51[Ped.cite.] = RELATED ( SALES[Pedido] )
            && MB51[Material] = RELATED ( SALES[Material] )
            && MB51[PosPdCI] = RELATED ( SALES[Pos.] ),
        IF (
            MB51[Registrado] <= RELATED ( SALES[Fe. Despacho] ),
            CALCULATE (
                SUM ( MB51[Ctd.UME] ),
                FILTER (
                    ALLSELECTED ( MB51 ),
                    MB51[Ped.cite.] = EARLIER ( MB51[Ped.cite.] )
                        && MB51[Material] = EARLIER ( MB51[Material] )
                        && MB51[PosPdCI] = EARLIER ( MB51[PosPdCI] )
                )
            ),
            -1
        ),
        -1
    )
RETURN
    IF ( a = b, "COMPLETED", "INCOMPLETED" )

Por medida:

Measure = 
VAR a =
    CALCULATE (
        SUM ( SALES[Ctd. Ped.] ),
        FILTER (
            ALLSELECTED ( SALES ),
            SALES[Material] IN FILTERS ( MB51[Material] )
                && SALES[Pedido] IN FILTERS ( MB51[Ped.cite.] )
                && SALES[Pos.] IN FILTERS ( MB51[PosPdCI] )
        )
    )
VAR b =
    IF (
        MAX ( MB51[Ped.cite.] ) IN FILTERS ( SALES[Pedido] )
            && MAX ( MB51[Material] ) IN FILTERS ( SALES[Material] )
            && MAX ( MB51[PosPdCI] ) IN FILTERS ( SALES[Pos.] ),
        IF (
            MAX ( MB51[Registrado] ) <= MAX ( SALES[Fe. Despacho] ),
            CALCULATE (
                SUM ( MB51[Ctd.UME] ),
                FILTER (
                    ALLSELECTED ( MB51 ),
                    MB51[Ped.cite.] IN FILTERS ( MB51[Ped.cite.] )
                        && MB51[Material] IN FILTERS ( MB51[Material] )
                        && MB51[PosPdCI] IN FILTERS ( MB51[PosPdCI] )
                )
            ),
            -1
        ),
        -1
    )
RETURN
    IF ( a = b, "COMPLETED", "INCOMPLETED" )

El resultado en mi ejemplo muestra:

21.PNG

Aquí está mi archivo pbix de prueba:

pbix

Espero que esto ayude.

Saludos

Giotto

View solution in original post

1 REPLY 1
v-gizhi-msft
Community Support
Community Support

Hola

He intentado tanto la columna como la medida para alcanzar su requisito:

Por columna:

Column = 
VAR a =
    CALCULATE (
        SUM ( SALES[Ctd. Ped.] ),
        FILTER (
            ALLSELECTED ( SALES ),
            SALES[Material] = EARLIER ( MB51[Material] )
                && SALES[Pedido] = EARLIER ( MB51[Ped.cite.] )
                && SALES[Pos.] = EARLIER ( MB51[PosPdCI] )
        )
    )
VAR b =
    IF (
        MB51[Ped.cite.] = RELATED ( SALES[Pedido] )
            && MB51[Material] = RELATED ( SALES[Material] )
            && MB51[PosPdCI] = RELATED ( SALES[Pos.] ),
        IF (
            MB51[Registrado] <= RELATED ( SALES[Fe. Despacho] ),
            CALCULATE (
                SUM ( MB51[Ctd.UME] ),
                FILTER (
                    ALLSELECTED ( MB51 ),
                    MB51[Ped.cite.] = EARLIER ( MB51[Ped.cite.] )
                        && MB51[Material] = EARLIER ( MB51[Material] )
                        && MB51[PosPdCI] = EARLIER ( MB51[PosPdCI] )
                )
            ),
            -1
        ),
        -1
    )
RETURN
    IF ( a = b, "COMPLETED", "INCOMPLETED" )

Por medida:

Measure = 
VAR a =
    CALCULATE (
        SUM ( SALES[Ctd. Ped.] ),
        FILTER (
            ALLSELECTED ( SALES ),
            SALES[Material] IN FILTERS ( MB51[Material] )
                && SALES[Pedido] IN FILTERS ( MB51[Ped.cite.] )
                && SALES[Pos.] IN FILTERS ( MB51[PosPdCI] )
        )
    )
VAR b =
    IF (
        MAX ( MB51[Ped.cite.] ) IN FILTERS ( SALES[Pedido] )
            && MAX ( MB51[Material] ) IN FILTERS ( SALES[Material] )
            && MAX ( MB51[PosPdCI] ) IN FILTERS ( SALES[Pos.] ),
        IF (
            MAX ( MB51[Registrado] ) <= MAX ( SALES[Fe. Despacho] ),
            CALCULATE (
                SUM ( MB51[Ctd.UME] ),
                FILTER (
                    ALLSELECTED ( MB51 ),
                    MB51[Ped.cite.] IN FILTERS ( MB51[Ped.cite.] )
                        && MB51[Material] IN FILTERS ( MB51[Material] )
                        && MB51[PosPdCI] IN FILTERS ( MB51[PosPdCI] )
                )
            ),
            -1
        ),
        -1
    )
RETURN
    IF ( a = b, "COMPLETED", "INCOMPLETED" )

El resultado en mi ejemplo muestra:

21.PNG

Aquí está mi archivo pbix de prueba:

pbix

Espero que esto ayude.

Saludos

Giotto

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.