Forum Discussion
Clean and Trim
Hi, I am trying to merge 2 inventory files using the item code. One of the queries has spaces after the item code, so I have both cleaned and trimmed the column. But it doesn't seem to make any difference - I end up with many item codes that are not found, and when I look at the final query, it is obvious that it isn't working because the one inventory code has these spaces after it and that is affecting the merge.
But other than going to my source file, and removing the spaces there, which for obvious reasons I want to avoid, how do I get rid of these things?
Hello flinch
I've tried some experiments with your data, but no way that I was able to no join them. Here the code if somebody want to try.
And so you are saying that exactly this 2 rows in your final table didn't join?
let Table1 = let Source = #table ( type table [Column1 = number, Column2 = text, Column3 = text, Column4 = text, Column5 = text, Column6 = text, Column7 = text, Column8 = text], { {"1105","BP01","BALL POINT PEN (EACH)","C","STATIONERY LOCAL","","0","No"} } ), Transform = Table.TransformColumns ( Source, { { "Column2", each _, type number } } ) in Transform, Table2 = let Source = #table ( type table [Column1 = datetime, Column2 = datetime], { {"BP01","1.095.944.348"} } ) in Source, Join= Table.NestedJoin ( Table1, "Column2", Table2, "Column1", "tbl2" ) in Join
If this post helps or solves your problem, please mark it as solution (to help other users find useful content and to acknowledge the work of users that helped you)
Kudoes are nice too
Have fun
Jimmy
17 Replies
- AnonymousNot applicable
it is not that, by chance, when you point to the tables to merge, you refere to the "wrong" steps: someone precedes the one in which you did cleaning?
could you show the content of the advanced editor of your queries?
- flinchHelper I
Hi Rocco,
This is what I think is the issue as well. It seems to be merging the queries at a time when the cleaning and trimming doesn't appear to have happened yet. This is why I have ended up with clean and trim statements all over the show! I presume a query runs all the steps in the panel on the right, before it is then pulled across to merge with another query?
But I've got clean and trim statements everywhere now, and it still isn't coming right.
I will try post some more detail as per Jimmy's reply shortly.
- flinchHelper I
Oh man, suddenly it's working. Cleaning and trimming in all the wrong places it would seem.
Thank you for the asistance all. I'm not sure exactly what the issue was, so hopefully it doesn't repeat!
- MattAllingtonCommunity Champion
It could be that your spaces are some obtuse character that is not technically a space but actually looks like a space. You could try clicking on one of the cells, copy one of the spaces (you can do that down the bottom) and then try "replace values" by pasting this character from the clipboard into the "find" box.
- flinchHelper I
Hi Matt, thanks for the resposnse.
That's definitly happening in some places. I have "solved" half my problem by putting clean and trim functions after every step in the query, which while odd, seems to make a difference in some of them.
I will give your suggestion a bash and report back.
- flinchHelper I
Matt, that has helped in some cases. Now I have items that appear to be identical. I can freely find them in either sheet, and they are just the code, i.e., when I copy/paste into find, they appear as I would expect them to. Something copied in one spreadsheet is directly found in the other spreadsheet with no issues. It just does not see the cost to merge!
It seems that although the output tables have identical codes, clearly at the point of the merge there is a difference. So I am cleaning and trimming in the wrong place. But there are only so many places to perform the function, so I just don't know what to do at this point!
- flinchHelper I
Hi Jimmy,
I am just applying it using the menu options - selecting the column and then selceting trim and then clean. It is resulting in the following code...
= Table.TransformColumns(#"Filtered Rows",{{"fldInventoryCode", Text.Clean, type text}})
= Table.TransformColumns(#"Cleaned Text",{{"fldInventoryCode", Text.Trim, type text}})
Not sure if that helps?