Forum Discussion
Error converting data type to date but not if converting data type to datetime first
- 2 years ago
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMrTQNzDVNzIwMlQwNLUCImNjpdhYAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [data = _t]), to_date = Table.TransformColumns(Source, {"data", each Date.From(DateTime.From(_, "de-DE"))}) in to_date
If I understand your suggestion, your point is taken that making it work it 2 steps is fine, but I suppose 1 step is more efficient.
Two simple steps for one column are straightforward for me like this:
#"Changed Type" = Table.TransformColumnTypes(prevstep,{{"Date & Time", type datetime}}),
#"Changed Type1" = Table.TransformColumnTypes(#"Changed Type",{{"Date & Time", type date}}),
Also,
Table.TransformColumnTypes(prevstep,List.Transform(List.Select(Table.ColumnNames#"prevstep"), eachText.EndsWith(_,"Date"))),Seems to work, but combing them I still can't get it working. This:
= Table.TransformColumns(#"prevstep",
{List.Transform(List.Select(Table.ColumnNames,(#"prevstep"),
each Text.EndsWith(_,"Date"))),
each Date.From(DateTime.From(_, "en-GB")), type date})
now gives me
Expression.Error: 3 arguments were passed to a function which expects 2.
Details:
Pattern=
Arguments=[List]
ones again, don't use Table.TransformColumnTypes. I told many times about this. I give up, sorry 😞
- k1s22 years ago
Helper I
I don't use TransformColumnTypes, I use TransformColumns as instructed, but I can't work out the syntax when combining with the the List.Transform(List.Select(Table.ColumnNames,(#"prevstep")...
- AlienSx2 years ago
Super User
k1s2 I am sorry, I was looking at message #11 with transform column types. Never mind. Try this
date_columns = List.Buffer( List.Select( Table.ColumnNames(prevstep), each Text.Contains(_, "Date") ) ), tfms = List.Transform( date_columns, each {_, each Date.From(DateTime.From(_, "en-GB")), type date} ), result = Table.TransformColumns(prevstep, tfms)