Forum Discussion

AllanBerces's avatar
AllanBerces
Post Prodigy
11 months ago
Solved

Total and Rank

Hi good day can anyone help me on my PQ, what we required is the Total sum of trade and Rank it from Highest to Lowest. if the Rank 1 is two date let say 5/14 and 5/13 used the latet date.

 

RESULT

DATEDirect and InDirectComSum TradeTotal TradeRank
5/14/2025E&I ArtisanE&I81131
5/14/2025BanksmanScaff421131
5/14/2025Marker Mech631131
5/9/2025E&I ArtisanE&I7782
5/9/2025BanksmanScaff33782
5/9/2025Marker Mech38782
6/12/2025E&I ArtisanE&I3743
6/12/2025BanksmanScaff48743
6/12/2025Marker Mech23743
5/7/2025E&I ArtisanE&I7714
5/7/2025BanksmanScaff36714
5/7/2025Marker Mech28714
5/8/2025E&I ArtisanE&I4685
5/8/2025BanksmanScaff34685
5/8/2025Marker Mech30685
5/6/2025E&I ArtisanE&I6566
5/6/2025BanksmanScaff37566
5/6/2025Marker Mech13566
  • AlienSx's avatar
    AlienSx
    11 months ago

    hello, AllanBerces . Create new (blank) query and replace everything inside with this code:

    let
        // your code 
        Source = #"Complete_List Actual POB",
        your_group = Table.Group(
            Source, 
            {"DPR_DATE", "Combine Direct and InDirect", "BP's"}, 
            {{"Sum Trade", each Table.RowCount(_), Int64.Type}}
        ),
        // my code
        my_group = Table.Group(
            your_group, 
            "DPR_DATE", 
            {
                {"tbl", (x) => x}, 
                {"Total Trade", (x) => List.Sum(x[Sum Trade])}
            }
        ),
        rank = Table.AddRankColumn(
            my_group, 
            "Rank",
            {{"Total Trade", Order.Descending}, {"DPR_DATE", Order.Descending}}, 
            [RankKind = RankKind.Ordinal]
        ),
        xpand = Table.ExpandTableColumn(rank, "tbl", List.RemoveItems(Table.ColumnNames(your_group), {"DPR_DATE"}))
    in
        xpand

4 Replies

  • let
        Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
        group = Table.Group(
            Source, 
            "DATE", 
            {
                {"tbl", (x) => x}, 
                {"Total trade", (x) => List.Sum(x[Sum Trade])}
            }
        ),
        rank = Table.AddRankColumn(
            group, 
            "Rank",
            {{"Total trade", Order.Descending}, {"DATE", Order.Descending}}, 
            [RankKind = RankKind.Ordinal]
        ),
        xpand = Table.ExpandTableColumn(rank, "tbl", List.RemoveItems(Table.ColumnNames(Source), {"DATE"}))
    in
        xpand
    • AllanBerces's avatar
      AllanBerces
      Post Prodigy

      Hi AlienSx thank you very much how can i add that to my current query

       

      let
      Source = #"Complete_List Actual POB",
      #"Grouped Rows" = Table.Group(Source, {"DPR_DATE", "Combine Direct and InDirect", "BP's"}, {{"Sum Trade", each Table.RowCount(_), Int64.Type}})
      in
      #"Grouped Rows"

      • AlienSx's avatar
        AlienSx
        Super User

        hello, AllanBerces . Create new (blank) query and replace everything inside with this code:

        let
            // your code 
            Source = #"Complete_List Actual POB",
            your_group = Table.Group(
                Source, 
                {"DPR_DATE", "Combine Direct and InDirect", "BP's"}, 
                {{"Sum Trade", each Table.RowCount(_), Int64.Type}}
            ),
            // my code
            my_group = Table.Group(
                your_group, 
                "DPR_DATE", 
                {
                    {"tbl", (x) => x}, 
                    {"Total Trade", (x) => List.Sum(x[Sum Trade])}
                }
            ),
            rank = Table.AddRankColumn(
                my_group, 
                "Rank",
                {{"Total Trade", Order.Descending}, {"DPR_DATE", Order.Descending}}, 
                [RankKind = RankKind.Ordinal]
            ),
            xpand = Table.ExpandTableColumn(rank, "tbl", List.RemoveItems(Table.ColumnNames(your_group), {"DPR_DATE"}))
        in
            xpand