Forum Discussion

Gopal_PV's avatar
Gopal_PV
Helper III
1 year ago
Solved

How to get Customer wise Last Order Quantity in Power Query

  Hi Friends, I have customer table with Details . I want to get Each Customer wise last order Quantity in Power Query along with all other columns .   Can you please help me how to do this in P...
  • SundarRaj's avatar
    1 year ago

    Hi Gopal_PV ,
    By last, I am assuming you mean the latest order quantity as per the OrderDate. Correct me if I am wrong. I'll attach the image of output and the M code used.

    Here's the code:
    let
    Source = #table(
    {"Custid", "OrderDate", "CustName", "OrderQuantity", "Price"},
    {
    {1, #date(2025, 10, 1), "A", 5, 200},
    {1, #date(2023, 2, 1), "A", 7, 300},
    {2, #date(2023, 2, 1), "B", 8, 500},
    {2, #date(2024, 1, 1), "B", 10, 700},
    {2, #date(2023, 5, 1), "B", 22, 1000},
    {3, #date(2021, 5, 1), "C", 15, 800},
    {4, #date(2022, 5, 1), "D", 18, 1200},
    {3, #date(2022, 6, 1), "C", 19, 1800},
    {4, #date(2025, 5, 1), "D", 20, 1500},
    {5, #date(2022, 1, 1), "E", 15, 1300},
    {5, #date(2022, 5, 1), "E", 16, 2000},
    {4, #date(2025, 1, 1), "F", 12, 1000},
    {4, #date(2022, 5, 1), "F", 13, 800}
    }
    ),
    #"Grouped Rows" = Table.Group(Source, {"CustName"}, {{"Table", each _, type table [Custid=number, OrderDate=date, CustName=text, OrderQuantity=number, Price=number]}}),
    Table = Table.TransformColumns ( #"Grouped Rows" , { "Table" , each Table.FirstN ( Table.Sort ( _ , { "OrderDate" , Order.Descending } ) ,1 ) } )[[Table]],
    #"Expanded Table" = Table.ExpandTableColumn(Table, "Table", Table.ColumnNames ( Source ) , Table.ColumnNames ( Source ) )
    in
    #"Expanded Table"
    In case you don't want the Latest OrderQuantity but the opposite, just change the Order.Descending to Order.Ascending in the Table step. Thanks