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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Eric7
Resolver I
Resolver I

Simplyfy multiple calls to Table.ReplaceValue

Hi, I wonder if it is possible to simplyfy multiple calls to Table.ReplaceValue by creating one function?

 

Here are 3 calls to Table.ReplaceValue:

#"Encode Id" = Table.ReplaceValue(Source, each [Tenant Id], each fnc_ATS_Encode_Id([Tenant Id], pTR),Replacer.ReplaceValue,{"Tenant Id"}),
#"Encode Id2" = Table.ReplaceValue(#"Encode Id", each [Department Id], each fnc_ATS_Encode_Id([Department Id], pTR),Replacer.ReplaceValue,{"Department Id"}),
#"Encode Id3" = Table.ReplaceValue(#"Encode Id2", each [Parent Department Id], each fnc_ATS_Encode_Id([Parent Department Id], pTR),Replacer.ReplaceValue,{"Parent Department Id"}

 

It would be nice to have a function like below taking only the table and a list of the 3 column names as parameters:
#"Encode Id" = fnc_ATS_EncodeCols(Source, {{"Tenant Id"}, {"Department Id"}, {"Parent Department Id"}})

which then calls Table.Replace for each of the columns specified in the paramter list.

 

My attempt to use

col = Table.Column("Tenant Id") to get the col inside fnc_ATS_EncodeCols() to use as [col] did not succeed...

 

 

Eric

 

 

 

1 ACCEPTED SOLUTION
Smauro
Solution Sage
Solution Sage

Hi @Eric7 

 

You could just transform each column in one line, but I do find Table.ReplaceValue to work a bit faster.

Try this:

Table.ReplaceValue(
    Source, nullnull,
    (x, y, z) => fnc_ATS_Encode_Id(x, pTR),
    { "Tenant Id""Department Id""Parent Department Id" }
)

 




Feel free to connect with me:
LinkedIn

View solution in original post

2 REPLIES 2
Smauro
Solution Sage
Solution Sage

Hi @Eric7 

 

You could just transform each column in one line, but I do find Table.ReplaceValue to work a bit faster.

Try this:

Table.ReplaceValue(
    Source, nullnull,
    (x, y, z) => fnc_ATS_Encode_Id(x, pTR),
    { "Tenant Id""Department Id""Parent Department Id" }
)

 




Feel free to connect with me:
LinkedIn

Thank you so much, my friend! Works perfectly.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors