Forum Discussion
Need help with Data Cleansing
- 4 years ago
For overwriting the values, DAX can't be used. For this purpose, you will need to use PQ.
See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test (later on when you use the query on your dataset, you will have to change the source appropriately. If you have columns other than these, then delete Changed type step and do a Changed type for complete table from UI again)
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45Wcq0oSS3KU9JRMgJic2NDfXMDQ0M9IAZyDZVidXCrAPLA8okpKSlAtjFI1ghZ1ggsbWIMhECeCYZuI0LGA+2PBQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Personeel.In-/Extern" = _t, #"Uren Registratie 2.CategorieID" = _t, #"WBS Code" = _t, #"Klantnum." = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Personeel.In-/Extern", type text}, {"Uren Registratie 2.CategorieID", Int64.Type}, {"WBS Code", type text}, {"Klantnum.", Int64.Type}}), Custom1 = Table.ReplaceValue(#"Changed Type", each [Uren Registratie 2.CategorieID], each if [#"Personeel.In-/Extern"] = "Extern" and [WBS Code] = "731/7011.01" and [#"Klantnum."] =null then 6 else [Uren Registratie 2.CategorieID], Replacer.ReplaceValue,{"Uren Registratie 2.CategorieID"}) in Custom1
I am not sure whether your Klantnum. column is null or blanks. You can try following
= Table.ReplaceValue(#"Namen van kolommen gewijzigd2", each [Uren Registratie 2.CategorieID], each if [#"Personeel.In-/Extern"] = "Extern" and [WBS Code] = "731/7011.01" and ([#"Klantnum."] =null or [#"Klantnum."] ="") then 6 else [Uren Registratie 2.CategorieID], Replacer.ReplaceValue,{"Uren Registratie 2.CategorieID"})The column has nulls, so the previous code would be correct. However, upon checking if the values have changed, I don't see any changes made.
If I would have had a typo regarding the column names, an error message would appear.
But that is also not the case. I can't explain why the values are not changing.