Forum Discussion
Get Date As Text
Hi all,
How can I get Date from DateTime field as Text in format "YYYYMMDD"?
I tried Date.ToText([mydate],[Format = "YYYYMMDD"])
Buget getting error:
Parameter Error: We couldn't convert the text value to dateusing the specified format. The format includes a time component. Details: Format = yyyymmdd
Thanks
-w
- Anonymous4 years ago
Try this:
Date.ToText(Date.From([mydate]),[Format = "YYYYMMDD"])
--Nate
10 Replies
- AnonymousNot applicable
Try this:
Date.ToText(Date.From([mydate]),[Format = "YYYYMMDD"])
--Nate
- UncleLewisResponsive Resident
Perfect - Thanks Nate!
- UncleLewisResponsive Resident
The same pattern does not appear to work for time - why is that?
Here is what I tried:
=Time.ToText(Time.From([mytime]),[Format = "HHMMSS"])
Error: Parameter.Error: We couldn't convert the the text value to time using the specified format. The format includes a date component.
Thanks,-w
- AnonymousNot applicable
For Time.FromText, it's , [Format = "hh:mm:ss"])
Power Query thinks "MM" is months.
--Nate
- UncleLewisResponsive Resident
Thanks Nate,
I have a datetime field
Im trying to convert the date to test in the format YYYYMMDD and the time to text in the format HHMMSS or something similar
My end game it to concatenate to an id to create a unique key since the id can have several rows as a workflow executes.
Thanks,-w
- AnonymousNot applicable
OK, in that case I would wrap the whole formula with Text.Select, like:
= Text.Select(Date.ToText(Date.From([mydate]),[Format = "YYYYMMDD"]), {0..9})
This will return just the "numbers". You may also wich to consider using Date.ToRecord and Time.ToRecord for these. These break down each date into a field for year, month and day, and hour, minute, second, respectively.
--Nate
- UncleLewisResponsive Resident
Thanks Nate,
That is giving me an error:
Expression.Error:We cannot convert the value 0 to type Text.
Details:
Value = 0
Type = [Type]
Where mytime = 2/22/2022 9:10:31 AM
Thanks,
-w- AnonymousNot applicable
My bad!
Text.Select(Date.ToText(Date.From([mydate]),[Format = "YYYYMMDD"]), {"0".."9"})
--Nate
- UncleLewisResponsive Resident
Thanks Nate,
That works for YYYYMMDD, I'm trying to get to YYYYMMDD_HHMMSSI change the format string to YYYYMMDD_HHMMSS
But that is returning a format error
Could a solution be to split the date, time into 2 different fields, convert each field to text, then concatenate each field to the id so the final PK is in the format id_YYYYMMDD_HHMMSS?Thanks,
-w