cancel
Showing results for 
Search instead for 
Did you mean: 

UTC Unix Datetime to yyyy-MM-dd convert

former_member183906
Active Contributor
0 Kudos

Hi,

I need to convert unix datetime to yyyy-MM-dd in SAP CPI message mapping preferably or a groovy script.

My Input xml is -

<?xml version="1.0" encoding="UTF-8"?> <root> <record> <value1>1615204493000</value1> <value2>1515204493000</value2> </record> </root>

My Output xml is -

<?xml version="1.0" encoding="UTF-8"?> <root> <record> <value1>2021-03-08</value1> <value2>2018-01-06</value2> </record> </root>

Can you please let me know how can we achieve it.

Regards

View Entire Topic
sunny_kapoor
Advisor
Advisor

Hi vijayant.jha2,

The following code is working in Grrovy Playground. Kindly adapt this as per your integration flow:

import java.text.SimpleDateFormat
def dateUnix = 1615204493000
Date dateObj =  new Date(((long)dateUnix))
def cleanDate = new SimpleDateFormat('yyyy-MM-dd').format(dateObj)
println "clean date $cleanDate"

Regards,

Sunny

former_member183906
Active Contributor
0 Kudos

Thanks. I am using it in user defined function. But getting error -

org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object '1615204493000' with class 'java.lang.String' to class 'long' on the exchange

former_member183906
Active Contributor
0 Kudos

Thanks for your reply. Your code is working fine too.

sunny_kapoor
Advisor
Advisor

Kindly upvote, if solution works for you

former_member183906
Active Contributor
0 Kudos

Hi,

I liked your last reply, but I do not get like option for your post which has coding.

Can you please let me know what shall I do to upvote apart from "like" the post. Thanks

Regards