ISODate In Servoy 4

I’m replicating some javascript into a servoy app. I have a need to convert a date to ISO.

Here’s the original code:

function getNowTimeStamp() {
    var time = new Date();
    var gmtTime = new Date(time.getTime() + (time.getTimezoneOffset() * 60000));
    return gmtTime.toISODate() ;
}

Output is: 2008-11-28T21:15:23.000Z

So I’ve tried to get this to go in servoy… and have tried this… but the format does not come out the same.

function getNowTimeStamp()
{
    var time = (new Date())//new Date();
    var gmtTime = new Date(time.getTime() + (time.getTimezoneOffset() * 60000));
	var vDate = plugins.DateUtils.DateTime(gmtTime);
	var vISO = vDate.getISOdateTime();
    return vISO;
   }

Output is: 20081128T220201–600

So I’m obviously clueless… anyone have any ideas?

-Chico

Hi Chico,

You can use the UTC datetime functions to get GMT/UTC/Zulu time (it’s all the same).
So your code can look like this:

function getNowTimeStamp()
{
	var d 		= new Date();
	var dGMT	= new Date(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate(), 
    					   d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(), d.getUTCMilliseconds());
	return utils.dateFormat(dGMT,'yyyy-MM-dd') + 'T' + utils.dateFormat(dGMT, 'HH:mm:ss.SSS') + 'Z';
}

Hope this helps.

Thanks Robert. I’ll try that.