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

ayuda de distribución de existencias

Hola;

Necesito su tipo de apoyo sobre el siguiente problema pls .

Tengo dos tablas "TableA" y "TableB" como se muestra a continuación. TableA está relacionado con pedidos y TableB está dando cantidades de stock que tengo para materiales. Me gustaría distrubute cantidades de stock sobre la base de algunas reglas para pedir cantidades . Reglas que quiero crear así ;

  • Si incluso una de las líneas de fecha de solicitud en un pedido es posterior a este mes real. No distrubute cualquier stock (como se ve en la tabla para "Pedido2 ", hay cualquier cantidad de stock distrubated porque una de las fechas de entrega de la línea es después del mes real (no enero 2021) marcado amarillo . Así que el sistema elemanited "Order2" para el cálculo .
  • Para el cálculo de la distribución sólo tiene en cuenta que : fecha de entrega debe ser mes real y antes ( enero 2020 y / o antes de enero 2021 )
  • Comience a distribuir desde el pedido que tiene la cantidad menos total y, a continuación, continúe calculando la segunda cantidad total menos, etc., haga coincidir los materiales con la cantidad de stock basada en los mismos materiales. Como se ve a continuación, el sistema de ejemplo comenzó a distribuir desde "Order3 ", tiene totalmente 15 piezas total Cantidad , entonces para el segundo cálculo a distrubate es para "Order4" con el 30 pcs total cantidad de orden, y finalmente tercero "Order1" con el qty total de 90 pcs. Aquí quiero mencionar que como usted ve cantidad total de stock no es suficiente para el último pedido calculado ( Orden1) , algunos materiales no pueden estar disponibles en stock.

También me gustaría compartir con usted listo tablas de Excel con el siguiente enlace para su cálculo tratar de hacer más fácil.

https://drive.google.com/file/d/10Ju-bzTQo4Dqs1DTdUR_NOHke1UaHaJy/view?usp=sharing

Capture.JPG

gracias de antemano

1 ACCEPTED SOLUTION

No @erhan_79

Agredo una columna de índice en la tabla A para ayudar a distribuir pedidos. Y agregue una regla que de que si el stock restante de un material es 0, a continuación, distribuir 0 al mismo material en las órdenes siguientes. Aquí está el archivo PBIX.

Index = RANKX(TableA,CALCULATE(SUM(TableA[Order Qty]),ALLEXCEPT(TableA,TableA[Order Number])),,ASC,Dense)
Distributed Stock Qty = 
VAR _t =
    FILTER (
        SUMMARIZE (
            TableA,
            TableA[Order Number],
            "MaxOrderDate",
                CALCULATE (
                    MAX ( TableA[Request  Date] ),
                    ALLEXCEPT ( TableA, TableA[Order Number] )
                ),
            "Total Qty", SUM ( TableA[Order Qty] )
        ),
        [MaxOrderDate] <= EOMONTH ( TODAY (), 0 )
    )
VAR orders =
    SELECTCOLUMNS ( _t, "Order Number", [Order Number] )
RETURN
    IF (
        NOT ( TableA[Order Number] IN orders ),
        0,
        VAR _m = TableA[Material]
        VAR _i = TableA[Index]
        VAR modifiedS =
            CALCULATE ( MAX ( TableB[Stock Qty] ), TableB[Material] = _m )
                - CALCULATE (
                    SUM ( TableA[Order Qty] ),
                    ALLEXCEPT ( TableA, TableA[Material] ),
                    TableA[Order Number] IN orders,
                    TableA[Index] < _i
                )
        VAR modifiedStock =
            IF ( modifiedS <= 0, 0, modifiedS )
        RETURN
            IF ( modifiedStock > TableA[Order Qty], TableA[Order Qty], modifiedStock )
    )

012701.jpg

Por favor, hágamelo saber si esto ayuda.
Equipo de apoyo a la comunidad _ Jing Zhang
Si este post ayuda,por favor considere Aceptarlo como la solución para ayudar a otros miembros a encontrarlo.

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

hola querida @v-jingzhang ;

Quiero una columna calculada que en la tabla B (cantidades de stock) las cantidades se distrubuted a la Tabla A . tipo de Stock que coincide con llike , pero sólo que tiene algunas reglas, estaré tan agradecido si usted ayudaría, gracias de antemano

Syndicate_Admin
Administrator
Administrator

Hola @erhan_79 , desea una columna calculada en la tabla o una columna que se muestra en un objeto visual de tabla?

hola querida @v-jingzhang ;

Quiero una columna calculada que se mencione en la Tabla A al final de la columna derecha quiero , la tabla B (cantidades de existencias) cantidades se distrubuted a la Tabla A . tipo de Stock que coincida con llike , pero sólo tiene algunas reglas, voy a estar muy agradecido si usted ayudaría

gracias de antemano

No @erhan_79

Agredo una columna de índice en la tabla A para ayudar a distribuir pedidos. Y agregue una regla que de que si el stock restante de un material es 0, a continuación, distribuir 0 al mismo material en las órdenes siguientes. Aquí está el archivo PBIX.

Index = RANKX(TableA,CALCULATE(SUM(TableA[Order Qty]),ALLEXCEPT(TableA,TableA[Order Number])),,ASC,Dense)
Distributed Stock Qty = 
VAR _t =
    FILTER (
        SUMMARIZE (
            TableA,
            TableA[Order Number],
            "MaxOrderDate",
                CALCULATE (
                    MAX ( TableA[Request  Date] ),
                    ALLEXCEPT ( TableA, TableA[Order Number] )
                ),
            "Total Qty", SUM ( TableA[Order Qty] )
        ),
        [MaxOrderDate] <= EOMONTH ( TODAY (), 0 )
    )
VAR orders =
    SELECTCOLUMNS ( _t, "Order Number", [Order Number] )
RETURN
    IF (
        NOT ( TableA[Order Number] IN orders ),
        0,
        VAR _m = TableA[Material]
        VAR _i = TableA[Index]
        VAR modifiedS =
            CALCULATE ( MAX ( TableB[Stock Qty] ), TableB[Material] = _m )
                - CALCULATE (
                    SUM ( TableA[Order Qty] ),
                    ALLEXCEPT ( TableA, TableA[Material] ),
                    TableA[Order Number] IN orders,
                    TableA[Index] < _i
                )
        VAR modifiedStock =
            IF ( modifiedS <= 0, 0, modifiedS )
        RETURN
            IF ( modifiedStock > TableA[Order Qty], TableA[Order Qty], modifiedStock )
    )

012701.jpg

Por favor, hágamelo saber si esto ayuda.
Equipo de apoyo a la comunidad _ Jing Zhang
Si este post ayuda,por favor considere Aceptarlo como la solución para ayudar a otros miembros a encontrarlo.

Estimado @v-jingzhang ;

está funcionando perfecto ! Muchas gracias por su amable apoyo

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.