Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Create function to convert Epoch date to DateTime format

Hi,

 

I am using a Odata service which always display date and date time data in Epoch format like this (examples)

For a Date field:

/Date(-2208988800000)/

 

For a DateTime field

/Date(1643042143000+0000)/

 

What I would like, is to have a function I can call - to add new custom coloumn that would convert this to readible date time.

Any ideas?

 

Today I manually do the transformation on each coloumn with steps- Basically I first transform the date coloumn (cleaning it to become just numbers) Step 1-3 and then add the custom coloumn.

1) Transform - Extract - Text Between Delimiters

2) Transform - Extract - 10 first characters

3) Change type to Int64

4) Add custom coloumn  #datetimezone(1970,1,1,0,0,0,0,0) + #duration(0,0,0,[ColoumnName])

 

I would be nice to just have a custom function to call with inputting the original coloumn name and just getting the new formatted coloumn with correct date format. Any suggestions on how this function could look like? 

 

Thanks!

  • Overhead of a function is not needed in this case when you can do it with a formula

    = #datetimezone(1970,1,1,0,0,0,0,0) + #duration(0,0,0,Number.From(Text.Start(Text.BetweenDelimiters([EpochDate],"(",")"),10)))

2 Replies

  • Vijay_A_Verma's avatar
    Vijay_A_Verma
    Most Valuable Professional

    Overhead of a function is not needed in this case when you can do it with a formula

    = #datetimezone(1970,1,1,0,0,0,0,0) + #duration(0,0,0,Number.From(Text.Start(Text.BetweenDelimiters([EpochDate],"(",")"),10)))
    • Anonymous's avatar
      Anonymous
      Not applicable

      So easy! Thanks