Message has been edited to correct the error that @Craige_Hales, pointed out below. I originally had the signs backwards on the adjustments to GMT. -Jeff
@Mark_Bailey is close, but I think the value after the plus (+) isn't the time, it's the offset from GMT.
So, if you want to convert everything back to GMT you'll need to take the offset into account:
Informat( Word( 1, :ISO 8601 Datetime ), "yyyy-mm-dd" )
+Informat( Word( 1, Word( 2, :ISO 8601 Datetime ), "-+" ), "hh:mm:ss" )
+Match( Contains( :ISO 8601 Datetime, "+" ) > 0,
0, Informat( Word( 2, Word( 2, :ISO 8601 Datetime ), "-" ), "h:m" ),
-Informat( Word( 2, :ISO 8601 Datetime, "+" ), "h:m" )
)
It may be easier to read in the Formula Editor where you'll want to use this anyway:
I'm attaching a data table with an example with the formula column.
-Jeff