Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
msksenthil
Helper III
Helper III

M Code Recursive function dynamic column reference

I would like to try dynamic expanding columns in M code.

 

The code is:

fxFactorial = (RowCount as number, Tnumber as number, tbl as table) =>
let
displayname = "disPath" & Text.From(Tnumber),
childrenname = "children" & Text.From(Tnumber),
prevchildname = "children" & Text.From(Tnumber-1) ,
prevstep = tbl ,
Source2 = Table.ExpandListColumn( prevstep, prevchildname),
#"Added disPath2" = Table.AddColumn(Source2, displayname, each Record.Field(prevchildname,"displayPath") ),
#"Added children2" = Table.AddColumn(#"Added disPath2", childrenname, each try Record.Field([children1],"children") otherwise null ),
ColRowCount = List.NonNullCount( #"Added children2"[children2]),
titlenumber = Tnumber + 1,
subresult = if titlenumber > 2 then @fxFactorial(ColRowCount, titlenumber, #"Added children2") else #"Added children2"
in
#"Added disPath2"

 

But, I'm getting an error stating like We cannot convert the value "children1" to Record

 

 

Much appreciated it if someone showed some light on this query.

1 REPLY 1
mahoneypat
Microsoft Employee
Microsoft Employee

You are using the prevchildname variable (a text value) in a function that expects a record (Record.Field).

 

Pat





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.