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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
jpmakako
Frequent Visitor

Power Query Nested Table Transformation

Hi, Im trying to replace null values in a nested table with the values form the outside table. Both in and out have the the columns [cta], [scta] and [sscta]. The idea is to replace any null value in the Nested Table with the corresponding value from the outside table. ModifyTabble is a function that replaces a into any null value in the table that is nested. My problem is that the values being stored in the values are lists instead of the row value so Im getting the whole list of [cta] instead of the corresponding row value.

 

McReplace = Table.TransformColumns(PreviousStep, each let a = [cta], b = [scta], c = [sscta] in {"NestedTable", each ModifyTable( _ , a,b,c )})

1 ACCEPTED SOLUTION
wdx223_Daniel
Super User
Super User

McReplace = Table.FromRecords(Table.TransformRows(PreviousStep, each let a = [cta], b = [scta], c = [sscta] in _&[NestedTable=ModifyTable( [NestedTable] , a,b,c )]))

or

McReplace = Table.RelaceValue(PreviousStep, each ModifyTable( [NestedTable] , [cta],[scta],[sscta] ),"",(x,y,z)=>y,{"NestedTable"})

View solution in original post

3 REPLIES 3
watkinnc
Super User
Super User

Yooooooo! That's some world class M syntax wizardry right there.

 

--Nate


I’m usually answering from my phone, which means the results are visualized only in my mind. You’ll need to use my answer to know that it works—but it will work!!
wdx223_Daniel
Super User
Super User

McReplace = Table.FromRecords(Table.TransformRows(PreviousStep, each let a = [cta], b = [scta], c = [sscta] in _&[NestedTable=ModifyTable( [NestedTable] , a,b,c )]))

or

McReplace = Table.RelaceValue(PreviousStep, each ModifyTable( [NestedTable] , [cta],[scta],[sscta] ),"",(x,y,z)=>y,{"NestedTable"})

Thanks, they both work. Care to explain to me what the "&" and "NestedTable=" inside the column is doing in the first statement and why is the each ModifyTable(...) in the old argument of the ReplaceValue function and "" in the new argument? Sounds counterintuitive to me.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

Top Solution Authors
Top Kudoed Authors