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

Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now

Reply
DanYuncken
Helper I
Helper I

Why does this function create 'Computed Tables'?

I have a function in a dataflow that when invoked creates a computed table. However, if the same steps a followed without invoking a function, the table is not a computed table. I'm hoping someone can explain why this is the case and hopefully provide a workaround.

 

The function generates a list of numbers from two parameters StartNumber to EndNumber inclusive.

 

ListOfNumbersFunction:

let

  NumberParameters = (StartNumber, EndNumber) =>

let

  Source =  #table(type table [#"Start Number"=Int64.Type, #"End Number"=Int64.Type],{{StartNumber,EndNumber}}),

  #"Added List Length" = Table.AddColumn(Source, "List Length", each [End Number]-[Start Number]+1, Int64.Type),

  #"Added Number List" = Table.AddColumn(#"Added List Length", "Number List", each List.Numbers([Start Number], [List Length], 1), type list),

  #"Expanded Number List" = Table.ExpandListColumn(#"Added Number List", "Number List"),

  #"Changed column type" = Table.TransformColumnTypes(#"Expanded Number List", {{"Number List", Int64.Type}}),

  #"Removed other columns" = Table.SelectColumns(#"Changed column type", {"Number List"})

in

  #"Removed other columns"

 

in

  NumberParameters

 

Invoked function:

let

  Source = ListOfNumbersFunction(5, 60)

in

  Source

 

The invoked function returns a ‘calculated table’ with a list of numbers starting at 5 and ending with 60

 

However, this code returns a normal table:

let

  Source =  #table(type table [#"Start Number"=Int64.Type, #"End Number"=Int64.Type],{{5,60}}),

  #"Added List Length" = Table.AddColumn(Source, "List Length", each [End Number]-[Start Number]+1, Int64.Type),

  #"Added Number List" = Table.AddColumn(#"Added List Length", "Number List", each List.Numbers([Start Number], [List Length], 1), type list),

  #"Expanded Number List" = Table.ExpandListColumn(#"Added Number List", "Number List"),

  #"Changed column type" = Table.TransformColumnTypes(#"Expanded Number List", {{"Number List", Int64.Type}}),

  #"Removed other columns" = Table.SelectColumns(#"Changed column type", {"Number List"})

in

  #"Removed other columns"

 

I am keen to understand why calling the function makes the output table a computed table.

 

Thanks in advance

Dan

1 ACCEPTED SOLUTION
DanYuncken
Helper I
Helper I

I was able to resolve this by saving the dataflow and then re-editing it again. No idea of the original cause.

View solution in original post

1 REPLY 1
DanYuncken
Helper I
Helper I

I was able to resolve this by saving the dataflow and then re-editing it again. No idea of the original cause.

Helpful resources

Announcements
Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

March Power BI Update Carousel

Power BI Community Update - March 2026

Check out the March 2026 Power BI update to learn about new features.

Top Kudoed Authors